From 9091e686f43184065381aa71929e3df36a4ea2e1 Mon Sep 17 00:00:00 2001 From: Thomas Hindoe Paaboel Andersen Date: Sat, 14 Dec 2013 13:09:07 +0100 Subject: Add more _printf_'s for format-nonliterals Clang is a bit more strict wrt format-nonliterals: http://clang.llvm.org/docs/LanguageExtensions.html#format-string-checking Adding these extra printf attributes also makes gcc able to find more problems. E.g. this patch uncovers a format issue in udev-builtin-path_id.c Some parts looked intetional about breaking the format-nonliteral check. I added some supression for warnings there. --- src/journal/microhttpd-util.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/journal/microhttpd-util.c') diff --git a/src/journal/microhttpd-util.c b/src/journal/microhttpd-util.c index 382087c790..5675af4a19 100644 --- a/src/journal/microhttpd-util.c +++ b/src/journal/microhttpd-util.c @@ -27,6 +27,9 @@ #include "macro.h" #include "util.h" +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wformat-nonliteral" +_printf_(2,0) void microhttpd_logger(void *arg, const char *fmt, va_list ap) { _cleanup_free_ char *f; if (asprintf(&f, "microhttpd: %s", fmt) <= 0) { @@ -35,3 +38,4 @@ void microhttpd_logger(void *arg, const char *fmt, va_list ap) { } log_metav(LOG_INFO, NULL, 0, NULL, f, ap); } +#pragma GCC diagnostic pop -- cgit v1.2.3-54-g00ecf