This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: The future of dwarf2_physname


>>>>> "Daniel" == Daniel Jacobowitz <drow@false.org> writes:

Daniel> In general, the sort of cross-check Jan has implemented could never
Daniel> reliably pass without extensions to DWARF.  Once you get up into
Daniel> templates, especially, there are template arguments that are hard
Daniel> or impossible to represent in template parameter DIEs.

DWARF 4 added some stuff to help with this, but I think g++ hasn't yet
caught up.  What problems do you know about?

I know of this:

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

... namely, that g++ doesn't emit a value for a pointer-to-member
template parameter.  But this is a g++ bug, not a DWARF omission.

Also there is:

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

I don't think I totally understand the issues with this one, but the
DWARF just has an address, so presumably in some scenarios we can wind
up with an odd canonical name (if we can't find the name corresponding
to that address).


It seems to me that if the DWARF spec is incomplete, then that is an
argument in favor of either (1) fixing DWARF and g++ or (2) keeping
DW_AT_linkage_name in g++ -- but not just dropping linkage-name, as that
would cause user-visible regressions.

Tom


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]