diff options
| author | Mark Wielaard <[email protected]> | 2016-02-13 19:10:00 +0100 |
|---|---|---|
| committer | Mark Wielaard <[email protected]> | 2016-02-22 12:09:26 +0100 |
| commit | 6993d408fac1ff9aa23281cb6ab010920f7d624c (patch) | |
| tree | fa835556c4878910792f5b1abc9684152f808df6 | |
| parent | c3aa57416566c97888abbc5c2ef4631c8c9e16f0 (diff) | |
config: Check for and use gcc -Wnull-dereference.
-Wnull-dereference is new in GCC6
Signed-off-by: Mark Wielaard <[email protected]>
| -rw-r--r-- | ChangeLog | 4 | ||||
| -rw-r--r-- | config/ChangeLog | 5 | ||||
| -rw-r--r-- | config/eu.am | 7 | ||||
| -rw-r--r-- | configure.ac | 10 |
4 files changed, 26 insertions, 0 deletions
@@ -1,3 +1,7 @@ +2016-02-13 Mark Wielaard <[email protected]> + + * configure.ac: Add check for whether gcc accepts -Wnull-dereference. + 2016-02-08 Mark Wielaard <[email protected]> * configure.ac: Add checks for sane -Wlogical-op and whether gcc diff --git a/config/ChangeLog b/config/ChangeLog index 8523cb31..494778a4 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -1,3 +1,8 @@ +2016-02-13 Mark Wielaard <[email protected]> + + * eu.am: Check HAVE_NULL_DEREFERENCE_WARNING. + (AM_CFLAGS): Add NULL_DEREFERENCE_WARNING. + 2016-02-09 Mark Wielaard <[email protected]> * eu.am: Check SANE_LOGICAL_OP_WARNING and diff --git a/config/eu.am b/config/eu.am index c4e9279a..4998771d 100644 --- a/config/eu.am +++ b/config/eu.am @@ -55,9 +55,16 @@ else DUPLICATED_COND_WARNING= endif +if HAVE_NULL_DEREFERENCE_WARNING +NULL_DEREFERENCE_WARNING=-Wnull-dereference +else +NULL_DEREFERENCE_WARNING= +endif + AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ -Wold-style-definition -Wstrict-prototypes \ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ + $(NULL_DEREFERENCE_WARNING) \ $(if $($(*F)_no_Werror),,-Werror) \ $(if $($(*F)_no_Wunused),,-Wunused -Wextra) \ $(if $($(*F)_no_Wstack_usage),,$(STACK_USAGE_WARNING)) \ diff --git a/configure.ac b/configure.ac index d447db7e..df58b5b9 100644 --- a/configure.ac +++ b/configure.ac @@ -313,6 +313,16 @@ CFLAGS="$old_CFLAGS"]) AM_CONDITIONAL(HAVE_DUPLICATED_COND_WARNING, [test "x$ac_cv_duplicated_cond" != "xno"]) +# -Wnull-dereference was added by GCC6 +AC_CACHE_CHECK([whether gcc accepts -Wnull-dereference], ac_cv_null_dereference, [dnl +old_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS -Wnull-dereference" +AC_COMPILE_IFELSE([AC_LANG_SOURCE([])], + ac_cv_null_dereference=yes, ac_cv_null_dereference=no) +CFLAGS="$old_CFLAGS"]) +AM_CONDITIONAL(HAVE_NULL_DEREFERENCE_WARNING, + [test "x$ac_cv_null_dereference" != "xno"]) + dnl Check if we have argp available from our libc AC_LINK_IFELSE( [AC_LANG_PROGRAM( |
