This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Testsuite failure ?



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

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]