From: Tom Tromey <tromey@redhat.com>
To: Keith Seitz <keiths@redhat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: The future of dwarf2_physname
Date: Fri, 20 May 2011 19:10:00 -0000 [thread overview]
Message-ID: <m3oc2x5guj.fsf@fleche.redhat.com> (raw)
In-Reply-To: <4DD44983.7060406@redhat.com> (Keith Seitz's message of "Wed, 18 May 2011 15:34:43 -0700")
>>>>> "Keith" == Keith Seitz <keiths@redhat.com> writes:
Keith> So the first question to be asked here is, Should we adopt Jan's
Keith> patch, or some variation of it, to use DW_AT_linkage_name when
Keith> available?
I think so. In fact, I think it should be preferred.
My reasoning is that when DW_AT_linkage_name exists, it is definitive.
Our exposure here is to compiler bugs (which would be very bad ones --
but not our problem) and to demangler bugs -- something I am not
extremely concerned about. And, we have seen bugs where the DWARF is
very incorrect but the linkage name is not (I think these have been
fixed, but the point is that they confound physname, and even reasonably
recent compilers, like the F13 gcc, still have this.)
However, it is also now clear to me that we do need physname.
First, there are cases where GCC does not emit DW_AT_linkage_name. I
finally filed the one case we know about:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49047
Second, maybe DW_AT_linkage_name will be dropped in order to shrink
debuginfo.
Third, there are other compilers.
Keith> The only hesitation I have is the compiler issues. Just using
Keith> DW_AT_linkage_name instead of computing it has lead to many test
Keith> regressions with differing compiler versions. [Again, I have only
Keith> tested gcc.]
Based on Jan's response, and discussions we've had recently, it seems
that the regressions in question are really just differences between
physname and the demangler, correct? And the problem specifically is
that template functions have the return type in the demangled form,
requiring users, for the time being, to add quotes?
Keith> The bigger issue is what to do for 7.3, which has been in limbo for
Keith> quite some time awaiting resolution of c++/12506 (for which I have
Keith> posted patches).
Keith> I guess there are basically two options:
Keith> 1) Keep physname & apply the 12266/12506 patchset (when approved)
Keith> 2) Adopt Jan's patch and fix the fallout now
Or (3) Apply both and make linkage_name the preferred choice.
At present this is what I think we should do.
Keith> My big fear with #2 is "fixing" linespecs (yet again). Any changes to
Keith> this area take an unimaginably large amount of time and effort.
I think for 7.3 we would accept that there are some regressions, and
then fix them for a future release.
I am partial to Jan's view that we should be using the full name of the
object, and then have symbol aliases or code in linespec to expand nice
shortcuts to the full name.
Tom
next prev parent reply other threads:[~2011-05-20 19:10 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-18 22:35 Keith Seitz
2011-05-19 19:23 ` Jan Kratochvil
2011-05-20 19:53 ` Keith Seitz
2011-05-20 20:38 ` Jan Kratochvil
2011-05-20 20:39 ` Tom Tromey
2011-05-21 20:37 ` Daniel Jacobowitz
2011-05-19 21:00 ` Daniel Jacobowitz
2011-05-20 19:26 ` Tom Tromey
2011-05-21 20:34 ` Daniel Jacobowitz
2011-05-20 19:10 ` Tom Tromey [this message]
2011-05-23 13:17 ` Jan Kratochvil
2011-05-23 19:52 ` Tom Tromey
2011-05-23 19:57 ` Keith Seitz
2011-05-24 21:12 ` [rfc 1/2] libiberty/ options code reshuffle [Re: The future of dwarf2_physname] Jan Kratochvil
2011-06-02 15:36 ` obsolete: " Jan Kratochvil
2011-05-24 21:21 ` [rfc 2/2] Follow DW_AT_linkage_name for methods " Jan Kratochvil
2011-05-25 19:40 ` Keith Seitz
2011-05-25 20:42 ` Tom Tromey
2011-05-25 20:40 ` Tom Tromey
2011-06-01 18:35 ` Keith Seitz
2011-06-02 16:26 ` Jan Kratochvil
2011-06-02 18:20 ` Tom Tromey
2011-06-02 18:28 ` Jan Kratochvil
2011-06-02 19:03 ` obsolete: " Jan Kratochvil
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=m3oc2x5guj.fsf@fleche.redhat.com \
--to=tromey@redhat.com \
--cc=gdb-patches@sourceware.org \
--cc=keiths@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox