From: Guido van Rossum Date: Thu, 13 Dec 2007 20:50:10 +0000 (+0000) Subject: Patch #1608. Someone with access to autoconf 2.61 or higher needs to X-Git-Tag: v2.6a1~876 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=7c862f8077e75bc841cbf1628c70f465831f2377;p=python Patch #1608. Someone with access to autoconf 2.61 or higher needs to run it and check in the resulting configure file. --- diff --git a/Misc/ACKS b/Misc/ACKS index 65ee9e7a70..3b968dde8c 100644 --- a/Misc/ACKS +++ b/Misc/ACKS @@ -167,6 +167,7 @@ Yves Dionne Daniel Dittmar Walter Dörwald Jaromir Dolecek +Ismail Donmez Dima Dorfman Cesar Douady Dean Draayer diff --git a/Misc/NEWS b/Misc/NEWS index 7dae508ec2..0d420d0e38 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -1123,6 +1123,10 @@ Tools/Demos Build ----- +- Bug #1608: use -fwrapv when GCC supports it. This is important, + newer GCC versions may optimize away overflow buffer overflow checks + without this option! + - Patch #1418: Make the AC_REPLACE_FUNCS object files actually work. - Add a FAST_LOOPS build option that speeds-up looping by trading away diff --git a/configure.in b/configure.in index b0313e2472..496495483e 100644 --- a/configure.in +++ b/configure.in @@ -757,6 +757,10 @@ then if test "$CC" != 'g++' ; then STRICT_PROTO="-Wstrict-prototypes" fi + # For gcc 4.x we need to use -fwrapv so lets check if its supported + if "$CC" -v --help 2>/dev/null |grep -- -fwrapv > /dev/null; then + WRAP="-fwrapv" + fi case $ac_cv_prog_cc_g in yes) if test "$Py_DEBUG" = 'true' ; then @@ -764,7 +768,7 @@ then # debug builds. OPT="-g -Wall $STRICT_PROTO" else - OPT="-g -O3 -Wall $STRICT_PROTO" + OPT="-g $WRAP -O3 -Wall $STRICT_PROTO" fi ;; *)