http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47901
--- Comment #6 from joseph at codesourcery dot com <joseph at codesourcery dot com> 2012-04-23 20:49:38 UTC --- -Wall is expecting printf-like functions where empty strings are useless as arguments and might indicate e.g. cruft you hadn't completely cleaned up from your program. Or a style where you have separate specialized functions for such cases (like the style where you carefully use fputs, fputc etc. for cases that can be covered by those functions, instead of using printf universally). There's nothing wrong with using a -Wno- option (or associated pragmas) if the stylistic choices for your program are different from those for -Wall. Wall tries to strike a reasonable balance, but won't be perfect for everyone; it's a good starting point for both enabling further warnings, and disabling other warnings, to taste.