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

--- Comment #3 from Paul Robinson <paul_robinson at playstation dot sony.com> 
---
Admittedly the function parameter analogy is a bit of a stretch.

Making consumers parse names on the off chance they contain semantically
significant information seems like a bit much, though.  Especially if they
contain information in a ridiculous variety of spellings.  Never mind things
like "Y" versus "(X)0u" you also have "const int" versus "int const" and all
the other very-large-number variations.

For another thing, names are off in that other section over there, instead
of right here in the .debug_info section with all the other stuff, and all
the thrashing around across sections makes loading slower.  I had a long
harangue from Greg Clayton about this a year ago at the LLVM Dev Meeting.
(Slow loading in general that is; not specifically about template children.)

My guess is, this is a case where gcc omitted some stuff, and gdb had to
cope as an engineering compromise, because that's what was in actual object
files that users had.  This has nothing to do with whether the DWARF as
produced is either correct or a good idea.  I think it's neither.
I'd prefer that both clang and gcc produce DWARF that is inarguably correct
and easier for consumers to deal with.

For whatever that's worth.

Reply via email to