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

Keith Seitz
2011-05-17T19:04:03Z

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