[PING 2] [rfc]: Framework for looking up multiply defined global symbols in shared libraries

Markus Deuling deuling@de.ibm.com
Thu Jun 28 18:20:00 GMT 2007


Ulrich Weigand wrote:
> Markus Deuling wrote:
> 
>> diff -urN src/gdb/NEWS dev/gdb/NEWS
>> --- src/gdb/NEWS	2007-06-21 19:00:43.000000000 +0200
>> +++ dev/gdb/NEWS	2007-06-26 21:06:05.000000000 +0200
>> @@ -3,6 +3,9 @@
>>  
>>  *** Changes since GDB 6.6
>>  
>> +* New framework for looking up multiply defined global symbols from shared
>> +  libraries.
>> +
> 
> 
> It's up to Eli to approve NEWS entries, but it has been my understanding that
> NEWS should be about user-visible features, not internal infrastructure changes.
> I'd reword to this something like:
> "When looking up multiply-defined global symbols, GDB will now prefer
> the symbol definition in the current shared library if it was built
> using the -Bsymbolic linker option." 
> 
> 
> I've noticed a couple of minor issues in the test case:
> 
>> diff -urN src/gdb/testsuite/gdb.base/libmd.c dev/gdb/testsuite/gdb.base/libmd.c
> 
> What is libmd supposed to stand for?
> 
>> --- src/gdb/testsuite/gdb.base/libmd.c	1970-01-01 01:00:00.000000000 +0100
>> +++ dev/gdb/testsuite/gdb.base/libmd.c	2007-06-26 21:03:32.000000000 +0200
> 
>> +extern void foo();
> 
> This doesn't appear to be necessary; foo isn't even referred to ...
> 
> +void foo2 ();
> 
> Likewise.
> 
>> diff -urN src/gdb/testsuite/gdb.base/libmd.h dev/gdb/testsuite/gdb.base/libmd.h
>> --- src/gdb/testsuite/gdb.base/libmd.h	1970-01-01 01:00:00.000000000 +0100
>> +++ dev/gdb/testsuite/gdb.base/libmd.h	2007-06-26 21:03:32.000000000 +0200
> 
> In fact, this whole header file looks unnecessary to me.
> 
>> diff -urN src/gdb/testsuite/gdb.base/solib_symbol.c dev/gdb/testsuite/gdb.base/solib_symbol.c
>> --- src/gdb/testsuite/gdb.base/solib_symbol.c	1970-01-01 01:00:00.000000000 +0100
>> +++ dev/gdb/testsuite/gdb.base/solib_symbol.c	2007-06-26 21:03:32.000000000 +0200
> 
>> +extern void foo();
>> +#include <stdio.h>
>> +#include "libmd.h"
>> +
>> +extern void foo();
> 
> Here we have the declaration three times ;-)  Once is enough ...
> 
> 
> Otherwise, this looks OK to me now.
> 
> 


Ok, I renamed the testsuite files to solib-symbol.exp and solib-symbol-{main,lib}.c The header has been removed.

I also changed the NEWS entry. Eli, is this ok ?



-- 
Markus Deuling
GNU Toolchain for Linux on Cell BE
deuling@de.ibm.com

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diff-gdb-multiple-symbols-mainline
URL: <http://sourceware.org/pipermail/gdb-patches/attachments/20070628/8b1ba05c/attachment.ksh>


More information about the Gdb-patches mailing list