------- Comment #28 from dodji at gcc dot gnu dot org 2010-06-09 14:32 ------- Subject: Re: __extension__ keyword doesn't suppress warning on LL or ULL constants
"manu at gcc dot gnu dot org" <gcc-bugzi...@gcc.gnu.org> writes: >> >> $ ./cc1 -quiet test.c >> While expanding macro OPERATE at test.c:2:8 >> While expanding macro SHIFTL at test.c:5:14 >> While expanding macro MULT2 at test.c:8:3 >> test.c: In function 'g': >> test.c:13:3: error: invalid operands to binary << (have 'double' and 'int') > Also, what are the column numbers pointing to? They don't make sense > to me. About this line: >> While expanding macro OPERATE at test.c:2:8 which is about: #define OPERATE(OPRD1, OPRT, OPRD2) \ OPRD1 OPRT OPRD2; Column 8 is the starting column of the OPRT token. About this line: >> While expanding macro SHIFTL at test.c:5:14 which is about: #define SHIFTL(A,B) \ OPERATE (A,<<,B) Column 14 is the starting column of the '<<' token. About this line: >> While expanding macro MULT2 at test.c:8:3 which is about: #define MULT2(A) \ SHIFTL (A,1) Column 3 is the starting column of the 'SHIFT' token. > In any case, this is a huge step forward! Thanks for working on this. It would > be an important marketing point if you manage to complete it for GCC > 4.6. No problem ;) Not sure it'll get into 4.6, but I'll try. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=7263