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.