From 6f9206d4db914cf904cd4711e3044d99c36dae8b Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Tue, 17 May 2016 09:08:02 -0700 Subject: manywarnings: update for GCC 6.1 * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): Add GCC 6.1 options that apply to C. * build-aux/gcc-warning.spec: Add GCC 6.1 options that do not apply to C, are obsolescent, etc. --- ChangeLog | 8 ++++++++ build-aux/gcc-warning.spec | 21 +++++++++++++++++++++ m4/manywarnings.m4 | 14 +++++++++++++- 3 files changed, 42 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index a9c66e9a60..02a0f6fc5b 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2016-05-17 Paul Eggert + + manywarnings: update for GCC 6.1 + * m4/manywarnings.m4 (gl_MANYWARN_ALL_GCC): + Add GCC 6.1 options that apply to C. + * build-aux/gcc-warning.spec: Add GCC 6.1 options that + do not apply to C, are obsolescent, etc. + 2016-05-12 Paul Eggert glob: size_t overflow checks diff --git a/build-aux/gcc-warning.spec b/build-aux/gcc-warning.spec index 4a8c8f5ff0..8c3901770c 100644 --- a/build-aux/gcc-warning.spec +++ b/build-aux/gcc-warning.spec @@ -31,13 +31,16 @@ -Wdelete-non-virtual-dtor c++ -Weffc++ c++ -Werror-implicit-function-declaration deprecated +-Wfloat-conversion FIXME maybe? borderline. some will want this -Wfloat-equal FIXME maybe? borderline. some will want this -Wformat covered by -Wformat=2 -Wformat= gcc --help=warnings artifact +-Wframe-larger-than= FIXME: choose something sane? -Wfunction-elimination fortran -Wimplicit-interface fortran -Wimplicit-procedure fortran -Winherited-variadic-ctor c++ +-Winteger-division fortran -Wintrinsic-shadow fortran -Wintrinsics-std fortran -Winvalid-offsetof c++ and objc++ @@ -46,14 +49,23 @@ -Wline-truncation fortran -Wliteral-suffix c++ and objc++ -Wlong-long obsolescent +-Wlto-type-mismatch c++ and objc++ +-Wmissing-format-attribute obsolescent +-Wmissing-noreturn obsolescent +-Wmultiple-inheritance c++ and objc++ +-Wnamespaces c++ -Wnoexcept c++ -Wnon-template-friend c++ -Wnon-virtual-dtor c++ +-Wnormalized covered by -Wnormalized= -Wnormalized= handled specially by gl_MANYWARN_ALL_GCC -Wold-style-cast c++ and objc++ -Woverloaded-virtual c++ +-Woverride-init-side-effects c++ and objc++ -Wpadded FIXME maybe? warns about "stabil" member in /usr/include/bits/timex.h -Wpedantic FIXME: too strict? +-Wplacement-new c++ +-Wplacement-new= c++ -Wpmf-conversions c++ and objc++ -Wproperty-assign-default objc++ -Wprotocol objc++ @@ -64,6 +76,8 @@ -Wreorder c++ and objc++ -Wselector objc and objc++ -Wshadow-ivar objc +-Wshift-overflow covered by -Wshift-overflow=2 +-Wshift-overflow= gcc --help=warnings artifact -Wsign-compare FIXME maybe? borderline. some will want this -Wsign-conversion FIXME maybe? borderline. some will want this -Wsign-promo c++ and objc++ @@ -73,21 +87,28 @@ -Wstrict-null-sentinel c++ and objc++ -Wstrict-overflow= FIXME: choose something sane? -Wstrict-selector-match objc and objc++ +-Wsubobject-linkage c++ and objc++ -Wsuggest-override c++ and objc++ -Wsurprising fortran -Wswitch-enum FIXME maybe? borderline. some will want this -Wsynth deprecated -Wtabs fortran -Wtarget-lifetime fortran +-Wtemplates c++ and objc++ +-Wterminate c++ and objc++ -Wtraditional obsolescent -Wtraditional-conversion obsolescent -Wundeclared-selector objc and objc++ -Wundef FIXME maybe? too many false positives -Wunderflow fortran +-Wunreachable-code obsolescent no-op -Wunsuffixed-float-constants triggers warning in gnulib's timespec.h +-Wunused-const-variable covered by -Wunusec-const-variable=2 +-Wunused-const-variable= gcc --help=warnings artifact -Wunused-dummy-argument fortran -Wuse-without-only fortran -Wuseless-cast c++ and objc++ +-Wvirtual-inheritance c++ -Wvirtual-move-assign c++ -Wzero-as-null-pointer-constant c++ and objc++ -Wzerotrip fortran diff --git a/m4/manywarnings.m4 b/m4/manywarnings.m4 index 12d68da6f3..90823b0acf 100644 --- a/m4/manywarnings.m4 +++ b/m4/manywarnings.m4 @@ -1,4 +1,4 @@ -# manywarnings.m4 serial 7 +# manywarnings.m4 serial 8 dnl Copyright (C) 2008-2016 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, @@ -129,6 +129,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC], -Wdiscarded-qualifiers \ -Wdiv-by-zero \ -Wdouble-promotion \ + -Wduplicated-cond \ -Wempty-body \ -Wendif-labels \ -Wenum-compare \ @@ -140,7 +141,10 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC], -Wformat-signedness \ -Wformat-y2k \ -Wformat-zero-length \ + -Wframe-address \ -Wfree-nonheap-object \ + -Whsa \ + -Wignored-attributes \ -Wignored-qualifiers \ -Wimplicit \ -Wimplicit-function-declaration \ @@ -158,6 +162,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC], -Wmain \ -Wmaybe-uninitialized \ -Wmemset-transposed-args \ + -Wmisleading-indentation \ -Wmissing-braces \ -Wmissing-declarations \ -Wmissing-field-initializers \ @@ -168,6 +173,8 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC], -Wnarrowing \ -Wnested-externs \ -Wnonnull \ + -Wnonnull-compare \ + -Wnull-dereference \ -Wodr \ -Wold-style-declaration \ -Wold-style-definition \ @@ -184,10 +191,12 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC], -Wpragmas \ -Wreturn-local-addr \ -Wreturn-type \ + -Wscalar-storage-order \ -Wsequence-point \ -Wshadow \ -Wshift-count-negative \ -Wshift-count-overflow \ + -Wshift-negative-value \ -Wsizeof-array-argument \ -Wsizeof-pointer-memaccess \ -Wstack-protector \ @@ -205,6 +214,7 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC], -Wswitch-default \ -Wsync-nand \ -Wsystem-headers \ + -Wtautological-compare \ -Wtrampolines \ -Wtrigraphs \ -Wtype-limits \ @@ -237,6 +247,8 @@ AC_DEFUN([gl_MANYWARN_ALL_GCC], # them here so that the above 'comm' command doesn't report a false match. gl_manywarn_set="$gl_manywarn_set -Warray-bounds=2" gl_manywarn_set="$gl_manywarn_set -Wnormalized=nfc" + gl_manywarn_set="$gl_manywarn_set -Wshift-overflow=2" + gl_manywarn_set="$gl_manywarn_set -Wunused-const-variable=2" # These are needed for older GCC versions. if test -n "$GCC"; then -- cgit v1.2.1