Subject: [Boost-bugs] [Boost C++ Libraries] #2290: Patch for GCC-4.0.1 compatibility (and better compile time).
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2008-09-05 19:41:26
#2290: Patch for GCC-4.0.1 compatibility (and better compile time).
--------------------------+-------------------------------------------------
Reporter: dave | Owner: ramey
Type: Patches | Status: new
Milestone: Boost 1.37.0 | Component: serialization
Version: Boost 1.35.0 | Severity: Problem
Keywords: workaround |
--------------------------+-------------------------------------------------
This patch makes the tests build on GCC-4.0.1 and leaves out what
I believe to be the unnecessary step of checking whether a metafunction
class is actually a placeholder expression. If I'm understanding
correcetly,
it will always be a metafunction class, and not just in the tested
examples.
Note that this patch is against 1.35.x; I know things have been shuffled
for
1.36 but I assume the same transformation can be applied elsewhere.
{{{
#!diff
Index: boost/archive/array/iarchive.hpp
===================================================================
--- boost/archive/array/iarchive.hpp (revision 3118)
+++ boost/archive/array/iarchive.hpp (working copy)
@@ -108,7 +108,7 @@
template<class ValueType>
void load_override(serialization::array<ValueType> const& x, unsigned
int version)
{
- typedef typename mpl::apply1<
+ typedef typename mpl::apply_wrap1<
BOOST_DEDUCED_TYPENAME Archive::use_array_optimization
, ValueType
>::type use_optimized;
Index: boost/archive/array/oarchive.hpp
===================================================================
--- boost/archive/array/oarchive.hpp (revision 3118)
+++ boost/archive/array/oarchive.hpp (working copy)
@@ -107,7 +107,7 @@
template<class ValueType>
void save_override(serialization::array<ValueType> const& x, unsigned
int version)
{
- typedef typename mpl::apply1<
+ typedef typename mpl::apply_wrap1<
BOOST_DEDUCED_TYPENAME Archive::use_array_optimization
, BOOST_DEDUCED_TYPENAME remove_const<ValueType>::type
>::type use_optimized;
}}}
-- Ticket URL: <http://svn.boost.org/trac/boost/ticket/2290> Boost C++ Libraries <http://www.boost.org/> Boost provides free peer-reviewed portable C++ source libraries.
This archive was generated by hypermail 2.1.7 : 2017-02-16 18:49:58 UTC