https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62184
--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> --- (In reply to Manuel López-Ibáñez from comment #2) > We had this and it got removed (see PR36478). Perhaps a better > implementation is possible now that we track macro locations. There one had: warn2.cc:6: error: suggest a space before ‘;’ or explicit braces around empty While CLANG requires a new line (according to the message), such that #define EMPTY while() EMPTY; would be fine while while(f()) ; // or: while(f())EMPTY; wouldn't. (Given how stray spaces enter the code, I'd also like the "while(f()) ;" warning.) > (I wonder how the Clang guys get away with warning about all this stuff by > default. Is it because they have very good heuristics to avoid being > annoying?) Me too, although I have a log file here with "clang -Weverything" for our code, from which I extract all warning classes (164M) - and look at the individual warnings for those looking potentially interesting. [BTW: One should also consider adding -Weverything to GCC, which helps to find discover warning options.]