https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98465
--- Comment #23 from Martin Sebor <msebor at gcc dot gnu.org> --- Having a built-in sit on top of a (for now internal?) attribute with the goal of eventually exposing the attribute makes sense to me, although neither seems suitable to me for stage 4. The patch I posted can be used to suppress the warning until then. The patch is needed in any case to solve pr98512 and pr98871. Without the patch the #pragma in libstdc++ doesn't work. As an aside, an attribute that constrains aliasing won't just help std::string. It will improve the codegen for any container (see pr93971).