[evolution-exchange] Disable strict aliasing optimization.



commit a9847cc50f0a640ceecdecc2d9745b88910faa52
Author: Matthew Barnes <mbarnes redhat com>
Date:   Tue Feb 2 12:25:42 2010 -0500

    Disable strict aliasing optimization.

 configure.ac |   12 ++++++++----
 1 files changed, 8 insertions(+), 4 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 532779c..8c244fe 100644
--- a/configure.ac
+++ b/configure.ac
@@ -61,10 +61,14 @@ dnl	-Wformat-nonliteral
 dnl	-Wmissing-format-attribute
 dnl	-Wshadow
 
-dnl ***************
-dnl Set AM_CPPFLAGS
-dnl ***************
-AM_CPPFLAGS="$WARNING_FLAGS"
+dnl GCC 4.4 got more aggressive in it's aliasing optimizations, changing
+dnl behavior that -- according to the C99 standard -- is supposed to be
+dnl undefined.  We may still have aliasing abuses lying around that rely
+dnl on GCC's previous "undefined" behavior but are hidden by type casts,
+dnl so disable the strict-aliasing optimzation until GCC (or even LLVM)
+dnl learns how to detect them and warn us about it.
+dnl XXX This really belongs in AM_CFLAGS.
+AM_CPPFLAGS="$WARNING_FLAGS -fno-strict-aliasing"
 AC_SUBST(AM_CPPFLAGS)
 
 dnl **************************



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]