summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--build-aux/gcc-warning.spec21
-rw-r--r--m4/manywarnings.m414
3 files changed, 42 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index a9c66e9a60..02a0f6fc5b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2016-05-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ 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 <eggert@cs.ucla.edu>
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=<number> 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=<none|id|nfc|nfkc> 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