Compile error on current egcs_1_00 branch

Andreas Jaeger
Mon Apr 20 07:00:00 GMT 1998

With a current glibc 2.1 on Linux I got the following error during
make bootstrap:

In file included from /usr/include/bits/string2.h:857,
                 from /usr/include/string.h:324,
                 from ../../egcs_1_00_branch/gcc/libgcc2.c:1719:
/usr/include/stdlib.h:502: conflicting types for `atexit'
../../egcs_1_00_branch/gcc/gbl-ctors.h:43: previous declaration of `atexit'

Configure line was:
../egcs_1_00_branch/configure --prefix=/opt/egcs-1.0 --enable-shared --enable-threads

I think we should define atexit only if needed.  The main source do
already the right thing.  I'm appending the ChangeLog entry for the
main sources (hope that's the right one) and a patch.

Please add this for egcs1.0.3.


Thu Feb 12 07:19:31 1998  Richard Kenner  <>

	* gbl-ctors.h (atexit): Don't define unless needed.

--- gbl-ctors.h.~1~     Mon Aug 11 17:57:07 1997
+++ gbl-ctors.h Mon Apr 20 15:43:17 1998
@@ -39,8 +39,6 @@
 #if defined (WINNT) || defined (NEED_ATEXIT)
 extern int atexit (void (*) (void));
-extern void atexit (void (*) (void));
 #define ON_EXIT(FUNC,ARG) atexit ((FUNC))

 Andreas Jaeger
  for pgp-key finger

More information about the Gcc-bugs mailing list