https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88860
--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Jonny Grant from comment #1) > --- a/gcc/doc/extend.texi > +++ b/gcc/doc/extend.texi > @@ -9353,6 +9353,13 @@ __attribute__((noreturn)) void d0 (void), > the @code{noreturn} attribute applies to all the functions > declared; the @code{format} attribute only applies to @code{d1}. > > +@noindent > +The following __attribute__ causes gcc to check run printf argument checks "check run printf argument checks" > on argument '3' which is 'const char * string format' (when visible at > compile time), against argument '4' the '...' variadic ellipsis. In the > example below, arguments '1' and '2' are not checked. > + > +@smallexample > +void string_format(const char * prefix, size_t line, const char * const > format, ...) __attribute__ ((format (printf,3,4))); > +@end smallexample This argument seems to be documenting the effects of the printf attribute, not attribute syntax. Why would it belong on this page?