Solaris 8/SPARC libgcj bootstrap broken by recent fix-header change

Rainer Orth ro@TechFak.Uni-Bielefeld.DE
Fri Mar 28 19:19:00 GMT 2003


Neil,

I just tried bootstrapping mainline gcc on sparc-sun-solaris2.8, but
bootstrap failed building libgcj:

In file included from /vol/gnu/src/gcc/gcc-dist/libjava/prims.cc:18:
/vol/gcc/obj/gcc-3.4-20030328/8-gcc/gcc/include/signal.h:246: error: declaration
   of C function `int kill(long int, int)' conflicts with
/vol/gcc/obj/gcc-3.4-20030328/8-gcc/gcc/include/signal.h:57: error: previous 
   declaration `int kill(int, int)' here

It turns out that fix-headers has added the following to the fixed
signal.h:

--- /usr/include/signal.h	Wed Jan  5 23:09:42 2000
+++ include/signal.h	Fri Mar 28 14:01:18 2003
@@ -242,4 +242,7 @@
 }
 #endif
 
+#if defined(__USE_FIXED_PROTOTYPES__) || defined(__cplusplus) || defined (__STRICT_ANSI__)
+extern int kill (long, int);
+#endif /* defined(__USE_FIXED_PROTOTYPES__) || ... */
 #endif	/* _SIGNAL_H */

This declaration is at line 246, conflicting with the original

extern int kill(pid_t, int);

at line 57.  This didn't happen in my last successful mainline bootstrap on
20030224, where signal.h isn't modified by fix-headers.

Since you recently made several patches affecting fix-header, I suspect
that one of them is the culprit.

I'll start hunting down the exact one right now.

	Rainer

-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University



More information about the Gcc-bugs mailing list