Skip to content

Commit bd67c1c

Browse files
andy-shevpmladek
authored andcommitted
vsnprintf: Silence false positive GCC warning for va_format()
va_format() is using vsnprintf(), and GCC compiler (Debian 14.2.0-17) is not happy about this: lib/vsprintf.c:1704:9: error: function ‘va_format’ might be a candidate for ‘gnu_print ’ format attribute [-Werror=suggest-attribute=format] Fix the compilation errors (`make W=1` when CONFIG_WERROR=y, which is default) by silencing the false positive GCC warning. Suggested-by: Rasmus Villemoes <ravi@prevas.dk> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Kees Cook <kees@kernel.org> Reviewed-by: Petr Mladek <pmladek@suse.com> Link: https://lore.kernel.org/r/20250321144822.324050-7-andriy.shevchenko@linux.intel.com Signed-off-by: Petr Mladek <pmladek@suse.com>
1 parent a1aea76 commit bd67c1c

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

lib/vsprintf.c

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1699,6 +1699,10 @@ char *escaped_string(char *buf, char *end, u8 *addr, struct printf_spec spec,
16991699
return buf;
17001700
}
17011701

1702+
#pragma GCC diagnostic push
1703+
#ifndef __clang__
1704+
#pragma GCC diagnostic ignored "-Wsuggest-attribute=format"
1705+
#endif
17021706
static char *va_format(char *buf, char *end, struct va_format *va_fmt,
17031707
struct printf_spec spec)
17041708
{
@@ -1713,6 +1717,7 @@ static char *va_format(char *buf, char *end, struct va_format *va_fmt,
17131717

17141718
return buf;
17151719
}
1720+
#pragma GCC diagnostic pop
17161721

17171722
static noinline_for_stack
17181723
char *uuid_string(char *buf, char *end, const u8 *addr,

0 commit comments

Comments
 (0)