This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
why no gcc3_compiled symbol
- From: Jack Howarth <howarth at bromo dot msbb dot uc dot edu>
- To: gcc at gcc dot gnu dot org
- Date: Wed, 31 Jul 2002 08:05:12 -0400 (EDT)
- Subject: why no gcc3_compiled symbol
Does anyone know why gcc >= 3.0 doesn't have a gcc3_compiled
symbol like gcc 2.9x had a gcc2_compiled symbol? I ask because in
tracking down a problem with a gcc 3.1.1 built XFree86 loading its
libGLcore.a xserver module we found gcc 3.1.1 will create completely
empty object files. This compares to gcc 2.95.4 or 2.96 which would
always leave a gcc2_compiled placekeeper symbol in an empty object
file. This is arose because when you strip a gcc 3.1.1 built
static lib that has such an empty object file linked in you get
a object file with no symbols at all. This breaks the current
XFree86 loader. Thanks in advance for any explanation.
Jack
ps This can be seen by...
#touch x.c
#gcc-2.95 -c x.c
#nm x.o
00000000 t gcc2_compiled.
#strip --strip-debug x.o
#nm x.o
00000000 t gcc2_compiled.
compared to
#touch x.c
#gcc-3.1 -c x.c
#nm x.o
#
#strip --strip-debug x.o
#nm x.o
nm: x.o: no symbols
Do we really want to create completely empty object files in gcc 3.1?