[libc-commits] [libc] [libc] `-Wimplicit-fallthrough`, `-Wwrite-strings` and non-GCC warnings (PR #124036)

Nick Desaulniers via libc-commits libc-commits at lists.llvm.org
Tue Jan 28 10:43:13 PST 2025


================
@@ -46,13 +46,13 @@ function(_get_common_test_compile_options output_var c_test flags)
       list(APPEND compile_options "-Wno-gnu-imaginary-constant")
     endif()
     list(APPEND compile_options "-Wno-pedantic")
-    # if(NOT CMAKE_COMPILER_IS_GNUCXX)
-    #   list(APPEND compile_options "-Wnewline-eof")
-    #   list(APPEND compile_options "-Wnonportable-system-include-path")
-    #   list(APPEND compile_options "-Wstrict-prototypes")
-    #   list(APPEND compile_options "-Wthread-safety")
-    #   list(APPEND compile_options "-Wglobal-constructors")
-    # endif()
+    if(NOT CMAKE_COMPILER_IS_GNUCXX)
----------------
nickdesaulniers wrote:

I observe
```
cc1: error: command-line option ‘-Wextra-semi’ is valid for C++/ObjC++ but not for C [-Werror]
```
when trying to build llvm-project/libc/test/include/stdbit_test.c. That's a pre-existing issue that predates your PR, but it's the same issue as I've outlined above regarding `-Wstrict-prototypes`. While you're "in the neighborhood," do you mind please also moving `-Wextra-semi` back to being Clang-only together with `-Wstrict-prototypes`? For the same reasons.  Ideally, would have C specific compiler flags and C++ specific compiler flags, but I'm not about to "shave that yak."

https://github.com/llvm/llvm-project/pull/124036


More information about the libc-commits mailing list