http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47781
Summary: warnings from custom printf format specifiers Product: gcc Version: 4.4.5 Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c AssignedTo: unassig...@gcc.gnu.org ReportedBy: mark-...@glines.org Glibc allows a project to define custom printf conversions, via one of two APIs: register_printf_function, and more recently, register_printf_specifier. For instance, my project has a custom %v conversion, which takes a pointer to a vector structure that is heavily used within the project, and pretty-prints it. The problem is, every time the custom format conversion is used, gcc (which is invoked with -Wall) generates warnings. test.c:198: warning: unknown conversion type character āvā in format test.c:198: warning: too many arguments for format I can get rid of the warnings with -Wno-format, but that also disables the rest of gcc's format string checking (which is very helpful!). I'd like to request a finer grained means of control. A syntactical element (builtin/pragma/attribute/whatever) to pre-declare a format conversion and the typedef to check it against would be very nice, if complex. A much simpler solution would be a -Wno-format-unknown-specifier option, which skips the argument in the argument list and otherwise ignores conversions it doesn't recognize. Any solution along those lines would be very helpful.