[RFA] minsyms.c: Fix switching to GNU v3 ABI

Daniel Jacobowitz drow@false.org
Fri Mar 19 00:09:00 GMT 2004


On Wed, Mar 10, 2004 at 05:43:35PM +0100, Corinna Vinschen wrote:
> On Mar 10 17:34, Corinna Vinschen wrote:
> > On Mar 10 11:20, Daniel Jacobowitz wrote:
> > > Move the check earlier?  It should not be necessary to change
> > > SYMBOL_LINKAGE_NAME.  I think you could do this in
> > > prim_record_minimal_symbol_and_info at the call site of
> > > SYMBOL_SET_NAMES.
> > 
> > I'm more and more under the impression that the problem is raised due
> > to a bug in the symbol generation in gcc.  It doesn't seem worth to
> > change GDB proactively...
> 
> Wait a second.  If the symbols actually begin with _Z as they do e.g. on
> Linux, then the test we're talking about would fail on Linx, too, if...
> yes, if leading_char would be "_" on Linux as well.  But on Linux the
> leading_char is \0.
> 
> So, it looks like the actual problem is, that SYMBOL_SET_NAMES is
> called in prim_record_minimal_symbol_and_info, without having stripped
> the leading_char from the symbol names.

Right.  I think that this has been a problem for a long time, but
I made it worse somehow with the introduction of SYMBOL_SET_NAMES.

> That doesn't explain why there's one symbol which has no leading _
> but that would make sense for all other mangled symbols given in the
> object file, right?

Precisely.

-- 
Daniel Jacobowitz
MontaVista Software                         Debian GNU/Linux Developer



More information about the Gdb-patches mailing list