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: [RFA] dwarf2_physname


On Mon, Sep 14, 2009 at 04:56:32PM -0700, Keith Seitz wrote:
> >Ouch.  Though, why does this make life difficult for the debugger?
> >The problem of THIS not being artificial I've seen before - I think
> >RealView has the same problem; I may have a patch to work around it -
> >but I'm not sure why we care about the name of the parameter in the
> >declaration.
> 
> The problem is that now we are appending the arguments to the
> "linkage name" that we are computing. So when the dwarf reader sees
> this, it outputs "foo::foo (foo *)" instead of "foo::foo ()". This
> messes up symbol searching in some very interesting ways.

Oh, I see.  Is there any other differentiation in the ICC output
between the two relevant cases?  Namely bar and baz in:

class foo {
  void bar();
  static void baz(foo*);
};

>From discussions on the dwarf-discuss list, I've gathered that pretty
much every debugger is full of compiler-specific quirking.  In
practice, to provide a good user experience, we have to interpret the
DWARF in our best understanding of each compiler's intentions rather
than just through the standard.

Of course, that relies on someone wanting to do the work for ICC support.

-- 
Daniel Jacobowitz
CodeSourcery


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