This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Possibly bogus `invalid operands to binary &'
- From: Andrew Morton <akpm at osdl dot org>
- To: gcc at gcc dot gnu dot org
- Date: Mon, 9 Feb 2004 23:01:04 -0800
- Subject: Possibly bogus `invalid operands to binary &'
(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