It's not obvious to me whether this belongs in -Wextra. After all, this is a perfectly reasonable and useful GNU C feature, or at least some cases of it are (like "#define FOO (BAR || defined something)"). Is the argument that there are too many details of it that differ between implementations, as discussed in section 3.2 of <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n4220.pdf>?
-- Joseph S. Myers jos...@codesourcery.com