Pádraig Brady:
> Why does xgettext even think fputs takes a printf format?
I don't think it does. I think it doesn't know anything about fputs
at all, so it tries to guess. If there is something that looks like a
printf directive in the message, it is guessed to be c-format,
otherwise not.
In a simple test I found that
fputs(_("Hello world"), stdout);
is not considered c-format, but
fputs(_("Hello %orld"), stdout);
is. If I use printf instead of fputs, it is considered c-format in
both cases. xgettext does know by default that printf's first
argument is c-format.
> I've CC'd
> the gettext bug list so that we won't have to
> worry about it going forward.
:-) I actually also sent a message to that list a little while ago,
suggesting they add flags by default for the other stdio functions.
(puts, fputs and fwrite came to mind)