This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Testsuite failure ?
- To: gcc-bugs at gcc dot gnu dot org
- Subject: Testsuite failure ?
- From: David Ronis <ronis at ronispc dot chem dot mcgill dot ca>
- Date: Wed, 23 Aug 2000 14:29:38 -0400
- Reply-to: ronis at onsager dot chem dot mcgill dot ca
Hi,
I've been having massive testsuite failures whenever I compile on an
i[56]86-linux-gnu box with high levels of optimization turned on (I've
reported them for every snapshot on the testsuite list for anyone who
wants to see the details). In any event, g++ related
programs/libraries seem to fare worse, and I figured I'd have a look
at one of the examples in gdb.
It turns out, that all the failures in libstdc++ and libio tests
have the same error:
error in loading shared libraries:
... /i686-pc-linux/libstdc++/libstdc++-libc6.1-2.so.3: undefined
symbol: __dso_handle
The same error seems to be responsible for most of my g++ failures
(although I didn't check all 806 of them).
There aren't very many places where __dso_handle is mentioned in the
source; grep shows only gcc/cp/decl.c and gcc/crtstuff.c. The latter
is interesting:
It contains the blocks:
#ifdef HAVE_GAS_HIDDEN
asm (".hidden\t__dso_handle");
#endif
#ifdef CRTSTUFFS_O
void *__dso_handle = &__dso_handle;
#else
void *__dso_handle = 0;
#endif
I didn't know that a recursive define was legal.
Any suggestions?
David