Possibly bogus `invalid operands to binary &'
Andrew Morton
akpm@osdl.org
Tue Feb 10 06:58:00 GMT 2004
(Forgive me, I have a bugzilla allergy)
With yesterday's CVS:
gcc (GCC) 3.5.0 20040208 (experimental)
I am getting:
drivers/isdn/hardware/eicon/message.c: In function `nl_ind':
drivers/isdn/hardware/eicon/message.c:7143: error: invalid operands to binary &
when compiling this lovely statement:
plci->RData[0].P = plci->internal_ind_buffer + (-((int)(plci->internal_ind_buffer)) & 3);
The cpp output is at
http://www.zip.com.au/~akpm/linux/patches/stuff/1
and the command line is
/usr/local/gcc-cvs/bin/gcc -Wp,-MD,drivers/isdn/hardware/eicon/.message.o.d -nostdinc -iwithprefix include -D__KERNEL__ -Iinclude -D__KERNEL__ -Iinclude -Wall -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -pipe -msoft-float -mpreferred-stack-boundary=2 -funit-at-a-time -march=i486 -Iinclude/asm-i386/mach-default -O2 -fomit-frame-pointer -Wdeclaration-after-statement -DKBUILD_BASENAME=message -DKBUILD_MODNAME=message -c -o drivers/isdn/hardware/eicon/.tmp_message.o drivers/isdn/hardware/eicon/message.c
A brief attempt to distil this into a three-liner was not successful.
The file compiles OK with gcc-3.3
More information about the Gcc
mailing list