[PATCH v2 6/6] vsnprintf: Silence false positive GCC warning for va_format()
From: Andy Shevchenko
Date: Fri Mar 21 2025 - 10:55:29 EST
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@xxxxxxxxx>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@xxxxxxxxxxxxxxx>
---
lib/vsprintf.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index 899e14e4c469..a55e88895a64 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -1692,6 +1692,10 @@ char *escaped_string(char *buf, char *end, u8 *addr, struct printf_spec spec,
return buf;
}
+#pragma GCC diagnostic push
+#ifndef __clang__
+#pragma GCC diagnostic ignored "-Wsuggest-attribute=format"
+#endif
static char *va_format(char *buf, char *end, struct va_format *va_fmt,
struct printf_spec spec)
{
@@ -1706,6 +1710,7 @@ static char *va_format(char *buf, char *end, struct va_format *va_fmt,
return buf;
}
+#pragma GCC diagnostic pop
static noinline_for_stack
char *uuid_string(char *buf, char *end, const u8 *addr,
--
2.47.2