[Bug debug/49130] discrepancies between DW_AT_name and demangler

jan.kratochvil at redhat dot com gcc-bugzilla@gcc.gnu.org
Fri Jul 8 12:34:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49130

--- Comment #11 from Jan Kratochvil <jan.kratochvil at redhat dot com> 2011-07-08 12:33:19 UTC ---
I do not see any functionality problem from it, neither now and neither in the
future.

(In reply to comment #7)
> But DW_AT_name really represents the name of the operator as written in the
> source code[2], with its template parameters replaced with their
> corresponding arguments.

Both variants of this code:

#include <string>
template <typename T>
void f () {}
//int main () { f<std::string> (); }
int main () { f<std::basic_string<char> > (); }

produce the same DWARF output:
    <2afa>   DW_AT_name        : f<std::basic_string<char> >

So one cannot say that one or the other matches the source code more.

One can only argue whether DWARF DW_AT_name should be compressed or not.



More information about the Gcc-bugs mailing list