Re: [PATCH 2/2] Makefile.extrawarn: limit -Wnested-externs to clang

From: Nathan Chancellor
Date: Mon Oct 26 2020 - 21:48:53 EST


On Mon, Oct 26, 2020 at 11:03:14PM +0100, Arnd Bergmann wrote:
> From: Arnd Bergmann <arnd@xxxxxxxx>
>
> The -Wnested-externs warning has become useless with gcc, since
> this warns every time that BUILD_BUG_ON() or similar macros
> are used.
>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>

Also see:

2486baae2cf6 ("objtool: Allow nested externs to enable BUILD_BUG()")
6cf4ecf5c51d ("perf build: Allow nested externs to enable BUILD_BUG() usage")

Reviewed-by: Nathan Chancellor <natechancellor@xxxxxxxxx>

> ---
> scripts/Makefile.extrawarn | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
> index 6baee1200615..9406f752e355 100644
> --- a/scripts/Makefile.extrawarn
> +++ b/scripts/Makefile.extrawarn
> @@ -61,7 +61,10 @@ endif
> ifneq ($(findstring 2, $(KBUILD_EXTRA_WARN)),)
>
> KBUILD_CFLAGS += -Wdisabled-optimization
> +ifdef CONFIG_CC_IS_CLANG
> KBUILD_CFLAGS += -Wnested-externs
> +endif
> +
> KBUILD_CFLAGS += -Wshadow
> KBUILD_CFLAGS += $(call cc-option, -Wlogical-op)
> KBUILD_CFLAGS += -Wmissing-field-initializers
> --
> 2.27.0
>