Index: libstdc++/ChangeLog from Alexandre Oliva * config/dec-osf.ml: Force all of libgcc into libstdc++, to avoid multiply-defined linker errors. Index: libstdc++/config/dec-osf.ml =================================================================== RCS file: /egcs/carton/cvsfiles/egcs/libstdc++/config/dec-osf.ml,v retrieving revision 1.2 diff -u -r1.2 dec-osf.ml --- libstdc++/config/dec-osf.ml 1998/08/30 21:18:41 1.2 +++ libstdc++/config/dec-osf.ml 1999/07/15 07:40:11 @@ -3,4 +3,12 @@ LIBS = $(ARLIB) $(ARLINK) $(SHLIB) $(SHLINK) DEPLIBS = ../$(SHLIB) -SHDEPS = -lm +SHDEPS = -lm -Wl,-all,-lgcc,-none +# Some testcases in the testsuite required symbols from libgcc, say, +# __pure_virtual, that would not have been copied into libstdc++ +# without this -Wl switch above. But __pure_virtual depended on other +# symbols of libgcc that had been copied to libstdc++. However, +# DU4.0d's ld would report such symbols as duplicates, and refuse to +# link. Forcing some symbols from libgcc into libstdc++ ensures that +# we don't get such late undefined symbols, avoiding the bogus +# multiple-definition errors.