Two possible function stabs patches

Geoffrey Keating geoffk@apple.com
Fri Aug 1 22:36:00 GMT 2003


On Wednesday, July 30, 2003, at 07:17  AM, Andrew Cagney wrote:

>> Oops!  Forgot to attach the actual patches.  Fixed below.
>> OK, so I have not one, but two patches!
>
> Um, these appear to come with a little history (Solaris perhaphs?).  
> Can you provide a bit of a background?  You'll likely also want to add 
> something to the GNU stabs document found in the GDB distro.

So far as I know, this is a bug that has been in GCC since 1992, and 
before that I don't know what the history is.  I looked at the stabs 
document in GDB; this patch makes GCC more compliant with it.

>> The first one is less interesting.  It uses the language's name for 
>> the function, unless it's a C++ function, in which case it uses the 
>> (mangled) assembler name.  It'll give a stab like
>>         .stabs  "__ZN3bar3fooEv:F(0,1)",36,0,2,__ZN3bar3fooEv
>> or
>>         .stabs  "foo:F(0,1)",36,0,2,foo.11
>> The second one uses the 'printable name' for the function.  That is, 
>> for C it's just the name, and for C++ it's the demangled version of 
>> its name.  I am not at all sure it'll work, because it gives stabs 
>> like:
>>         .stabs  "int bar::foo():F(0,1)",36,0,2,__ZN3bar3fooEv
>> which I suspect can't be parsed.
>> Could someone help me test these?  It needs a machine that can use 
>> stabs and on which the GDB testsuite doesn't give too many false 
>> positives.
>
> I'd strongly encourage you to install GNU/Linux and *BSD on a couple 
> local old/slow Mac boxes.  It will make testing a lot easier.

All my old/slow boxen get used for GCC regression testing...

-- 
Geoff Keating <geoffk@apple.com>



More information about the Gdb mailing list