gcc 2.96 suspected bug

Duncan Simpson dps@io.stargate.co.uk
Fri Sep 29 12:34:00 GMT 2000


CVS as of 28th September and lots of earlier versions have a bug/lethal 
interaction with GNU ld 2.9.5 (and many earlier versions). In particular 
shared libraries are broken and gcc 2.95.x is not affected, Anything linked to 
libstdc++ built by affected gcc is affected. Linking to existing shared 
libraries work, so I suspect something in crt{begin,end}S.o, link options or 
ld bugs.

Duncan (-:


Demo:

Script started on Fri Sep 29 20:23:09 2000
/usr/src/gnu/egcs/egcs/i686-pc-linux-gnu/libstdc++$ nm testsuite/tlist  | 
fgrep dso
0804cc84 D __dso_handle
/usr/src/gnu/egcs/egcs/i686-pc-linux-gnu/libstdc++$ nm 
libstdc++-3-libc6.1-2-2.10.0.so | fgrep dso
00038480 d __dso_handle
/usr/src/gnu/egcs/egcs/i686-pc-linux-gnu/libstdc++$ nm ../../gcc/crtbeginS.o   

         U _GLOBAL_OFFSET_TABLE_
00000000 ? __CTOR_LIST__
00000000 ? __DTOR_LIST__
00000000 ? __EH_FRAME_BEGIN__
         w __cxa_finalize
         w __deregister_frame_info
00000004 t __do_global_dtors_aux
00000000 D __dso_handle
         w __register_frame_info
00000008 d completed.1
000000a0 t fini_dummy
0000000c d force_to_data
000000b0 t frame_dummy
00000000 t gcc2_compiled.
000000f0 t init_dummy
00000000 b object.2
00000004 d p.0
/usr/src/gnu/egcs/egcs/i686-pc-linux-gnu/libstdc++$ testsuite/tlist 
testsuite/tlist: error in loading shared libraries: 
/usr/src/gnu/egcs/egcs/i686-pc-linux-gnu/libstdc++/libstdc++-libc6.1-2.so.3: 
undefined symbol: __dso_handle
/usr/src/gnu/egcs/egcs/i686-pc-linux-gnu/libstdc++$ exit
exit

Script done on Fri Sep 29 20:24:25 2000

-- 
Duncan (-:
"software industry, the: unique industry where selling substandard goods is
legal and you can charge extra for fixing the problems."




More information about the Gcc-bugs mailing list