[Bug preprocessor/52998] caret and -ftrack-macro-expansion don't mix well

manu at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sun Apr 15 20:38:00 GMT 2012


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52998

--- Comment #2 from Manuel López-Ibáñez <manu at gcc dot gnu.org> 2012-04-15 20:37:44 UTC ---
(In reply to comment #1)
> I think with and without macro expansion, the error should be given at 13:3,
> and unwind from outermost to innermost. Innermost to outermost makes sense if
> we show preprocessed lines:
> 
> macro-caret.c:5:14: error: invalid operands to binary << (have ‘double’ and
> ‘int’)
>    1.0 << 1
>        ^

But with preprocessed source lines, the best location is 5:14, because this way
the user can compare what is in that line with the preprocessed line shown by
GCC. So, in some sense, cc1 is right, and cc1plus is wrong.



More information about the Gcc-bugs mailing list