[PATCH] sparse: use the _Generic() version of __unqual_scalar_typeof()

From: Luc Van Oostenryck
Date: Thu Jun 18 2020 - 18:26:34 EST


If the file is being checked with sparse, use the version of
__unqual_scalar_typeof() using _Generic(), leaving the unoptimized
version only for the oldest versions of GCC.

This reverts commit
b398ace5d2ea ("compiler_types.h: Use unoptimized __unqual_scalar_typeof for sparse")

Note: a recent version of sparse will be needed (minimum v0.6.2-rc2
or later than 2020-05-28).

Cc: Marco Elver <elver@xxxxxxxxxx>
Cc: Borislav Petkov <bp@xxxxxxx>
Cc: Will Deacon <will@xxxxxxxxxx>
Link: https://marc.info/?l=linux-sparse&m=159233481816454
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@xxxxxxxxx>
---
include/linux/compiler_types.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/linux/compiler_types.h b/include/linux/compiler_types.h
index e368384445b6..e34a1080f36b 100644
--- a/include/linux/compiler_types.h
+++ b/include/linux/compiler_types.h
@@ -254,7 +254,7 @@ struct ftrace_likely_data {
* __unqual_scalar_typeof(x) - Declare an unqualified scalar type, leaving
* non-scalar types unchanged.
*/
-#if (defined(CONFIG_CC_IS_GCC) && CONFIG_GCC_VERSION < 40900) || defined(__CHECKER__)
+#if defined(CONFIG_CC_IS_GCC) && CONFIG_GCC_VERSION < 40900
/*
* We build this out of a couple of helper macros in a vain attempt to
* help you keep your lunch down while reading it.
--
2.27.0