diff options
author | Borislav Petkov (AMD) <bp@alien8.de> | 2023-07-05 00:19:51 +0200 |
---|---|---|
committer | Masahiro Yamada <masahiroy@kernel.org> | 2023-07-25 00:59:32 +0900 |
commit | c40e60f00caf18bc382215c79651777eb40f5f9d (patch) | |
tree | 3949c068edd675aed39184e6b88283a247c03aee /Makefile | |
parent | 6eaae198076080886b9e7d57f4ae06fa782f90ef (diff) | |
download | linux-c40e60f00caf18bc382215c79651777eb40f5f9d.tar.gz linux-c40e60f00caf18bc382215c79651777eb40f5f9d.tar.bz2 linux-c40e60f00caf18bc382215c79651777eb40f5f9d.zip |
kbuild: Enable -Wenum-conversion by default
This diagnostic checks whether there is a type mismatch when
converting enums (assign an enum of type A to an enum of type B, for
example) and it caught a legit issue recently. The reason it didn't show
is because that warning is enabled only with -Wextra with GCC. Clang,
however, enables it by default.
GCC folks were considering enabling it by default but it was too noisy
back then:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78736
Now that due to clang all those warnings have been fixed, enable it with
GCC too.
allmodconfig tests done with: x86, arm{,64}, powerpc{,64}, riscv
crossbuilds.
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 3 |
1 files changed, 3 insertions, 0 deletions
@@ -1090,6 +1090,9 @@ KBUILD_CFLAGS += $(call cc-option,-Werror=incompatible-pointer-types) # Require designated initializers for all marked structures KBUILD_CFLAGS += $(call cc-option,-Werror=designated-init) +# Warn if there is an enum types mismatch +KBUILD_CFLAGS += $(call cc-option,-Wenum-conversion) + # change __FILE__ to the relative path from the srctree KBUILD_CPPFLAGS += $(call cc-option,-fmacro-prefix-map=$(srctree)/=) |