On Wed, Jun 22, 2011 at 10:42 AM, Jason Merrill <ja...@redhat.com> wrote: > Well, the basic issue is that the "linkage name" is produced by > libiberty/cp-demangle.c and the DW_AT_name is produced by gcc/cp/error.c, > and they don't always agree on the same pretty-printed representation of a > C++ expression. > > For this case, > >> The function linkage name has prefix: K<&(S::m(int))> > > This isn't actually valid C++ syntax, so the demangler should be adjusted.
I agree this isn't valid C++ syntax. However, it is a syntax used in certain popular frameworks, e.g. QT signal/slots, and it unambiguously tells in a readable manner what function is intended from overload resolution perspective. -- Gaby