[RFC PATCH] Don't use ELF weak for entities with vague linkage when COMDAT groups are available

Julian Brown julian@codesourcery.com
Thu Apr 14 17:09:00 GMT 2005


Eric Botcazou wrote:
>>This part of the patch has been reverted again for now, pending further
>>investigation on ppc64 Linux, where it was causing libstdc++ build failure.
> 
> 
> FWIW I see these failures on x86_64-suse-linux (SuSE 9.2 Professional):
> 
> Executing on host: /home/eric/build/gcc/native/./gcc/g++ -shared-libgcc 
> -B/home/eric/build/gcc/native/./gcc/ -nostdinc++ 
> -L/home/eric/build/gcc/native/x86_64-suse-linux/libstdc++-v3/src 
> -L/home/eric/build/gcc/native/x86_64-suse-linux/libstdc++-v3/src/.libs 
> -B/home/eric/install/gcc/x86_64-suse-linux/bin/ 
> -B/home/eric/install/gcc/x86_64-suse-linux/lib/ 
> -isystem /home/eric/install/gcc/x86_64-suse-linux/include 
> -isystem /home/eric/install/gcc/x86_64-suse-linux/sys-include -g 
> -O2-D_GLIBCXX_ASSERT -ffunction-sections -fdata-sections -fmessage-length=0 
> -DLOCALEDIR="/home/eric/build/gcc/native/x86_64-suse-linux/libstdc++-v3/po/share/locale" 
> -nostdinc++ 
> -I/home/eric/build/gcc/native/x86_64-suse-linux/libstdc++-v3/include/x86_64-suse-linux 
> -I/home/eric/build/gcc/native/x86_64-suse-linux/libstdc++-v3/include 
> -I/home/eric/cvs/gcc/libstdc++-v3/libsupc++ 
> -I/home/eric/cvs/gcc/libstdc++-v3/include/backward 
> -I/home/eric/cvs/gcc/libstdc++-v3/testsuite testsuite_abi.o 
> testsuite_allocator.o testsuite_character.o 
> testsuite_hooks.o /home/eric/cvs/gcc/libstdc++-v3/testsuite/22_locale/money_get/get/char/4.cc    
> -include bits/stdc++.h  -lm   -o ./4.exe    (timeout = 300)
> /usr/bin/ld: Warning: size of symbol 
> `__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, 
> true>::_S_destroy_thread_key(void*)' changed from 21 in testsuite_abi.o to 
> 217 in testsuite_character.o
> /usr/bin/ld: Warning: size of symbol 
> `__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, true>::_S_initialize()' 
> changed from 26 in testsuite_abi.o to 222 in testsuite_character.o
> /usr/bin/ld: Warning: size of symbol 
> `__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, 
> true>::_S_initialize_once()' changed from 72 in testsuite_abi.o to 277in 
> testsuite_character.o
> output is:
> /usr/bin/ld: Warning: size of symbol 
> `__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, 
> true>::_S_destroy_thread_key(void*)' changed from 21 in testsuite_abi.o to 
> 217 in testsuite_character.o
> /usr/bin/ld: Warning: size of symbol 
> `__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, true>::_S_initialize()' 
> changed from 26 in testsuite_abi.o to 222 in testsuite_character.o
> /usr/bin/ld: Warning: size of symbol 
> `__gnu_cxx::__common_pool_policy<__gnu_cxx::__pool, 
> true>::_S_initialize_once()' changed from 72 in testsuite_abi.o to 277in 
> testsuite_character.o
> 
> FAIL: 22_locale/money_get/get/char/4.cc (test for excess errors)

Oh! These sound similar to the failures that some people saw last time. 
What versions of as and ld are being used?

Cheers,

Julian



More information about the Java-patches mailing list