* build-aux/gcc-warning.spec: Add options introduced in GCC 16. Remove -Wfree-labels (not limited to objc), -Wuseless-cast (not limited to c++ and objc++). * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add -Wfree-labels, -Wkeyword-macro (new to GCC 16), -Wuseless-casts. --- ChangeLog | 7 +++++++ build-aux/gcc-warning.spec | 8 ++++++-- m4/manywarnings.m4 | 3 +++ 3 files changed, 16 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog index 9dbc2f82e9..d5474423b6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,12 @@ 2026-05-01 Paul Eggert <[email protected]> + manywarnings: GCC 16 changes + * build-aux/gcc-warning.spec: Add options introduced in GCC 16. + Remove -Wfree-labels (not limited to objc), -Wuseless-cast + (not limited to c++ and objc++). + * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add -Wfree-labels, + -Wkeyword-macro, -Wuseless-casts. + manywarnings: simplify C warning audits * build-aux/gcc-warning.spec: Omit many c++, objc, obcj++, fortran warnings as we no longer need to track them here. diff --git a/build-aux/gcc-warning.spec b/build-aux/gcc-warning.spec index 151beba027..07b0f3e1e3 100644 --- a/build-aux/gcc-warning.spec +++ b/build-aux/gcc-warning.spec @@ -53,6 +53,7 @@ -Wanalyzer-tainted-divisor FIXME requires -fanalyzer-checker=taint -Wanalyzer-tainted-offset FIXME requires -fanalyzer-checker=taint -Wanalyzer-tainted-size FIXME requires -fanalyzer-checker=taint +-Wanalyzer-throw-of-unexpected-type enabled by -fanalyzer -Wanalyzer-too-complex enabled by -fanalyzer -Wanalyzer-undefined-behavior-ptrdiff enabled by -fanalyzer -Wanalyzer-undefined-behavior-strtok enabled by -fanalyzer @@ -75,6 +76,7 @@ -Wattribute-alias=<0,2> handled specially by gl_MANYWARN_ALL_GCC -Wattribute-warning default -Wattributes default +-Wauto-profile useful only when profiling -Wbidi-chars handled specially by gl_MANYWARN_ALL_GCC -Wbidi-chars= handled specially by gl_MANYWARN_ALL_GCC -Wbool-compare enabled by -Wall @@ -112,6 +114,7 @@ -Wdeprecated default -Wdeprecated-declarations default -Wdeprecated-non-prototype c compatibility +-Wdeprecated-openmp default -Wdesignated-init default -Wdisabled-optimization warns about compiler not about program -Wdiscarded-array-qualifiers default @@ -142,7 +145,6 @@ -Wformat=<0,2> gcc --help=warnings artifact -Wframe-address enabled by -Wall -Wframe-larger-than=<byte-size> FIXME: choose something sane? --Wfree-labels c and objc compatibility -Wfree-nonheap-object default -Whardened default -Wheader-guard enabled by -Wall @@ -185,6 +187,7 @@ -Wmissing-parameter-type enabled by -Wextra -Wmissing-profile default -Wmultichar default +-Wmultiple-parameter-fwd-decl-lists enabled by -Wextra -Wmultistatement-macros enabled by -Wall -Wmusttail-local-addr default -Wnarrowing enabled by -Wall @@ -275,7 +278,9 @@ -Wunterminated-string-initialization enabled by -Wextra -Wunused enabled by -Wall -Wunused-but-set-parameter enabled by -Wextra -Wunused +-Wunused-but-set-parameter=<0,3> enabled by -Wextra -Wunused -Wunused-but-set-variable enabled by -Wunused +-Wunused-but-set-variable=<0,3> enabled by -Wall -Wunused-const-variable covered by -Wunused-const-variable=2 -Wunused-const-variable=<0,2> gcc --help=warnings artifact -Wunused-function enabled by -Wunused @@ -286,7 +291,6 @@ -Wunused-variable enabled by -Wunused -Wuse-after-free handled specially by gl_MANYWARN_ALL_GCC -Wuse-after-free=<0,3> handled specially by gl_MANYWARN_ALL_GCC --Wuseless-cast c++ and objc++ -Wvarargs default -Wvla-larger-than=<number> handled specially by gl_MANYWARN_ALL_GCC -Wvla-parameter enabled by -Wall diff --git a/m4/manywarnings.m4 b/m4/manywarnings.m4 index 88e7ad6646..bb8f4feb0e 100644 --- a/m4/manywarnings.m4 +++ b/m4/manywarnings.m4 @@ -113,9 +113,11 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C -Wextra \ -Wflex-array-member-not-at-end \ -Wformat-signedness \ + -Wfree-labels \ -Winit-self \ -Winline \ -Winvalid-pch \ + -Wkeyword-macro \ -Wlogical-op \ -Wmissing-declarations \ -Wmissing-include-dirs \ @@ -145,6 +147,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC(C -Wunknown-pragmas \ -Wunsafe-loop-optimizations \ -Wunused-macros \ + -Wuseless-casts \ -Wvariadic-macros \ -Wvector-operation-performance \ -Wvla \ -- 2.54.0
