diff --git a/cmake/common.cmake b/cmake/common.cmake index c64ddbc3d..bbc9c412e 100644 --- a/cmake/common.cmake +++ b/cmake/common.cmake @@ -13,7 +13,12 @@ function(llama_add_compile_flags) list(APPEND C_FLAGS -Wshadow -Wstrict-prototypes -Wpointer-arith -Wmissing-prototypes -Werror=implicit-int -Werror=implicit-function-declaration) - list(APPEND CXX_FLAGS -Wshadow -Wmissing-declarations -Wmissing-noreturn) + list(APPEND CXX_FLAGS -Wmissing-declarations -Wmissing-noreturn) + + # GCC -Wshadow is way too agressive + if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang") + list(APPEND CXX_FLAGS -Wshadow) + endif() list(APPEND WARNING_FLAGS -Wall -Wextra -Wpedantic -Wcast-qual -Wno-unused-function)