From 3d54e957c93db7ae605966ca2969e9bf11f92a67 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Wed, 18 Dec 2024 02:38:26 +0800 Subject: [PATCH] Hide memset/bzero from compiler Hide memset/bzero from compiler to silence Clang error: ./tester.c:1345:29: error: 'size' argument to memset is '0'; did you mean to transpose the last two arguments? [-Werror,-Wmemset-transposed-args] 1345 | (void) memset(one+2, 'y', 0); | ^ ./tester.c:1345:29: note: parenthesize the third argument to silence ./tester.c:1432:16: error: 'size' argument to bzero is '0' [-Werror,-Wsuspicious-bzero] 1432 | bzero(one+2, 0); | ^ ./tester.c:1432:16: note: parenthesize the second argument to silence Signed-off-by: H.J. Lu Reviewed-by: Sam James --- string/tester.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/string/tester.c b/string/tester.c index ee96747280..3e3660777e 100644 --- a/string/tester.c +++ b/string/tester.c @@ -50,6 +50,15 @@ DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread"); #include #include +static __typeof (bzero) * volatile bzero_indirect = bzero; +static __typeof (memset) * volatile memset_indirect = memset; + +#undef bzero +#undef memset + +#define bzero bzero_indirect +#define memset memset_indirect + /* This file tests a range of corner cases of string functions, including cases where truncation occurs or where sizes specified are larger than the actual buffers, which result in various