diff --git a/.github/workflows/linux.yml b/.github/workflows/linux.yml index ba75359b6b..81f1c47732 100644 --- a/.github/workflows/linux.yml +++ b/.github/workflows/linux.yml @@ -386,7 +386,7 @@ jobs: CC: clang-20 CFLAGS: -fsanitize=thread -g LDFLAGS: -fsanitize=thread - generate: -DOPENSSL_ROOT_DIR=/home/runner/openssl -DENABLE_DEBUG=ON -DCMAKE_UNITY_BUILD=OFF + generate: -DOPENSSL_ROOT_DIR=/home/runner/openssl -DENABLE_DEBUG=ON - name: 'memory-sanitizer' install_packages: clang-20 diff --git a/CMake/PickyWarnings.cmake b/CMake/PickyWarnings.cmake index 24d99d6332..aca79ec947 100644 --- a/CMake/PickyWarnings.cmake +++ b/CMake/PickyWarnings.cmake @@ -130,13 +130,12 @@ if(PICKY_COMPILER) -Wmissing-field-initializers # clang 2.7 gcc 4.1 -Wmissing-noreturn # clang 2.7 gcc 4.1 -Wno-padded # clang 2.9 gcc 4.1 # Not used: We cannot change public structs + -Wno-sign-conversion # clang 2.9 gcc 4.3 -Wno-switch-default # clang 2.7 gcc 4.1 # Not used: Annoying to fix or silence -Wno-switch-enum # clang 2.7 gcc 4.1 # Not used: It basically disallows default case -Wno-system-headers # clang 1.0 gcc 3.0 -Wold-style-definition # clang 2.7 gcc 3.4 -Wredundant-decls # clang 2.7 gcc 4.1 - -Wsign-conversion # clang 2.9 gcc 4.3 - -Wno-error=sign-conversion -Wstrict-prototypes # clang 1.0 gcc 3.3 -Wtype-limits # clang 2.7 gcc 4.3 -Wunreachable-code # clang 2.7 gcc 4.1 @@ -332,7 +331,6 @@ if(PICKY_COMPILER) if(CMAKE_C_COMPILER_VERSION VERSION_GREATER_EQUAL 10.0) list(APPEND _picky_enable -Warith-conversion # gcc 10.0 - -Wno-error=arith-conversion # gcc 10.0 # extra hits with -Wsign-conversion -Wenum-conversion # clang 3.2 gcc 10.0 appleclang 4.2 g++ 11.0 ) endif() diff --git a/m4/curl-compilers.m4 b/m4/curl-compilers.m4 index 5c50d41938..4bb7196eae 100644 --- a/m4/curl-compilers.m4 +++ b/m4/curl-compilers.m4 @@ -851,8 +851,7 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [ dnl Only clang 2.9 or later if test "$compiler_num" -ge "209"; then - CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sign-conversion]) - tmp_CFLAGS="$tmp_CFLAGS -Wno-error=sign-conversion" + tmp_CFLAGS="$tmp_CFLAGS -Wno-sign-conversion" tmp_CFLAGS="$tmp_CFLAGS -Wno-padded" # Not used because we cannot change public structs tmp_CFLAGS="$tmp_CFLAGS -Wno-used-but-marked-unused" # for typecheck-gcc.h with clang 14+, dependency headers CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shift-sign-overflow]) @@ -1100,8 +1099,7 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [missing-parameter-type empty-body]) CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [clobbered ignored-qualifiers]) CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [conversion]) - CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [sign-conversion]) - tmp_CFLAGS="$tmp_CFLAGS -Wno-error=sign-conversion" + tmp_CFLAGS="$tmp_CFLAGS -Wno-sign-conversion" CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [vla]) dnl required for -Warray-bounds, included in -Wall tmp_CFLAGS="$tmp_CFLAGS -ftree-vrp" @@ -1161,7 +1159,6 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [ dnl Only gcc 10 or later if test "$compiler_num" -ge "1000"; then CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [arith-conversion]) - tmp_CFLAGS="$tmp_CFLAGS -Wno-error=arith-conversion" # extra hits with -Wsign-conversion CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [enum-conversion]) fi