[clang] 41c650e - [clang] Don't use -Wno-nested-anon-types on GCC (#95029)

via cfe-commits cfe-commits at lists.llvm.org
Mon Jun 10 23:03:44 PDT 2024


Author: Martin Storsjö
Date: 2024-06-11T09:03:41+03:00
New Revision: 41c650e8208f7804eb5ecd8749d6b31b6e518bb7

URL: https://github.com/llvm/llvm-project/commit/41c650e8208f7804eb5ecd8749d6b31b6e518bb7
DIFF: https://github.com/llvm/llvm-project/commit/41c650e8208f7804eb5ecd8749d6b31b6e518bb7.diff

LOG: [clang] Don't use -Wno-nested-anon-types on GCC (#95029)

GCC usually doesn't warn about unrecognized -Wno-<foo> options, if no
diagnostics are printed. However if some diagnostics are printed, it
also mentions that there were unrecognized -Wno-<foo> options.

Before 4feae05c6abda364a9295aecfa600d7d4e7dfeb6, we checked for whether
-Wnested-anon-types was supported, and added the -Wno-<foo> form if the
positive form of the option was supported.

As of GCC 14, -Wnested-anon-types isn't supported, thus limit the use of
the option to actual Clang (and still only while using the GCC
compatible driver).

This avoids unnecessary mentions about unrecognized -Wno-<foo> options
when building with GCC.

Added: 
    

Modified: 
    clang/CMakeLists.txt

Removed: 
    


################################################################################
diff  --git a/clang/CMakeLists.txt b/clang/CMakeLists.txt
index f6d96258cd135..c6496167d3828 100644
--- a/clang/CMakeLists.txt
+++ b/clang/CMakeLists.txt
@@ -350,7 +350,9 @@ if (LLVM_COMPILER_IS_GCC_COMPATIBLE)
     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wno-long-long")
   endif ()
 
-  set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-nested-anon-types" )
+  if (CMAKE_CXX_COMPILER_ID MATCHES "Clang")
+    set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-nested-anon-types" )
+  endif ()
 endif ()
 
 # Determine HOST_LINK_VERSION on Darwin.


        


More information about the cfe-commits mailing list