[rfc] physname cross-check [Re: [RFA] Typedef'd method parameters [0/4]]

Keith Seitz keiths@redhat.com
Tue May 17 19:04:00 GMT 2011


On 05/17/2011 11:33 AM, Jan Kratochvil wrote:
> On Tue, 17 May 2011 20:15:18 +0200, Keith Seitz wrote:
>> Is reverting dwarf2_physname better or worse than DW_AT_MIPS_linkage_name?
>
> In which single case can be dwarf2_physname better than
> DW_AT_MIPS_linkage_name?  That's the question.  dwarf2_physname is AFAIK to
> give the linkage name and DW_AT_MIPS_linkage_name always matches that.

Ideally the two should be equivalent. I don't remember all the specifics 
any more, but there were problems with constructors (already mentioned) 
and templates. These might have simply been compiler bugs. Template bugs 
might now be fixed because of the new template attributes.

>> Using DW_AT_MIPS_linkage_name will not pass cpexprs.exp without some
>> hacking; the demangled name will need to be re-parsed (to remove
>> typedefs
>
> DW_AT_MIPS_linkage_name already has all the typedefs removed - it is the
> linkage name.

It should, but IIRC, I kept seeing, e.g., "std::string" show up in the 
demangled form of DW_AT_MIPS_linkage_name. Perhaps this was due to an 
older compiler I was using? I cannot seem to reproduce this today. [Or 
maybe I am just remembering something else?]

Sorry, my memory of this has bitrotted quite a bit.
Keith



More information about the Gdb-patches mailing list