Not a bug, but it would be nice if the documentation could be amended to indicate that if the character set specified by -fexec-charset is different from the compiler's default character set, e.g., if it is an EBCDIC codepage, -Wformat will usually indicate too many parameters for the format as the compiler scans for % which in my case is changed to l by the preprocessor. As the fexec-charset option is a preprocessor option, it would no doubt be difficult to translate the string back in the compiler proper (but it would be nice if it could be).