This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: trunk won't build
> I've been ignoring the trunk for a long time, but a native build of
> i686-pc-sco3.2v5.0.6 croaks.
>
> /bin/cc -c -DIN_GCC -g -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -I. -I/play
> /gcc-trunk/gcc -I/play/gcc-trunk/gcc/. -I/play/gcc-trunk/gcc/config -I/play/gcc-
> trunk/gcc/../include /play/gcc-trunk/gcc/gengenrtl.c -o gengenrtl.o
> "/play/gcc-trunk/gcc/rtl.def", line 529: error: Syntax error before or at: 0
Got it. The reason this is failing is becuase gengenrtl.c is including
hconfig.h. hconfig.h includes auto-host.h. auto-host.h is defining
HAVE_SYS_PARAM_H 1. This makes system.h include <sys/param.h>.
sys/param.h includes a '#define PREFETCH 0'. (gcc -dM is my new friend.)
If I just change the line to:
DEF_RTL_EXPR(GCC_PREFETCH, "prefetch", "eee", 'x')
this error goes away. We could probably just #undef it, too.
What's the right thing to do when we have an identifier that conflicts
with a system header like this?
RJL