From 87fbf522618013b675cfd10863630506ad882ef7 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Mon, 7 May 2012 11:10:52 -0400 Subject: [PATCH] rculfhash: use do {} while (0) for dbg_printf() found by clang(make CC=clang). avoid empty statement. ------------------------- if (condition) dbg_printf() /* forget ";", but compiler say nothing if dbg_printf() is empty */ statement; ------------------------- also add printf format check. (we can use gcc extention "__printf(1, 2)" to declare a dummy inline function to do the check, but I use "printf()" directly here) Signed-off-by: Lai Jiangshan Signed-off-by: Mathieu Desnoyers --- rculfhash-internal.h | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/rculfhash-internal.h b/rculfhash-internal.h index 284125a..d7cec95 100644 --- a/rculfhash-internal.h +++ b/rculfhash-internal.h @@ -25,11 +25,17 @@ */ #include +#include #ifdef DEBUG #define dbg_printf(fmt, args...) printf("[debug rculfhash] " fmt, ## args) #else -#define dbg_printf(fmt, args...) +#define dbg_printf(fmt, args...) \ +do { \ + /* do nothing but check printf format */ \ + if (0) \ + printf("[debug rculfhash] " fmt, ## args); \ +} while (0) #endif #if (CAA_BITS_PER_LONG == 32) -- 2.34.1