|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r51863 - trunk/boost/xpressive/detail/core
From: eric_at_[hidden]
Date: 2009-03-19 23:51:43
Author: eric_niebler
Date: 2009-03-19 23:51:43 EDT (Thu, 19 Mar 2009)
New Revision: 51863
URL: http://svn.boost.org/trac/boost/changeset/51863
Log:
work around gcc optimizer bug fixes #2655
Text files modified:
trunk/boost/xpressive/detail/core/adaptor.hpp | 6 ++++++
1 files changed, 6 insertions(+), 0 deletions(-)
Modified: trunk/boost/xpressive/detail/core/adaptor.hpp
==============================================================================
--- trunk/boost/xpressive/detail/core/adaptor.hpp (original)
+++ trunk/boost/xpressive/detail/core/adaptor.hpp 2009-03-19 23:51:43 EDT (Thu, 19 Mar 2009)
@@ -37,6 +37,12 @@
Xpr xpr_;
xpression_adaptor(Xpr const &xpr)
+ #if BOOST_WORKAROUND(__GNUC__, BOOST_TESTED_AT(4)) \
+ && ((__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ >= 1)))
+ // Ugh, gcc has an optimizer bug which elides this c'tor call
+ // resulting in pure virtual function calls.
+ __attribute__((noinline))
+ #endif
: xpr_(xpr)
{
}
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk