From d7c3cd215f25380cd5db1e93ac549bbb441c60c5 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Tue, 11 Sep 2018 02:01:31 +0300 Subject: Add -Wvla flag into configure. This flag prevent usage of variable length arrays. --- configure | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++- configure.ac | 1 + 2 files changed, 51 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 4f85787af..7296be978 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.ac 8f7af789e. +# From configure.ac 150dff284. # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.69. # @@ -7585,6 +7585,55 @@ rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -Wvla" >&5 +$as_echo_n "checking whether $CC supports -Wvla... " >&6; } + OLD_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS -Werror -Wvla" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int foo; +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + CFLAGS="$OLD_CFLAGS -Wvla" + # Optionally, run a test + if test "x" != "x"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC can actually use -Wvla" >&5 +$as_echo_n "checking whether $CC can actually use -Wvla... " >&6; } + CFLAGS="$OLD_CFLAGS -Werror -Wvla" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + CFLAGS="$OLD_CFLAGS" + + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + CFLAGS="$OLD_CFLAGS -Wvla" + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + +else + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + CFLAGS="$OLD_CFLAGS" + + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC supports -Wno-format-nonliteral" >&5 $as_echo_n "checking whether $CC supports -Wno-format-nonliteral... " >&6; } OLD_CFLAGS="$CFLAGS" diff --git a/configure.ac b/configure.ac index 4d5f4bcfd..2aad9d7e7 100644 --- a/configure.ac +++ b/configure.ac @@ -1085,6 +1085,7 @@ AC_CHECK_COMPILER_WFLAG(redundant-decls) AC_CHECK_COMPILER_WFLAG(cast-qual) AC_CHECK_COMPILER_WFLAG(misleading-indentation) AC_CHECK_COMPILER_WFLAG(null-dereference) +AC_CHECK_COMPILER_WFLAG(vla) AC_CHECK_COMPILER_WNOFLAG(format-nonliteral) AC_CHECK_COMPILER_WNOFLAG(switch) AC_CHECK_COMPILER_WNOFLAG(missing-field-initializers) -- cgit v1.2.3-60-g2f50