summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorViktor Szakats <commit@vsz.me>2023-04-17 11:35:56 +0000
committerViktor Szakats <commit@vsz.me>2023-04-17 11:35:56 +0000
commit81c9c8cd398a4832170fb4fe8e996930b0a6b3d0 (patch)
treedbf4ce2e01a132310f578ea99ea3692360d4d609
parent17c71df42120b5f9f0c1a226a2ba7eba4edd51b6 (diff)
downloadcurl-81c9c8cd398a4832170fb4fe8e996930b0a6b3d0.tar.gz
autotools: sync up clang picky warnings with cmake
Bringing missing options over from CMake. Move around existing `-Wno-pointer-bool-conversion` option to come _after_ `-Wconversion`. Reviewed-by: Marcel Raad Closes #10974
-rw-r--r--m4/curl-compilers.m423
1 files changed, 20 insertions, 3 deletions
diff --git a/m4/curl-compilers.m4 b/m4/curl-compilers.m4
index 94089e88f..caa2b14cb 100644
--- a/m4/curl-compilers.m4
+++ b/m4/curl-compilers.m4
@@ -507,9 +507,6 @@ AC_DEFUN([CURL_SET_COMPILER_BASIC_OPTS], [
dnl warn about compile-time arguments used during link-time, like
dnl -O and -g and -pedantic.
tmp_CFLAGS="$tmp_CFLAGS -Qunused-arguments"
- dnl Disable pointer to bool conversion warnings since they cause
- dnl lib/securetransp.c cause several warnings for checks we want.
- tmp_CFLAGS="$tmp_CFLAGS -Wno-pointer-bool-conversion"
;;
#
DEC_C)
@@ -814,8 +811,19 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [shift-sign-overflow])
fi
#
+ dnl Only clang 3.0 or later (possibly earlier)
+ if test "$compiler_num" -ge "300"; then
+ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [bad-function-cast])
+ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [conversion])
+ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [empty-body])
+ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [ignored-qualifiers])
+ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [type-limits])
+ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [no-sign-conversion])
+ fi
+ #
dnl Only clang 3.2 or later
if test "$compiler_num" -ge "302"; then
+ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [enum-conversion])
case $host_os in
cygwin* | mingw*)
dnl skip missing-variable-declarations warnings for cygwin and
@@ -827,6 +835,11 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
esac
fi
#
+ dnl Only clang 3.4 or later
+ if test "$compiler_num" -ge "304"; then
+ CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [unused-const-variable])
+ fi
+ #
dnl Only clang 3.6 or later
if test "$compiler_num" -ge "306"; then
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [double-promotion])
@@ -847,6 +860,10 @@ AC_DEFUN([CURL_SET_COMPILER_WARNING_OPTS], [
CURL_ADD_COMPILER_WARNINGS([tmp_CFLAGS], [extra-semi-stmt])
fi
fi
+ dnl Disable pointer to bool conversion warnings since they cause
+ dnl lib/securetransp.c cause several warnings for checks we want.
+ dnl This option should be placed after -Wconversion.
+ tmp_CFLAGS="$tmp_CFLAGS -Wno-pointer-bool-conversion"
;;
#
DEC_C)