summaryrefslogtreecommitdiffstats
path: root/config/gnu-warnings
diff options
context:
space:
mode:
authorDavid Young <dyoung@hdfgroup.org>2022-05-06 23:26:48 (GMT)
committerGitHub <noreply@github.com>2022-05-06 23:26:48 (GMT)
commit779ab44aa03aa351f01bddbfc4a565aebdcc15ae (patch)
treee92d760f5517d171c0689195910bfbc27d3a1786 /config/gnu-warnings
parentca737ece9acd8168d9df4a08c9907a294053a883 (diff)
downloadhdf5-779ab44aa03aa351f01bddbfc4a565aebdcc15ae.zip
hdf5-779ab44aa03aa351f01bddbfc4a565aebdcc15ae.tar.gz
hdf5-779ab44aa03aa351f01bddbfc4a565aebdcc15ae.tar.bz2
Re-promote some GNU warnings to errors (#1508)
* Promote some GCC warnings back to errors and deal with build breakage. I tested configuring and building with GCC 8.3.0 with `.../configure --prefix=$HOME/wrk/install/manydsets --enable-build-mode=production --enable-symbols=-gdwarf-4 --enable-warnings-as-errors --enable-java --enable-hl --enable-fortran --enable-cxx --enable-mirror-vfd --enable-ros3-vfd --enable-direct-vfd` and with the same options but `--enable-build-mode=debug`. * Promote -Wrestrict to -Werror=restrict to help catch overlapping arguments to strcpy, memcpy, et cetera, at compile time. * NFCI: sort lines. * Committing clang-format changes * NFCI: remove whitespace at EOL. * Re-use temporary variable `shared`. * Remove merge oopsie. * Mention that no op codes are understood per review comment. * Change this back to the develop branch's way, since this change isn't integral to the PR. * Committing clang-format changes * NFCI: reduce differences with `develop` branch in the hope that that also kicks off CI. Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Dana Robinson <43805+derobins@users.noreply.github.com>
Diffstat (limited to 'config/gnu-warnings')
-rw-r--r--config/gnu-warnings/71
-rw-r--r--config/gnu-warnings/error-71
-rw-r--r--config/gnu-warnings/error-815
-rw-r--r--config/gnu-warnings/error-general38
4 files changed, 7 insertions, 48 deletions
diff --git a/config/gnu-warnings/7 b/config/gnu-warnings/7
index 9d5b44d..cb8834a 100644
--- a/config/gnu-warnings/7
+++ b/config/gnu-warnings/7
@@ -3,4 +3,3 @@
-Wduplicated-branches
-Wformat-overflow=2
-Wformat-truncation=1
--Wrestrict
diff --git a/config/gnu-warnings/error-7 b/config/gnu-warnings/error-7
new file mode 100644
index 0000000..8eb9fe4
--- /dev/null
+++ b/config/gnu-warnings/error-7
@@ -0,0 +1 @@
+-Werror=restrict
diff --git a/config/gnu-warnings/error-8 b/config/gnu-warnings/error-8
index cbb25f6..36c1414 100644
--- a/config/gnu-warnings/error-8
+++ b/config/gnu-warnings/error-8
@@ -6,17 +6,4 @@
# in order to detect initializations that occur there. It's possible
# that GCC 8 only performs that analysis at -O3, though.
#
-#
-# NOTE: File Driver files are not compatible with these warnings as errors
-# H5FDlog.c,
-# -Werror=maybe-uninitialized
--Wmaybe-uninitialized
-# NOTE: src/ files are not compatible with these warnings as errors
-# src/H5Shyper.c,src/H5SL.c,src/H5Shyper.c
-# -Werror=maybe-uninitialized
-# NOTE: Test files are not compatible with these warnings as errors
-# test/cache_common.c,
-# -Werror=maybe-uninitialized
-# NOTE: hl/src/ files are not compatible with these warnings as errors
-# hl/src/H5DS.c,
-# -Werror=maybe-uninitialized
+-Werror=maybe-uninitialized
diff --git a/config/gnu-warnings/error-general b/config/gnu-warnings/error-general
index a66d284..73d1dd5 100644
--- a/config/gnu-warnings/error-general
+++ b/config/gnu-warnings/error-general
@@ -3,7 +3,10 @@
# circumstances, so ask the compiler to treat them as errors:
#
-Werror=bad-function-cast
+-Werror=cast-align
+-Werror=format
-Werror=implicit-function-declaration
+-Werror=int-to-pointer-cast
-Werror=missing-declarations
-Werror=missing-prototypes
-Werror=nested-externs
@@ -11,10 +14,11 @@
-Werror=packed
-Werror=pointer-sign
-Werror=pointer-to-int-cast
--Werror=int-to-pointer-cast
-Werror=redundant-decls
-Werror=strict-prototypes
-Werror=switch
+-Werror=unused-but-set-variable
+-Werror=unused-variable
#
#-Werror=discarded-qualifiers
#
@@ -25,43 +29,11 @@
#
-Wunused-function
#
-# H5FDdrvr_module.h
-# -Werror=unused-variable
-#
--Wunused-variable
-#
# H5VLpassthru.c
# -Werror=unused-parameter
#
-Wunused-parameter
#
-#
-#
-# NOTE: Tools files are not compatible with these warnings as errors
-# lib/h5tools.c
-# -Werror=cast-align
-#
--Wcast-align
-#
-# lib/h5diff_array.c
-# -Werror=unused-but-set-variable
-#
--Wunused-but-set-variable
-#
-# lib/h5tools_utils.c
-# -Werror=unused-parameter
-#
-#
-# NOTE: JNI files are not compatible with these warnings as errors
-# jni/h5pDCPLImp.c,jni/nativeData.c,jni/h5util.c,jni/h5rImp.c
-# jni/h5sImp.c,jni/h5tImp.c
-# -Werror=cast-align
-# jni/h5util.c
-# -Werror=format(-overflow)
-#
--Werror=format
-#
-#
#Examples and tests do not use the same set of extensive warning flags as libraries
# Here is a list of tests and examples that have issues with the stricter warnings as error
#