diff -r e1b950c65cb4 -r 837f303aceeb epoc32/include/stdapis/boost/mpl/aux_/fold_impl.hpp
--- a/epoc32/include/stdapis/boost/mpl/aux_/fold_impl.hpp	Wed Mar 31 12:27:01 2010 +0100
+++ b/epoc32/include/stdapis/boost/mpl/aux_/fold_impl.hpp	Wed Mar 31 12:33:34 2010 +0100
@@ -1,3 +1,6 @@
+
+#ifndef BOOST_MPL_AUX_FOLD_IMPL_HPP_INCLUDED
+#define BOOST_MPL_AUX_FOLD_IMPL_HPP_INCLUDED
 
 // Copyright Aleksey Gurtovoy 2000-2004
 //
@@ -5,176 +8,36 @@
 // (See accompanying file LICENSE_1_0.txt or copy at 
 // http://www.boost.org/LICENSE_1_0.txt)
 //
+// See http://www.boost.org/libs/mpl for documentation.
 
-// Preprocessed version of "boost/mpl/aux_/fold_impl.hpp" header
-// -- DO NOT modify by hand!
+// $Source: /cvsroot/boost/boost/boost/mpl/aux_/fold_impl.hpp,v $
+// $Date: 2004/09/02 15:40:43 $
+// $Revision: 1.6 $
 
-namespace boost { namespace mpl { namespace aux {
+#if !defined(BOOST_MPL_PREPROCESSING_MODE)
+#   include <boost/mpl/next_prior.hpp>
+#   include <boost/mpl/apply.hpp>
+#   include <boost/mpl/deref.hpp>
+#   include <boost/mpl/aux_/config/ctps.hpp>
+#   if defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION)
+#       include <boost/mpl/if.hpp>
+#       include <boost/type_traits/is_same.hpp>
+#   endif
+#endif
 
-/// forward declaration
+#include <boost/mpl/aux_/config/use_preprocessed.hpp>
 
-template<
-      int N
-    , typename First
-    , typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl;
+#if !defined(BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS) \
+    && !defined(BOOST_MPL_PREPROCESSING_MODE)
 
-template<
-      typename First
-    , typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl< 0,First,Last,State,ForwardOp >
-{
-    typedef First iter0;
-    typedef State state0;
-    typedef state0 state;
-    typedef iter0 iterator;
-};
+#   define BOOST_MPL_PREPROCESSED_HEADER fold_impl.hpp
+#   include <boost/mpl/aux_/include_preprocessed.hpp>
 
-template<
-      typename First
-    , typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl< 1,First,Last,State,ForwardOp >
-{
-    typedef First iter0;
-    typedef State state0;
-    typedef typename apply2< ForwardOp, state0, typename deref<iter0>::type >::type state1;
-    typedef typename mpl::next<iter0>::type iter1;
-    
+#else
 
-    typedef state1 state;
-    typedef iter1 iterator;
-};
+#   define AUX778076_FOLD_IMPL_OP(iter) typename deref<iter>::type
+#   define AUX778076_FOLD_IMPL_NAME_PREFIX fold
+#   include <boost/mpl/aux_/fold_impl_body.hpp>
 
-template<
-      typename First
-    , typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl< 2,First,Last,State,ForwardOp >
-{
-    typedef First iter0;
-    typedef State state0;
-    typedef typename apply2< ForwardOp, state0, typename deref<iter0>::type >::type state1;
-    typedef typename mpl::next<iter0>::type iter1;
-    typedef typename apply2< ForwardOp, state1, typename deref<iter1>::type >::type state2;
-    typedef typename mpl::next<iter1>::type iter2;
-    
-
-    typedef state2 state;
-    typedef iter2 iterator;
-};
-
-template<
-      typename First
-    , typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl< 3,First,Last,State,ForwardOp >
-{
-    typedef First iter0;
-    typedef State state0;
-    typedef typename apply2< ForwardOp, state0, typename deref<iter0>::type >::type state1;
-    typedef typename mpl::next<iter0>::type iter1;
-    typedef typename apply2< ForwardOp, state1, typename deref<iter1>::type >::type state2;
-    typedef typename mpl::next<iter1>::type iter2;
-    typedef typename apply2< ForwardOp, state2, typename deref<iter2>::type >::type state3;
-    typedef typename mpl::next<iter2>::type iter3;
-    
-
-    typedef state3 state;
-    typedef iter3 iterator;
-};
-
-template<
-      typename First
-    , typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl< 4,First,Last,State,ForwardOp >
-{
-    typedef First iter0;
-    typedef State state0;
-    typedef typename apply2< ForwardOp, state0, typename deref<iter0>::type >::type state1;
-    typedef typename mpl::next<iter0>::type iter1;
-    typedef typename apply2< ForwardOp, state1, typename deref<iter1>::type >::type state2;
-    typedef typename mpl::next<iter1>::type iter2;
-    typedef typename apply2< ForwardOp, state2, typename deref<iter2>::type >::type state3;
-    typedef typename mpl::next<iter2>::type iter3;
-    typedef typename apply2< ForwardOp, state3, typename deref<iter3>::type >::type state4;
-    typedef typename mpl::next<iter3>::type iter4;
-    
-
-    typedef state4 state;
-    typedef iter4 iterator;
-};
-
-template<
-      int N
-    , typename First
-    , typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl
-{
-    typedef fold_impl<
-          4
-        , First
-        , Last
-        , State
-        , ForwardOp
-        > chunk_;
-
-    typedef fold_impl<
-          ( (N - 4) < 0 ? 0 : N - 4 )
-        , typename chunk_::iterator
-        , Last
-        , typename chunk_::state
-        , ForwardOp
-        > res_;
-
-    typedef typename res_::state state;
-    typedef typename res_::iterator iterator;
-};
-
-template<
-      typename First
-    , typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl< -1,First,Last,State,ForwardOp >
-    : fold_impl<
-          -1
-        , typename mpl::next<First>::type
-        , Last
-        , typename apply2<ForwardOp,State, typename deref<First>::type>::type
-        , ForwardOp
-        >
-{
-};
-
-template<
-      typename Last
-    , typename State
-    , typename ForwardOp
-    >
-struct fold_impl< -1,Last,Last,State,ForwardOp >
-{
-    typedef State state;
-    typedef Last iterator;
-};
-
-}}}
+#endif // BOOST_MPL_CFG_NO_PREPROCESSED_HEADERS
+#endif // BOOST_MPL_AUX_FOLD_IMPL_HPP_INCLUDED