http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49537
Summary: cross-check DW_AT_name vs. demangling of linkage names Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: debug AssignedTo: unassig...@gcc.gnu.org ReportedBy: jan.kratoch...@redhat.com CC: do...@gcc.gnu.org PR debug/49408 shows DW_AT_name "K<&S::m>" vs. demangled DW_AT_MIPS_linkage_name prefix "K<&(S::m(int))>". This was due to a bug in libiberty/cp-demangle.c. http://gcc.gnu.org/ml/gcc/2011-06/msg00308.html On Wed, Jun 22, 2011 at 10:42 AM, Jason Merrill <jason at 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. Therefore I believe there could be compile time sanity cross-check with ICE in such cases, maybe more such bugs exist there already.