Hide Forgot
After adding this void pdfOut_printf(pdfOut *pdf,const char *fmt,...) __attribute__((format(printf, 2, 3))); to filter/pdfutils.h, I get these format string mismatches: filter/pdfutils.c:246:23: warning: format specifies type 'int' but the argument has type 'long' [-Wformat] pdf->xref[iA]); ^~~~~~~~~~~~~ filter/pdfutils.c:352:29: warning: format specifies type 'int' but the argument has type 'long' [-Wformat] ,l0_obj,streamsize); ^~~~~~~~~~ filter/texttopdf.c:255:29: warning: format specifies type 'int' but the argument has type 'long' [-Wformat] len_obj,size); ^~~~ This looks harmless (int is promoted to long in varargs anyway).
Similarly, applying this to fontembed/dynstring.h int dyn_printf(DYN_STRING *ds,const char *fmt,...) __attribute__((format(printf, 2, 3))); yields: fontembed/embed_sfnt.c:522:20: warning: invalid conversion specifier '!' [-Wformat-invalid-specifier] dyn_printf(&ds,"%!PS-TrueTypeFont-%d-%d\n", ~^ fontembed/embed_sfnt.c:522:41: warning: more '%' conversions than data arguments [-Wformat] dyn_printf(&ds,"%!PS-TrueTypeFont-%d-%d\n", ~^ That's equally harmless.
Filed as Fedora bug #1014093.