[parisc-linux] compiler bug?

Alan Modra alan@linuxcare.com.au
Sun, 5 Nov 2000 18:41:54 +1100 (EST)


On Sat, 4 Nov 2000, Bdale Garbee wrote:

> Hacking the makefiles to remove "-O -O2" allows the compile to complete 
> cleanly.  

glibc includes are "smart", and do things like `#if defined __OPTIMIZE__'

> I assume this means something in the compiler is broken?

No, I think it's a problem with glibc, or perhaps just your include files.

> bdale@j5k:/space/debian/util-linux-2.10o/fdisk $ cc -c -O -O2 -fomit-frame-pointer -I../lib -Wall -Wmissing-prototypes -Wstrict-prototypes -DNCH=1  -DSBINDIR=\"/sbin\" -DUSRSBINDIR=\"/usr/sbin\" -DLOGDIR=\"/var/log\" -DVARPATH=\"/var\" -DLOCALEDIR=\"/usr/share/locale\" fdiskbsdlabel.c -o fdiskbsdlabel.o
> /usr/include/linux/string.h:12: parse error before "__extension__"

Your .i file had this in it:

extern char * ___strtok;
extern char * __extension__ ({ char __a0, __a1, __a2; [rest snipped]

which comes from linux/string.h

extern char * ___strtok;
extern char * strcpy(char *,const char *);

The problem being that strcpy is being replaced with an inline
expansion.  Dunno why this is happenning.

Alan Modra
-- 
Linuxcare.  Support for the Revolution.