summaryrefslogtreecommitdiffstats
path: root/config/clang-warnings
diff options
context:
space:
mode:
authorLarry Knox <lrknox@hdfgroup.org>2020-06-02 20:53:58 (GMT)
committerLarry Knox <lrknox@hdfgroup.org>2020-06-02 20:53:58 (GMT)
commitf7bc306c19a3bd8f9a31a78d81a7bb5160bbbaf8 (patch)
tree9d65d1c99634e6bdd9cdcc969f96a12127b7ed6f /config/clang-warnings
parent0b9979f0752caf7283a0bc367d3bcd4d0b151480 (diff)
downloadhdf5-f7bc306c19a3bd8f9a31a78d81a7bb5160bbbaf8.zip
hdf5-f7bc306c19a3bd8f9a31a78d81a7bb5160bbbaf8.tar.gz
hdf5-f7bc306c19a3bd8f9a31a78d81a7bb5160bbbaf8.tar.bz2
Add files for adding warning flags for clang compilers in autotools
configure.
Diffstat (limited to 'config/clang-warnings')
-rw-r--r--config/clang-warnings/cxx-error-general32
-rw-r--r--config/clang-warnings/cxx-general31
-rw-r--r--config/clang-warnings/no-developer-general2
3 files changed, 64 insertions, 1 deletions
diff --git a/config/clang-warnings/cxx-error-general b/config/clang-warnings/cxx-error-general
new file mode 100644
index 0000000..85cd9a3
--- /dev/null
+++ b/config/clang-warnings/cxx-error-general
@@ -0,0 +1,32 @@
+#
+# HDF5 code should not trigger the following warnings under any
+# circumstances, so ask the compiler to treat them as errors:
+#
+# NOTE: c++/test files are not compatible with these warnings as errors
+# c++/test/tcompound.cpp
+# -Werror=cast-align
+-Wcast-align
+# NOTE: c++/src files are not compatible with these warnings as errors
+# c++/src/H5Object.cpp
+# -Werror=missing-declarations
+-Wmissing-declarations
+-Werror=packed
+-Werror=redundant-decls
+-Werror=switch
+# NOTE: c++/test files are not compatible with these warnings as errors
+# c++/test/tattr.cpp
+# -Werror=unused-but-set-variable
+-Wunused-but-set-variable
+-Werror=unused-function
+-Werror=unused-variable
+# NOTE: c++/src files are not compatible with these warnings as errors
+# c++/src/H5Object.cpp,c++/src/H5StrType.cpp,c++/src/H5PredType.cpp
+# -Werror=unused-parameter
+-Wunused-parameter
+#
+# Other files not compatible
+# NOTE: c++/test files are not compatible with these warnings as errors
+# c++/test/titerate.cpp,c++/test/tarray.cpp
+# -Werror=missing-declarations
+# c++/test/titerate.cpp,c++/test/tarray.cpp,c++/test/tlinks.cpp,c++/test/ttypes.cpp,c++/test/dsets.cpp
+# -Werror=unused-parameter
diff --git a/config/clang-warnings/cxx-general b/config/clang-warnings/cxx-general
new file mode 100644
index 0000000..9548cc0
--- /dev/null
+++ b/config/clang-warnings/cxx-general
@@ -0,0 +1,31 @@
+# Note that some of the flags listed here really should be developer
+# flags (listed in separate files, gnu-warnings-developer*) but we put
+# them here because they are not raised by the current code and we'd like to
+# know if they do start showing up.
+#
+# NOTE: Don't add -Wpadded here since we can't/won't fix the (many)
+# warnings that are emitted. If you need it, add it from the
+# environment variable at configure time.
+-Wall
+-Wcast-qual
+-Wconversion
+-Wctor-dtor-privacy
+-Weffc++
+-Wextra
+-Wfloat-equal
+-Wformat=2
+-Winit-self
+-Winvalid-pch
+-Wmissing-include-dirs
+-Wno-format-nonliteral
+-Wnon-virtual-dtor
+-Wold-style-cast
+-Woverloaded-virtual
+-Wreorder
+-Wshadow
+-Wsign-promo
+##-Wunreachable-code
+-Wundef
+##-Wvariadic-macros
+-Wwrite-strings
+-pedantic
diff --git a/config/clang-warnings/no-developer-general b/config/clang-warnings/no-developer-general
index 2f4e0c5..2bf1703 100644
--- a/config/clang-warnings/no-developer-general
+++ b/config/clang-warnings/no-developer-general
@@ -1 +1 @@
--Wmissing-noreturn
+-Wno-missing-noreturn