test that the compiler support -Werror=statement-after-declaration before using it

This commit is contained in:
Benjamin Peterson 2013-05-20 08:22:04 -07:00
parent 63f72908a1
commit cc00e01fad
2 changed files with 65 additions and 4 deletions

45
configure vendored
View file

@ -6264,8 +6264,6 @@ UNIVERSAL_ARCH_FLAGS=
# tweak BASECFLAGS based on compiler and platform
case $GCC in
yes)
BASECFLAGS="$BASECFLAGS -Werror=declaration-after-statement"
# Python doesn't violate C99 aliasing rules, but older versions of
# GCC produce warnings for legal Python code. Enable
# -fno-strict-aliasing on versions of GCC that support but produce
@ -6379,6 +6377,49 @@ $as_echo "$ac_cv_disable_unused_result_warning" >&6; }
BASECFLAGS="$BASECFLAGS -Wno-unused-result"
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for -Werror=declaration-after-statement" >&5
$as_echo_n "checking for -Werror=declaration-after-statement... " >&6; }
ac_save_cc="$CC"
CC="$CC -Werror=declaration-after-statement"
save_CFLAGS="$CFLAGS"
if ${ac_cv_declaration_after_statement_warning+:} false; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
int
main ()
{
;
return 0;
}
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
ac_cv_declaration_after_statement_warning=yes
else
ac_cv_declaration_after_statement_warning=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
CFLAGS="$save_CFLAGS"
CC="$ac_save_cc"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_declaration_after_statement_warning" >&5
$as_echo "$ac_cv_declaration_after_statement_warning" >&6; }
if test $ac_cv_declaration_after_statement_warning = yes
then
BASECFLAGS="$BASECFLAGS -Werror=declaration-after-statement"
fi
# if using gcc on alpha, use -mieee to get (near) full IEEE 754
# support. Without this, treatment of subnormals doesn't follow
# the standard.