Issue #24324: Do not enable unreachable code warnings when using

gcc as the option does not work correctly in older versions of gcc
and has been silently removed as of gcc-4.5.
This commit is contained in:
Ned Deily 2016-03-08 00:28:37 -05:00
parent adbf8cecbe
commit bec699e40d
4 changed files with 29 additions and 7 deletions

View File

@ -310,6 +310,10 @@ Build
- Issue #25136: Support Apple Xcode 7's new textual SDK stub libraries. - Issue #25136: Support Apple Xcode 7's new textual SDK stub libraries.
- Issue #24324: Do not enable unreachable code warnings when using
gcc as the option does not work correctly in older versions of gcc
and has been silently removed as of gcc-4.5.
Windows Windows
------- -------

4
aclocal.m4 vendored
View File

@ -1,6 +1,6 @@
# generated automatically by aclocal 1.14.1 -*- Autoconf -*- # generated automatically by aclocal 1.15 -*- Autoconf -*-
# Copyright (C) 1996-2013 Free Software Foundation, Inc. # Copyright (C) 1996-2014 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation # This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it, # gives unlimited permission to copy and/or distribute it,

15
configure vendored
View File

@ -6963,15 +6963,24 @@ fi
CFLAGS="$save_CFLAGS" CFLAGS="$save_CFLAGS"
CC="$ac_save_cc" CC="$ac_save_cc"
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_unreachable_code_warning" >&5
$as_echo "$ac_cv_enable_unreachable_code_warning" >&6; }
# Don't enable unreachable code warning in debug mode, since it usually # Don't enable unreachable code warning in debug mode, since it usually
# results in non-standard code paths. # results in non-standard code paths.
if test $ac_cv_enable_unreachable_code_warning = yes && test "$Py_DEBUG" != "true" # Issue #24324: Unfortunately, the unreachable code warning does not work
# correctly on gcc and has been silently removed from the compiler.
# It is supported on clang but on OS X systems gcc may be an alias
# for clang. Try to determine if the compiler is not really gcc and,
# if so, only then enable the warning.
if test $ac_cv_enable_unreachable_code_warning = yes && \
test "$Py_DEBUG" != "true" && \
test -z "`$CC --version 2>/dev/null | grep 'Free Software Foundation'`"
then then
BASECFLAGS="$BASECFLAGS -Wunreachable-code" BASECFLAGS="$BASECFLAGS -Wunreachable-code"
else
ac_cv_enable_unreachable_code_warning=no
fi fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_enable_unreachable_code_warning" >&5
$as_echo "$ac_cv_enable_unreachable_code_warning" >&6; }
# if using gcc on alpha, use -mieee to get (near) full IEEE 754 # if using gcc on alpha, use -mieee to get (near) full IEEE 754
# support. Without this, treatment of subnormals doesn't follow # support. Without this, treatment of subnormals doesn't follow

View File

@ -1483,14 +1483,23 @@ yes)
])) ]))
CFLAGS="$save_CFLAGS" CFLAGS="$save_CFLAGS"
CC="$ac_save_cc" CC="$ac_save_cc"
AC_MSG_RESULT($ac_cv_enable_unreachable_code_warning)
# Don't enable unreachable code warning in debug mode, since it usually # Don't enable unreachable code warning in debug mode, since it usually
# results in non-standard code paths. # results in non-standard code paths.
if test $ac_cv_enable_unreachable_code_warning = yes && test "$Py_DEBUG" != "true" # Issue #24324: Unfortunately, the unreachable code warning does not work
# correctly on gcc and has been silently removed from the compiler.
# It is supported on clang but on OS X systems gcc may be an alias
# for clang. Try to determine if the compiler is not really gcc and,
# if so, only then enable the warning.
if test $ac_cv_enable_unreachable_code_warning = yes && \
test "$Py_DEBUG" != "true" && \
test -z "`$CC --version 2>/dev/null | grep 'Free Software Foundation'`"
then then
BASECFLAGS="$BASECFLAGS -Wunreachable-code" BASECFLAGS="$BASECFLAGS -Wunreachable-code"
else
ac_cv_enable_unreachable_code_warning=no
fi fi
AC_MSG_RESULT($ac_cv_enable_unreachable_code_warning)
# if using gcc on alpha, use -mieee to get (near) full IEEE 754 # if using gcc on alpha, use -mieee to get (near) full IEEE 754
# support. Without this, treatment of subnormals doesn't follow # support. Without this, treatment of subnormals doesn't follow