https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88413

--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
The only case I see with "sr" in mangle.c is:
      else
        {
          write_string ("sr");
          write_type (scope);
          write_member_name (member);
        }
but the grammar has:
::= sr <unresolved-type> <base-unresolved-name>     # T::x / decltype(p)::x
::= srN <unresolved-type> <unresolved-qualifier-level>+ E
<base-unresolved-name>
                                                    # T::N::x
/decltype(p)::N::x
::= [gs] sr <unresolved-qualifier-level>+ E <base-unresolved-name>  
                                                    # A::x, N::y, A<T>::z; "gs"
means leading "::"

so it doesn't have E for some cases and has them for others.  I wonder about
that srN, is that really literal srN string?

Reply via email to