[llvm] [CMake] Merge if statements for GCC warning disabling. NFC. (PR #159172)
Martin Storsjö via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 16 13:51:04 PDT 2025
https://github.com/mstorsjo created https://github.com/llvm/llvm-project/pull/159172
None
>From 82d6b3345f3b60e81e4cf99cf449ad0277d3b6b1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin at martin.st>
Date: Tue, 16 Sep 2025 23:48:55 +0300
Subject: [PATCH] [CMake] Merge if statements for GCC warning disabling. NFC.
---
llvm/cmake/modules/HandleLLVMOptions.cmake | 46 +++++++++-------------
1 file changed, 18 insertions(+), 28 deletions(-)
diff --git a/llvm/cmake/modules/HandleLLVMOptions.cmake b/llvm/cmake/modules/HandleLLVMOptions.cmake
index 4f227e8b1069a..52a64afa135d0 100644
--- a/llvm/cmake/modules/HandleLLVMOptions.cmake
+++ b/llvm/cmake/modules/HandleLLVMOptions.cmake
@@ -876,52 +876,42 @@ if (LLVM_ENABLE_WARNINGS AND (LLVM_COMPILER_IS_GCC_COMPATIBLE OR CLANG_CL))
append_if(USE_NO_UNINITIALIZED "-Wno-uninitialized" CMAKE_CXX_FLAGS)
append_if(USE_NO_MAYBE_UNINITIALIZED "-Wno-maybe-uninitialized" CMAKE_CXX_FLAGS)
- # Disable -Wnonnull for GCC warning as it is emitting a lot of false positives.
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+ # Disable -Wnonnull for GCC warning as it is emitting a lot of false positives.
append("-Wno-nonnull" CMAKE_CXX_FLAGS)
- endif()
- # Disable -Wclass-memaccess, a C++-only warning from GCC 8 that fires on
- # LLVM's ADT classes.
- if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+ # Disable -Wclass-memaccess, a C++-only warning from GCC 8 that fires on
+ # LLVM's ADT classes.
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 8.1)
append("-Wno-class-memaccess" CMAKE_CXX_FLAGS)
endif()
- endif()
- # Disable -Wdangling-reference, a C++-only warning from GCC 13 that seems
- # to produce a large number of false positives.
- if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+ # Disable -Wdangling-reference, a C++-only warning from GCC 13 that seems
+ # to produce a large number of false positives.
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 13.1)
append("-Wno-dangling-reference" CMAKE_CXX_FLAGS)
endif()
- endif()
- # Disable -Wredundant-move and -Wpessimizing-move on GCC>=9. GCC wants to
- # remove std::move in code like
- # "A foo(ConvertibleToA a) { return std::move(a); }",
- # but this code does not compile (or uses the copy
- # constructor instead) on clang<=3.8. Clang also has a -Wredundant-move and
- # -Wpessimizing-move, but they only fire when the types match exactly, so we
- # can keep them here.
- if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+ # Disable -Wredundant-move and -Wpessimizing-move on GCC>=9. GCC wants to
+ # remove std::move in code like
+ # "A foo(ConvertibleToA a) { return std::move(a); }",
+ # but this code does not compile (or uses the copy
+ # constructor instead) on clang<=3.8. Clang also has a -Wredundant-move and
+ # -Wpessimizing-move, but they only fire when the types match exactly, so we
+ # can keep them here.
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 9.1)
append("-Wno-redundant-move" CMAKE_CXX_FLAGS)
append("-Wno-pessimizing-move" CMAKE_CXX_FLAGS)
endif()
- endif()
- # Disable -Warray-bounds on GCC; this warning exists since a very long time,
- # but since GCC 11, it produces a lot of very noisy, seemingly false positive
- # warnings (potentially originating in libstdc++).
- if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+ # Disable -Warray-bounds on GCC; this warning exists since a very long time,
+ # but since GCC 11, it produces a lot of very noisy, seemingly false positive
+ # warnings (potentially originating in libstdc++).
append("-Wno-array-bounds" CMAKE_CXX_FLAGS)
- endif()
- # Disable -Wstringop-overread on GCC; this warning produces a number of very
- # noisy diagnostics when -Warray-bounds is disabled above; this option exists
- # since GCC 11.
- if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
+ # Disable -Wstringop-overread on GCC; this warning produces a number of very
+ # noisy diagnostics when -Warray-bounds is disabled above; this option exists
+ # since GCC 11.
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 11.1)
append("-Wno-stringop-overread" CMAKE_CXX_FLAGS)
endif()
More information about the llvm-commits
mailing list