Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!hplabs!hpfcdc!mev From: mev@hpfcdc.HP.COM (Mike Vermeulen) Newsgroups: comp.sys.hp Subject: Re: GCC on HPUX - is it possible? Message-ID: <5570183@hpfcdc.HP.COM> Date: 15 May 89 15:56:12 GMT References: <1263@mmm.UUCP> Organization: HP Ft. Collins, Co. Lines: 37 > Trying to compile GCC 1.34 on HPUX (Version 6.something) fails in > toplev.c seemingly because the macro definitions are too long for the > HPUX compiler. Does anyone have suggestions? patches? sympathy? I picked up a copy of gcc 1.34 and tried to make it compile on my hp-ux 6.5 system. It died with a syntax error in toplev.c. I narrowed my problem down to the following: 1. toplev.c includes /usr/include/sys/param.h which has the following: #define FLOAT FLOAT_M320 #define FLOAT_M320 5 2. rtl.h includes the following #define DEF_RTL_EXPR(ENUM, NAME, FORMAT) ENUM , 3. rtl.def has a long list of uses of DEF_RTL_EXPR including the following on line 492: DEF_RTL_EXPR(FLOAT, "float", "e") The combination of these three macros causes the preprocessor to create an invalid enum declaration: enum rtx_code { UNKNOWN, NIL, /*etc*/ 5, /*etc*/ } Which the compile complains about. One simple workaround is to get rid of the FLOAT name collision by adding #undef FLOAT after the inclusion of in toplev.c. After doing this my copy of gcc 1.34 compiles without complaint.