From c44470fb95020b371e31202bf2884ca021b3dd73 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Fri, 30 Jul 2021 12:56:24 -0700 Subject: manywarnings: document GCC 11 warnings * build-aux/gcc-warning.spec: Add warnings introduced in GCC 11. None of them require Gnulib code changes, so this is just a documentation change. --- build-aux/gcc-warning.spec | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'build-aux/gcc-warning.spec') diff --git a/build-aux/gcc-warning.spec b/build-aux/gcc-warning.spec index 3f7e886c52..c0d49f2a6e 100644 --- a/build-aux/gcc-warning.spec +++ b/build-aux/gcc-warning.spec @@ -24,18 +24,25 @@ -Wanalyzer-file-leak enabled by -fanalyzer -Wanalyzer-free-of-non-heap enabled by -fanalyzer -Wanalyzer-malloc-leak enabled by -fanalyzer +-Wanalyzer-mismatching-deallocation enabled by -fanalyzer -Wanalyzer-null-argument enabled by -fanalyzer -Wanalyzer-null-dereference enabled by -fanalyzer -Wanalyzer-possible-null-argument enabled by -fanalyzer -Wanalyzer-possible-null-dereference enabled by -fanalyzer +-Wanalyzer-shift-count-negative enabled by -fanalyzer +-Wanalyzer-shift-count-overflow enabled by -fanalyzer -Wanalyzer-stale-setjmp-buffer implied by -fanalyzer -Wanalyzer-tainted-array-index FIXME maybe? too much noise -Wanalyzer-too-complex enabled by -fanalyzer -Wanalyzer-unsafe-call-within-signal-handler enabled by -fanalyzer -Wanalyzer-use-after-free enabled by -fanalyzer -Wanalyzer-use-of-pointer-in-stale-stack-frame enabled by -fanalyzer +-Wanalyzer-write-to-const enabled by -fanalyzer +-Wanalyzer-write-to-string-literal enabled by -fanalyzer -Warray-bounds covered by -Warray-bounds= -Warray-bounds=<0,2> handled specially by gl_MANYWARN_ALL_GCC +-Warray-parameter enabled by -Wall +-Warray-parameter=<0,2> enabled by -Wall -Warray-temporaries fortran -Wassign-intercept objc/objc++ -Wattribute-alias covered by -Wattribute-alias=2 @@ -81,6 +88,7 @@ -Wconversion-null c++ and objc++ -Wcoverage-mismatch default -Wcpp default +-Wctad-maybe-unsupported c++ and objc++ -Wctor-dtor-privacy c++ -Wdangling-else enabled by -Wparentheses -Wdeclaration-after-statement needed only for pre-C99, so obsolete @@ -90,6 +98,8 @@ -Wdeprecated-copy c++ and objc++ -Wdeprecated-copy-dtor c++ and objc++ -Wdeprecated-declarations default +-Wdeprecated-enum-enum-conversion c++ and objc++ +-Wdeprecated-enum-float-conversion c++ and objc++ -Wdesignated-init default -Wdiscarded-array-qualifiers default -Wdiscarded-qualifiers default @@ -102,6 +112,7 @@ -Wenum-conversion enabled by -Wextra -Wendif-labels default -Werror-implicit-function-declaration deprecated +-Wexceptions c++ and objc++ -Wexpansion-to-defined enabled by -Wextra -Wextra-semi c++ -Wfloat-conversion FIXME maybe? borderline. some will want this @@ -144,6 +155,7 @@ -Winteger-division fortran -Wintrinsic-shadow fortran -Wintrinsics-std fortran +-Winvalid-imported-macros c++ and objc++ -Winvalid-memory-model default -Winvalid-offsetof c++ and objc++ -Wjump-misses-init only useful for code meant to be compiled by a C++ compiler @@ -159,6 +171,8 @@ -Wmemset-elt-size enabled by -Wall -Wmemset-transposed-args enabled by -Wall -Wmisleading-indentation enabled by -Wall +-Wmismatched-dealloc default +-Wmismatched-new-delete default, c++ and objc++ -Wmismatched-tags c++ and objc++ -Wmissing-attributes enabled by -Wall -Wmissing-braces enabled by -Wall @@ -186,6 +200,8 @@ -Wnonnull-compare enabled by -Wall -Wnormalized default -Wnormalized=[none|id|nfc|nfkc] defaults to nfc +-WNSObject-attribute objc and objc++ +-Wobjc-root-class objc and objc++ -Wodr default -Wold-style-cast c++ and objc++ -Wold-style-declaration enabled by -Wextra @@ -211,6 +227,7 @@ -Wproperty-assign-default objc++ -Wprotocol objc++ -Wpsabi default +-Wrange-loop-construct c++ and objc++ -Wreal-q-constant fortran -Wrealloc-lhs fortran -Wrealloc-lhs-all fortran @@ -241,6 +258,7 @@ -Wsign-promo c++ and objc++ -Wsized-deallocation c++ and objc++ -Wsizeof-array-argument default +-Wsizeof-array-div enabled by -Wall -Wsizeof-pointer-div enabled by -Wall -Wsizeof-pointer-memaccess enabled by -Wall -Wstack-usage= FIXME: choose something sane? @@ -252,6 +270,7 @@ -Wstring-compare enabled by -Wextra -Wstringop-overflow covered by -Wstringop-overflow=2 -Wstringop-overflow=<0,4> defaults to 2 +-Wstringop-overread default -Wstringop-truncation default -Wsubobject-linkage c++ and objc++ -Wsuggest-override c++ and objc++ @@ -271,6 +290,7 @@ -Wtraditional obsolescent -Wtraditional-conversion obsolescent -Wtrigraphs enabled by -Wall +-Wtsan default -Wtype-limits enabled by -Wextra -Wundeclared-selector objc and objc++ -Wundef FIXME maybe? too many false positives @@ -294,9 +314,11 @@ -Wuse-without-only fortran -Wuseless-cast c++ and objc++ -Wvarargs default +-Wvexing-parse c++ and objc++ -Wvirtual-inheritance c++ -Wvirtual-move-assign c++ -Wvla-larger-than= handled specially by gl_MANYWARN_ALL_GCC +-Wvla-parameter enabled by -Wall -Wvolatile c++ and objc++ -Wvolatile-register-var enabled by -Wall -Wzero-as-null-pointer-constant c++ and objc++ -- cgit v1.2.1