From b731c96679247a5dec9b2ed1470cc6c4feea2d1c Mon Sep 17 00:00:00 2001 From: Ben Noordhuis Date: Tue, 3 Jul 2012 15:19:08 +0200 Subject: [PATCH] build: disable -fstrict-aliasing for any gcc < 4.6.0 It has been conclusively demonstrated that the -fstrict-aliasing bugs in gcc's optimizer are not limited to the 4.5.x releases only. Fixes #3601 among others. --- configure | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/configure b/configure index 810d42309b2..4ad4e482435 100755 --- a/configure +++ b/configure @@ -287,12 +287,9 @@ def configure_node(o): # turn off strict aliasing if gcc < 4.6.0 unless it's llvm-gcc # see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45883 # see http://code.google.com/p/v8/issues/detail?id=884 - o['variables']['strict_aliasing'] = b(is_clang or cc_version >= (4,6,0)) - - # disable strict aliasing in V8 if we're compiling with gcc 4.5.x, - # it makes V8 crash in various ways - o['variables']['v8_no_strict_aliasing'] = b( - not is_clang and (4,5,0) <= cc_version < (4,6,0)) + strict_aliasing = is_clang or cc_version >= (4,6,0) + o['variables']['strict_aliasing'] = b(strict_aliasing) + o['variables']['v8_no_strict_aliasing'] = b(not strict_aliasing) # clang has always supported -fvisibility=hidden, right? if not is_clang and cc_version < (4,0,0):