Adam Naumowicz wrote:
On Sun, 17 Oct 2004, Frank Heckenbach wrote:
I have uploaded a new beta version of GPC to http://www.g-n-u.de/gpc/!
My attempt to compile this snapshot dies with the following message:
/install/gpc/build/gcc/xgcc -B/install/gpc/build/gcc/ -B/usr/local/i686-pc-linux-gnu/bin/ -B/usr/local/i686-pc-linux-gnu/lib/ -isystem /usr/local/i686-pc-linux-gnu/include -c -I. -W -Wall -Wmissing-prototypes -Wmissing-declarations -g -O2 -Wpointer-arith -Wwrite-strings /install/gpc/gcc-3.3.1/gcc/p/rts/rts.c /install/gpc/gcc-3.3.1/gcc/p/rts/rts.c:237: error: conflicting types for `sys_siglist' /usr/include/signal.h:298: error: previous declaration of `sys_siglist' make[2]: *** [rts.o] Error 1 make[2]: Leaving directory `/install/gpc/build/gcc/p/rts' make[1]: *** [pascal.rts] Error 2 make[1]: Leaving directory `/install/gpc/build/gcc' make: *** [all-gcc] Error 2
Any clues?
My /usr/include/signal.h contains these declarations:
/* Names of the signals. This variable exists only for compatibility. Use `strsignal' instead (see <string.h>). */ extern __const char *__const _sys_siglist[_NSIG]; extern __const char *__const sys_siglist[_NSIG];
Sorry for the late reply. If the problem still exists, try this patch. If it doesn't help, I need more context from the headers (in particular the conditionals that the above declarations are within).
--- p/rts/rts.c.orig Tue Feb 15 04:19:45 2005 +++ p/rts/rts.c Tue Feb 15 04:19:55 2005 @@ -235,6 +235,7 @@ #define environ __environ #endif
+#if !defined (HAVE_STRSIGNAL) && !defined (strsignal) #if defined (HAVE_SYS_SIGLIST) || defined (sys_siglist) #if !defined (sys_siglist) && !defined (SYS_SIGLIST_DECLARED) extern char **sys_siglist; @@ -245,6 +246,7 @@ #endif #define sys_siglist _sys_siglist #endif +#endif #ifndef SIGMAX #ifdef HAVE__SYS_NSIG #ifndef _SYS_NSIG_DECLARED
Frank