Comment Comment by NotPaidToPost How do you do that?The preprocessor does macro expansion, the compiler compiles the result.The compiler does not see FLAG_BIT1 ^ FLAG_BIT3, it only sees the result, e.g. 2^32.Therefore to catch only explicit 2^32 the warning should come from the preprocessor... Nice mess created right there. parent NotPaidToPost 7 years ago
The preprocessor does macro expansion, the compiler compiles the result.
The compiler does not see FLAG_BIT1 ^ FLAG_BIT3, it only sees the result, e.g. 2^32.
Therefore to catch only explicit 2^32 the warning should come from the preprocessor... Nice mess created right there.