Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r62854 - in trunk: boost/fusion/adapted/boost_tuple boost/fusion/adapted/class/detail boost/fusion/adapted/mpl boost/fusion/adapted/struct/detail boost/fusion/algorithm/query/detail boost/fusion/algorithm/transformation boost/fusion/container/deque boost/fusion/container/list boost/fusion/container/vector boost/fusion/functional/adapter boost/fusion/functional/invocation boost/fusion/iterator/mpl boost/fusion/sequence/comparison boost/fusion/support boost/fusion/view/filter_view boost/fusion/view/iterator_range boost/fusion/view/joint_view boost/fusion/view/nview/detail boost/fusion/view/repetitive_view boost/fusion/view/reverse_view boost/fusion/view/single_view boost/fusion/view/transform_view boost/fusion/view/zip_view/detail libs/fusion/test/algorithm libs/fusion/test/sequence
From: steven_at_[hidden]
Date: 2010-06-12 11:58:37


Author: steven_watanabe
Date: 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
New Revision: 62854
URL: http://svn.boost.org/trac/boost/changeset/62854

Log:
Clean up MSVC build. Fixes #1619. Fixes #3074.
Text files modified:
   trunk/boost/fusion/adapted/boost_tuple/boost_tuple_iterator.hpp | 4 ++++
   trunk/boost/fusion/adapted/class/detail/adapt_base.hpp | 3 +++
   trunk/boost/fusion/adapted/mpl/mpl_iterator.hpp | 2 +-
   trunk/boost/fusion/adapted/struct/detail/proxy_type.hpp | 3 +++
   trunk/boost/fusion/algorithm/query/detail/all.hpp | 2 +-
   trunk/boost/fusion/algorithm/query/detail/count.hpp | 10 ++++++++++
   trunk/boost/fusion/algorithm/transformation/clear.hpp | 2 +-
   trunk/boost/fusion/container/deque/deque.hpp | 2 +-
   trunk/boost/fusion/container/deque/deque_iterator.hpp | 4 ++++
   trunk/boost/fusion/container/list/cons.hpp | 6 +++---
   trunk/boost/fusion/container/vector/vector.hpp | 4 ++--
   trunk/boost/fusion/container/vector/vector10.hpp | 2 +-
   trunk/boost/fusion/container/vector/vector_iterator.hpp | 13 ++++---------
   trunk/boost/fusion/functional/adapter/fused.hpp | 10 ++++++++++
   trunk/boost/fusion/functional/adapter/fused_function_object.hpp | 10 ++++++++++
   trunk/boost/fusion/functional/adapter/fused_procedure.hpp | 10 ++++++++++
   trunk/boost/fusion/functional/adapter/unfused.hpp | 11 +++++++++++
   trunk/boost/fusion/functional/adapter/unfused_typed.hpp | 9 +++++++++
   trunk/boost/fusion/functional/invocation/invoke.hpp | 29 +++++++++++++++++++++++++++--
   trunk/boost/fusion/functional/invocation/invoke_function_object.hpp | 30 ++++++++++++++++++++++++++++--
   trunk/boost/fusion/functional/invocation/invoke_procedure.hpp | 27 +++++++++++++++++++++++++--
   trunk/boost/fusion/iterator/mpl/convert_iterator.hpp | 2 +-
   trunk/boost/fusion/sequence/comparison/equal_to.hpp | 10 ++++++++++
   trunk/boost/fusion/support/pair.hpp | 10 ++++++++++
   trunk/boost/fusion/view/filter_view/filter_view.hpp | 1 -
   trunk/boost/fusion/view/filter_view/filter_view_iterator.hpp | 4 ++++
   trunk/boost/fusion/view/iterator_range/iterator_range.hpp | 10 ++++++++++
   trunk/boost/fusion/view/joint_view/joint_view.hpp | 2 ++
   trunk/boost/fusion/view/joint_view/joint_view_iterator.hpp | 4 ++++
   trunk/boost/fusion/view/nview/detail/distance_impl.hpp | 2 +-
   trunk/boost/fusion/view/repetitive_view/repetitive_view.hpp | 4 ++++
   trunk/boost/fusion/view/repetitive_view/repetitive_view_iterator.hpp | 4 ++++
   trunk/boost/fusion/view/reverse_view/reverse_view.hpp | 4 ++++
   trunk/boost/fusion/view/reverse_view/reverse_view_iterator.hpp | 4 ++++
   trunk/boost/fusion/view/single_view/single_view.hpp | 10 ++++++++++
   trunk/boost/fusion/view/single_view/single_view_iterator.hpp | 10 ++++++++++
   trunk/boost/fusion/view/transform_view/transform_view.hpp | 4 ++++
   trunk/boost/fusion/view/zip_view/detail/distance_impl.hpp | 2 +-
   trunk/libs/fusion/test/algorithm/fold.cpp | 2 +-
   trunk/libs/fusion/test/sequence/adapt_assoc_class.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_assoc_class_named.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_assoc_struct.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_assoc_struct_named.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_assoc_tpl_class.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_assoc_tpl_struct.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_class.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_class_named.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_struct.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_struct_named.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_tpl_class.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/adapt_tpl_struct.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/cons.cpp | 9 +++++----
   trunk/libs/fusion/test/sequence/define_assoc_struct.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/define_assoc_tpl_struct.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/define_struct.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/define_tpl_struct.cpp | 4 ++--
   trunk/libs/fusion/test/sequence/iterator_range.cpp | 5 +++--
   trunk/libs/fusion/test/sequence/joint_view.cpp | 9 +++++----
   trunk/libs/fusion/test/sequence/map.cpp | 13 +++++++------
   trunk/libs/fusion/test/sequence/misc.hpp | 2 +-
   trunk/libs/fusion/test/sequence/set.cpp | 13 +++++++------
   trunk/libs/fusion/test/sequence/tr1_tuple_auto_conv.cpp | 2 +-
   62 files changed, 313 insertions(+), 86 deletions(-)

Modified: trunk/boost/fusion/adapted/boost_tuple/boost_tuple_iterator.hpp
==============================================================================
--- trunk/boost/fusion/adapted/boost_tuple/boost_tuple_iterator.hpp (original)
+++ trunk/boost/fusion/adapted/boost_tuple/boost_tuple_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -127,6 +127,10 @@
                 return type();
             }
         };
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ boost_tuple_iterator& operator= (boost_tuple_iterator const&);
     };
 
     template <typename Null>

Modified: trunk/boost/fusion/adapted/class/detail/adapt_base.hpp
==============================================================================
--- trunk/boost/fusion/adapted/class/detail/adapt_base.hpp (original)
+++ trunk/boost/fusion/adapted/class/detail/adapt_base.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -63,6 +63,9 @@
         } \
                                                                                 \
         BOOST_FUSION_ADAPT_STRUCT_UNPACK_NAME(NAME_SEQ)& obj; \
+ \
+ private: \
+ class_member_proxy& operator= (class_member_proxy const&); \
     }; \
                                                                                 \
     template< \

Modified: trunk/boost/fusion/adapted/mpl/mpl_iterator.hpp
==============================================================================
--- trunk/boost/fusion/adapted/mpl/mpl_iterator.hpp (original)
+++ trunk/boost/fusion/adapted/mpl/mpl_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -80,7 +80,7 @@
             type;
 
             static type
- call(Iterator const& i)
+ call(Iterator const& /*i*/)
             {
                 return type();
             }

Modified: trunk/boost/fusion/adapted/struct/detail/proxy_type.hpp
==============================================================================
--- trunk/boost/fusion/adapted/struct/detail/proxy_type.hpp (original)
+++ trunk/boost/fusion/adapted/struct/detail/proxy_type.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -23,6 +23,9 @@
         {} \
                                                                                 \
         WRAPPED_TYPE& obj; \
+ \
+ private: \
+ NAME& operator= (NAME const&); \
     }; \
                                                                                 \
     BOOST_FUSION_ADAPT_STRUCT_NAMESPACE_DEFINITION_END(NAMESPACE_SEQ)

Modified: trunk/boost/fusion/algorithm/query/detail/all.hpp
==============================================================================
--- trunk/boost/fusion/algorithm/query/detail/all.hpp (original)
+++ trunk/boost/fusion/algorithm/query/detail/all.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -106,7 +106,7 @@
     struct unrolled_all<0>
     {
         template <typename It, typename F>
- static bool call(It const& it, F f)
+ static bool call(It const& /*it*/, F /*f*/)
         {
             return true;
         }

Modified: trunk/boost/fusion/algorithm/query/detail/count.hpp
==============================================================================
--- trunk/boost/fusion/algorithm/query/detail/count.hpp (original)
+++ trunk/boost/fusion/algorithm/query/detail/count.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -7,10 +7,16 @@
 #if !defined(FUSION_COUNT_09162005_0158)
 #define FUSION_COUNT_09162005_0158
 
+#include <boost/config.hpp>
 #include <boost/mpl/or.hpp>
 #include <boost/type_traits/is_convertible.hpp>
 #include <boost/fusion/support/detail/access.hpp>
 
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
+
 namespace boost { namespace fusion { namespace detail
 {
     template <bool is_convertible>
@@ -64,5 +70,9 @@
     };
 }}}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif
 

Modified: trunk/boost/fusion/algorithm/transformation/clear.hpp
==============================================================================
--- trunk/boost/fusion/algorithm/transformation/clear.hpp (original)
+++ trunk/boost/fusion/algorithm/transformation/clear.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -22,7 +22,7 @@
 
     template <typename Sequence>
     inline typename result_of::clear<Sequence const>::type
- clear(Sequence const& seq)
+ clear(Sequence const& /*seq*/)
     {
         return vector0<>();
     }

Modified: trunk/boost/fusion/container/deque/deque.hpp
==============================================================================
--- trunk/boost/fusion/container/deque/deque.hpp (original)
+++ trunk/boost/fusion/container/deque/deque.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -68,7 +68,7 @@
             {}
 
         template<typename Sequence>
- deque(Sequence const& seq, typename disable_if<is_convertible<Sequence, T0> >::type* dummy = 0)
+ deque(Sequence const& seq, typename disable_if<is_convertible<Sequence, T0> >::type* /*dummy*/ = 0)
             : base(base::from_iterator(fusion::begin(seq)))
             {}
 

Modified: trunk/boost/fusion/container/deque/deque_iterator.hpp
==============================================================================
--- trunk/boost/fusion/container/deque/deque_iterator.hpp (original)
+++ trunk/boost/fusion/container/deque/deque_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -100,6 +100,10 @@
         {};
 
         Seq& seq_;
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ deque_iterator& operator= (deque_iterator const&);
     };
 
 }}

Modified: trunk/boost/fusion/container/list/cons.hpp
==============================================================================
--- trunk/boost/fusion/container/list/cons.hpp (original)
+++ trunk/boost/fusion/container/list/cons.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -46,11 +46,11 @@
         nil() {}
 
         template <typename Iterator>
- nil(Iterator const& iter, mpl::true_ /*this_is_an_iterator*/)
+ nil(Iterator const& /*iter*/, mpl::true_ /*this_is_an_iterator*/)
         {}
 
         template <typename Iterator>
- void assign_from_iter(Iterator const& iter)
+ void assign_from_iter(Iterator const& /*iter*/)
         {
         }
     };
@@ -92,7 +92,7 @@
                     is_convertible<Sequence, cons> // use copy ctor instead
                   , is_convertible<Sequence, Car> // use copy to car instead
>
- >::type* dummy = 0
+ >::type* /*dummy*/ = 0
         )
             : car(*fusion::begin(seq))
             , cdr(fusion::next(fusion::begin(seq)), mpl::true_()) {}

Modified: trunk/boost/fusion/container/vector/vector.hpp
==============================================================================
--- trunk/boost/fusion/container/vector/vector.hpp (original)
+++ trunk/boost/fusion/container/vector/vector.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -111,7 +111,7 @@
         typename add_reference<
             typename mpl::at<types, I>::type
>::type
- at_impl(I index)
+ at_impl(I /*index*/)
         {
             return vec.at_impl(mpl::int_<I::value>());
         }
@@ -122,7 +122,7 @@
                 typename mpl::at<types, I>::type
>::type
>::type
- at_impl(I index) const
+ at_impl(I /*index*/) const
         {
             return vec.at_impl(mpl::int_<I::value>());
         }

Modified: trunk/boost/fusion/container/vector/vector10.hpp
==============================================================================
--- trunk/boost/fusion/container/vector/vector10.hpp (original)
+++ trunk/boost/fusion/container/vector/vector10.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -52,7 +52,7 @@
         vector0() {}
 
         template<typename Sequence>
- vector0(Sequence const& seq)
+ vector0(Sequence const& /*seq*/)
         {}
     };
 

Modified: trunk/boost/fusion/container/vector/vector_iterator.hpp
==============================================================================
--- trunk/boost/fusion/container/vector/vector_iterator.hpp (original)
+++ trunk/boost/fusion/container/vector/vector_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -7,11 +7,6 @@
 #if !defined(FUSION_VECTOR_ITERATOR_05042005_0635)
 #define FUSION_VECTOR_ITERATOR_05042005_0635
 
-#if defined (BOOST_MSVC)
-# pragma warning(push)
-# pragma warning (disable: 4512) // assignment operator could not be generated.
-#endif
-
 #include <boost/fusion/support/iterator_base.hpp>
 #include <boost/fusion/container/vector/detail/deref_impl.hpp>
 #include <boost/fusion/container/vector/detail/value_of_impl.hpp>
@@ -44,12 +39,12 @@
         vector_iterator(Vector& vec)
             : vec(vec) {}
         Vector& vec;
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ vector_iterator& operator= (vector_iterator const&);
     };
 }}
 
-#if defined (BOOST_MSVC)
-# pragma warning(pop)
-#endif
-
 #endif
 

Modified: trunk/boost/fusion/functional/adapter/fused.hpp
==============================================================================
--- trunk/boost/fusion/functional/adapter/fused.hpp (original)
+++ trunk/boost/fusion/functional/adapter/fused.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -10,10 +10,16 @@
 #define BOOST_FUSION_FUNCTIONAL_ADAPTER_FUSED_HPP_INCLUDED
 
 #include <boost/type_traits/add_reference.hpp>
+#include <boost/config.hpp>
 
 #include <boost/fusion/functional/adapter/detail/access.hpp>
 #include <boost/fusion/functional/invocation/invoke.hpp>
 
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
+
 namespace boost { namespace fusion
 {
     template <typename Function> class fused;
@@ -81,5 +87,9 @@
 
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif
 

Modified: trunk/boost/fusion/functional/adapter/fused_function_object.hpp
==============================================================================
--- trunk/boost/fusion/functional/adapter/fused_function_object.hpp (original)
+++ trunk/boost/fusion/functional/adapter/fused_function_object.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -10,10 +10,16 @@
 #define BOOST_FUSION_FUNCTIONAL_ADAPTER_FUSED_FUNCTION_OBJECT_HPP_INCLUDED
 
 #include <boost/type_traits/add_reference.hpp>
+#include <boost/config.hpp>
 
 #include <boost/fusion/functional/adapter/detail/access.hpp>
 #include <boost/fusion/functional/invocation/invoke_function_object.hpp>
 
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
+
 namespace boost { namespace fusion
 {
     template <class Function> class fused_function_object;
@@ -86,5 +92,9 @@
 
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif
 

Modified: trunk/boost/fusion/functional/adapter/fused_procedure.hpp
==============================================================================
--- trunk/boost/fusion/functional/adapter/fused_procedure.hpp (original)
+++ trunk/boost/fusion/functional/adapter/fused_procedure.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -10,10 +10,16 @@
 #define BOOST_FUSION_FUNCTIONAL_ADAPTER_FUSED_PROCEDURE_HPP_INCLUDED
 
 #include <boost/type_traits/add_reference.hpp>
+#include <boost/config.hpp>
 
 #include <boost/fusion/functional/adapter/detail/access.hpp>
 #include <boost/fusion/functional/invocation/invoke_procedure.hpp>
 
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
+
 namespace boost { namespace fusion
 {
     template <typename Function> class fused_procedure;
@@ -66,5 +72,9 @@
     };
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif
 

Modified: trunk/boost/fusion/functional/adapter/unfused.hpp
==============================================================================
--- trunk/boost/fusion/functional/adapter/unfused.hpp (original)
+++ trunk/boost/fusion/functional/adapter/unfused.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -17,11 +17,18 @@
 
 #include <boost/utility/result_of.hpp>
 
+#include <boost/config.hpp>
+
 #include <boost/fusion/container/vector/vector.hpp>
 
 #include <boost/fusion/functional/adapter/limits.hpp>
 #include <boost/fusion/functional/adapter/detail/access.hpp>
 
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
+
 namespace boost { namespace fusion
 {
     template <class Function, bool AllowNullary = true>
@@ -87,6 +94,10 @@
     };
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 namespace boost
 {
     template<class F>

Modified: trunk/boost/fusion/functional/adapter/unfused_typed.hpp
==============================================================================
--- trunk/boost/fusion/functional/adapter/unfused_typed.hpp (original)
+++ trunk/boost/fusion/functional/adapter/unfused_typed.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -28,6 +28,11 @@
 #include <boost/fusion/functional/adapter/limits.hpp>
 #include <boost/fusion/functional/adapter/detail/access.hpp>
 
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
+
 
 namespace boost { namespace fusion
 {
@@ -69,6 +74,10 @@
 
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 namespace boost
 {
     template<class F, class Seq>

Modified: trunk/boost/fusion/functional/invocation/invoke.hpp
==============================================================================
--- trunk/boost/fusion/functional/invocation/invoke.hpp (original)
+++ trunk/boost/fusion/functional/invocation/invoke.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -199,6 +199,8 @@
                     Function(BOOST_PP_ENUM(N,M,~)) >::type result_type;
 #undef M
 
+#if N > 0
+
             template <typename F>
             static inline result_type
             call(F & f, Sequence & s)
@@ -206,6 +208,17 @@
 #define M(z,j,data) fusion::at_c<j>(s)
                 return f( BOOST_PP_ENUM(N,M,~) );
             }
+
+#else
+ template <typename F>
+ static inline result_type
+ call(F & f, Sequence & /*s*/)
+ {
+ return f();
+ }
+
+#endif
+
         };
 
 
@@ -245,16 +258,28 @@
                 Function(BOOST_PP_ENUM_PARAMS(N,typename seq::T))
>::type result_type;
 
+#if N > 0
+
             template <typename F>
             static inline result_type
             call(F & f, Sequence & s)
             {
-#if N > 0
                 typename seq::I0 i0 = fusion::begin(s);
                 BOOST_PP_REPEAT_FROM_TO(1,N,M,~)
-#endif
                 return f( BOOST_PP_ENUM_PARAMS(N,*i) );
             }
+
+#else
+
+ template <typename F>
+ static inline result_type
+ call(F & f, Sequence & /*s*/)
+ {
+ return f();
+ }
+
+#endif
+
         };
 
 #if N > 0

Modified: trunk/boost/fusion/functional/invocation/invoke_function_object.hpp
==============================================================================
--- trunk/boost/fusion/functional/invocation/invoke_function_object.hpp (original)
+++ trunk/boost/fusion/functional/invocation/invoke_function_object.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -118,6 +118,8 @@
                 Function (BOOST_PP_ENUM(N,M,~)) >::type result_type;
 #undef M
 
+#if N > 0
+
             template <class F>
             static inline result_type
             call(F & f, Sequence & s)
@@ -126,6 +128,18 @@
                 return f( BOOST_PP_ENUM(N,M,~) );
 #undef M
             }
+
+#else
+
+ template <class F>
+ static inline result_type
+ call(F & f, Sequence & /*s*/)
+ {
+ return f();
+ }
+
+#endif
+
         };
 
         template <class Function, class Sequence>
@@ -138,20 +152,32 @@
                 Function (BOOST_PP_ENUM_PARAMS(N,typename seq::T))
>::type result_type;
 
+#if N > 0
+
             template <class F>
             static inline result_type
             call(F & f, Sequence & s)
             {
-#if N > 0
                 typename seq::I0 i0 = fusion::begin(s);
 #define M(z,j,data) \
             typename seq::I##j i##j = \
                 fusion::next(BOOST_PP_CAT(i,BOOST_PP_DEC(j)));
                 BOOST_PP_REPEAT_FROM_TO(1,N,M,~)
 #undef M
-#endif
                 return f( BOOST_PP_ENUM_PARAMS(N,*i) );
             }
+
+#else
+
+ template <class F>
+ static inline result_type
+ call(F & f, Sequence & /*s*/)
+ {
+ return f();
+ }
+
+#endif
+
         };
 
         template <class Sequence>

Modified: trunk/boost/fusion/functional/invocation/invoke_procedure.hpp
==============================================================================
--- trunk/boost/fusion/functional/invocation/invoke_procedure.hpp (original)
+++ trunk/boost/fusion/functional/invocation/invoke_procedure.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -106,10 +106,23 @@
         template <typename Function, class Sequence>
         struct invoke_procedure_impl<Function,Sequence,N,false,true>
         {
+
+#if N > 0
+
             static inline void call(Function & f, Sequence & s)
             {
                 f(BOOST_PP_ENUM(N,M,~));
             }
+
+#else
+
+ static inline void call(Function & f, Sequence & /*s*/)
+ {
+ f();
+ }
+
+#endif
+
         };
 
 #if N > 0
@@ -135,15 +148,25 @@
         template <typename Function, class Sequence>
         struct invoke_procedure_impl<Function,Sequence,N,false,false>
         {
+
+#if N > 0
+
             static inline void call(Function & f, Sequence & s)
             {
-#if N > 0
                 typedef typename result_of::begin<Sequence>::type I0;
                 I0 i0 = fusion::begin(s);
                 BOOST_PP_REPEAT_FROM_TO(1,N,M,~)
-#endif
                 f( BOOST_PP_ENUM_PARAMS(N,*i) );
             }
+
+#else
+ static inline void call(Function & f, Sequence & /*s*/)
+ {
+ f();
+ }
+
+#endif
+
         };
 
 #if N > 0

Modified: trunk/boost/fusion/iterator/mpl/convert_iterator.hpp
==============================================================================
--- trunk/boost/fusion/iterator/mpl/convert_iterator.hpp (original)
+++ trunk/boost/fusion/iterator/mpl/convert_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -37,7 +37,7 @@
         }
 
         static mpl_iterator<T>
- call(T const& x, mpl::false_)
+ call(T const& /*x*/, mpl::false_)
         {
             return mpl_iterator<T>();
         }

Modified: trunk/boost/fusion/sequence/comparison/equal_to.hpp
==============================================================================
--- trunk/boost/fusion/sequence/comparison/equal_to.hpp (original)
+++ trunk/boost/fusion/sequence/comparison/equal_to.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -13,6 +13,12 @@
 #include <boost/fusion/sequence/intrinsic/size.hpp>
 #include <boost/fusion/sequence/comparison/detail/equal_to.hpp>
 #include <boost/fusion/sequence/comparison/detail/enable_comparison.hpp>
+#include <boost/config.hpp>
+
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4100) // unreferenced formal parameter
+#endif
 
 namespace boost { namespace fusion
 {
@@ -43,4 +49,8 @@
     using operators::operator==;
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif

Modified: trunk/boost/fusion/support/pair.hpp
==============================================================================
--- trunk/boost/fusion/support/pair.hpp (original)
+++ trunk/boost/fusion/support/pair.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -10,6 +10,12 @@
 
 #include <boost/fusion/support/detail/access.hpp>
 #include <boost/fusion/support/detail/as_fusion_element.hpp>
+#include <boost/config.hpp>
+
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
 
 namespace boost { namespace fusion
 {
@@ -99,4 +105,8 @@
     }
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif

Modified: trunk/boost/fusion/view/filter_view/filter_view.hpp
==============================================================================
--- trunk/boost/fusion/view/filter_view/filter_view.hpp (original)
+++ trunk/boost/fusion/view/filter_view/filter_view.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -21,7 +21,6 @@
 #include <boost/mpl/inherit.hpp>
 #include <boost/mpl/identity.hpp>
 
-
 namespace boost { namespace fusion
 {
     struct filter_view_tag;

Modified: trunk/boost/fusion/view/filter_view/filter_view_iterator.hpp
==============================================================================
--- trunk/boost/fusion/view/filter_view/filter_view_iterator.hpp (original)
+++ trunk/boost/fusion/view/filter_view/filter_view_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -58,6 +58,10 @@
             : first(filter::call(first_converter::call(first))) {}
 
         first_type first;
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ filter_iterator& operator= (filter_iterator const&);
     };
 }}
 

Modified: trunk/boost/fusion/view/iterator_range/iterator_range.hpp
==============================================================================
--- trunk/boost/fusion/view/iterator_range/iterator_range.hpp (original)
+++ trunk/boost/fusion/view/iterator_range/iterator_range.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -17,6 +17,12 @@
 #include <boost/fusion/view/iterator_range/detail/at_impl.hpp>
 #include <boost/fusion/view/iterator_range/detail/value_at_impl.hpp>
 #include <boost/fusion/adapted/mpl/mpl_iterator.hpp>
+#include <boost/config.hpp>
+
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
 
 namespace boost { namespace fusion
 {
@@ -44,6 +50,10 @@
     };
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif
 
 

Modified: trunk/boost/fusion/view/joint_view/joint_view.hpp
==============================================================================
--- trunk/boost/fusion/view/joint_view/joint_view.hpp (original)
+++ trunk/boost/fusion/view/joint_view/joint_view.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -62,6 +62,8 @@
         concat_last_type concat_last() const { return fusion::end(seq2); }
 
     private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ joint_view& operator= (joint_view const&);
 
         typename mpl::if_<traits::is_view<Sequence1>, Sequence1, Sequence1&>::type seq1;
         typename mpl::if_<traits::is_view<Sequence2>, Sequence2, Sequence2&>::type seq2;

Modified: trunk/boost/fusion/view/joint_view/joint_view_iterator.hpp
==============================================================================
--- trunk/boost/fusion/view/joint_view/joint_view_iterator.hpp (original)
+++ trunk/boost/fusion/view/joint_view/joint_view_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -47,6 +47,10 @@
 
         first_type first;
         concat_type concat;
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ joint_view_iterator& operator= (joint_view_iterator const&);
     };
 }}
 

Modified: trunk/boost/fusion/view/nview/detail/distance_impl.hpp
==============================================================================
--- trunk/boost/fusion/view/nview/detail/distance_impl.hpp (original)
+++ trunk/boost/fusion/view/nview/detail/distance_impl.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -31,7 +31,7 @@
>::type type;
 
                 static type
- call(First const& first, Last const& last)
+ call(First const& /*first*/, Last const& /*last*/)
                 {
                     return type();
                 }

Modified: trunk/boost/fusion/view/repetitive_view/repetitive_view.hpp
==============================================================================
--- trunk/boost/fusion/view/repetitive_view/repetitive_view.hpp (original)
+++ trunk/boost/fusion/view/repetitive_view/repetitive_view.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -41,6 +41,10 @@
             : seq(seq) {}
 
         stored_seq_type seq;
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ repetitive_view& operator= (repetitive_view const&);
     };
 
 }}

Modified: trunk/boost/fusion/view/repetitive_view/repetitive_view_iterator.hpp
==============================================================================
--- trunk/boost/fusion/view/repetitive_view/repetitive_view_iterator.hpp (original)
+++ trunk/boost/fusion/view/repetitive_view/repetitive_view_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -43,7 +43,11 @@
 
         Sequence& seq;
         pos_type pos;
+
 
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ repetitive_view_iterator& operator= (repetitive_view_iterator const&);
     };
 }}
 

Modified: trunk/boost/fusion/view/reverse_view/reverse_view.hpp
==============================================================================
--- trunk/boost/fusion/view/reverse_view/reverse_view.hpp (original)
+++ trunk/boost/fusion/view/reverse_view/reverse_view.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -56,6 +56,10 @@
         first_type first() const { return fusion::begin(seq); }
         last_type last() const { return fusion::end(seq); }
         typename mpl::if_<traits::is_view<Sequence>, Sequence, Sequence&>::type seq;
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ reverse_view& operator= (reverse_view const&);
     };
 }}
 

Modified: trunk/boost/fusion/view/reverse_view/reverse_view_iterator.hpp
==============================================================================
--- trunk/boost/fusion/view/reverse_view/reverse_view_iterator.hpp (original)
+++ trunk/boost/fusion/view/reverse_view/reverse_view_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -45,6 +45,10 @@
             : first(converter::call(first)) {}
 
         first_type first;
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ reverse_view_iterator& operator= (reverse_view_iterator const&);
     };
 }}
 

Modified: trunk/boost/fusion/view/single_view/single_view.hpp
==============================================================================
--- trunk/boost/fusion/view/single_view/single_view.hpp (original)
+++ trunk/boost/fusion/view/single_view/single_view.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -15,6 +15,12 @@
 #include <boost/fusion/view/single_view/detail/end_impl.hpp>
 #include <boost/mpl/bool.hpp>
 #include <boost/mpl/int.hpp>
+#include <boost/config.hpp>
+
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
 
 namespace boost { namespace fusion
 {
@@ -49,6 +55,10 @@
     }
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif
 
 

Modified: trunk/boost/fusion/view/single_view/single_view_iterator.hpp
==============================================================================
--- trunk/boost/fusion/view/single_view/single_view_iterator.hpp (original)
+++ trunk/boost/fusion/view/single_view/single_view_iterator.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -12,6 +12,12 @@
 #include <boost/fusion/view/single_view/detail/deref_impl.hpp>
 #include <boost/fusion/view/single_view/detail/next_impl.hpp>
 #include <boost/fusion/view/single_view/detail/value_of_impl.hpp>
+#include <boost/config.hpp>
+
+#if defined (BOOST_MSVC)
+# pragma warning(push)
+# pragma warning (disable: 4512) // assignment operator could not be generated.
+#endif
 
 namespace boost { namespace fusion
 {
@@ -42,6 +48,10 @@
     };
 }}
 
+#if defined (BOOST_MSVC)
+# pragma warning(pop)
+#endif
+
 #endif
 
 

Modified: trunk/boost/fusion/view/transform_view/transform_view.hpp
==============================================================================
--- trunk/boost/fusion/view/transform_view/transform_view.hpp (original)
+++ trunk/boost/fusion/view/transform_view/transform_view.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -69,6 +69,10 @@
         transform_type f;
         typename mpl::if_<traits::is_view<Sequence1>, Sequence1, Sequence1&>::type seq1;
         typename mpl::if_<traits::is_view<Sequence2>, Sequence2, Sequence2&>::type seq2;
+
+ private:
+ // silence MSVC warning C4512: assignment operator could not be generated
+ transform_view& operator= (transform_view const&);
     };
 
     // Unary Version

Modified: trunk/boost/fusion/view/zip_view/detail/distance_impl.hpp
==============================================================================
--- trunk/boost/fusion/view/zip_view/detail/distance_impl.hpp (original)
+++ trunk/boost/fusion/view/zip_view/detail/distance_impl.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -70,7 +70,7 @@
                 : detail::zip_view_iterator_distance<It1, It2>::type
             {
                 static typename detail::zip_view_iterator_distance<It1, It2>::type
- call(It1 const& it1, It2 const& it2)
+ call(It1 const& /*it1*/, It2 const& /*it2*/)
                 {
                     return typename detail::zip_view_iterator_distance<It1, It2>::type();
                 }

Modified: trunk/libs/fusion/test/algorithm/fold.cpp
==============================================================================
--- trunk/libs/fusion/test/algorithm/fold.cpp (original)
+++ trunk/libs/fusion/test/algorithm/fold.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -43,7 +43,7 @@
 
     template <typename State, typename T>
     State
- operator()(State const& state, T const& x) const
+ operator()(State const& state, T const& /*x*/) const
     {
         return state;
     }

Modified: trunk/libs/fusion/test/sequence/adapt_assoc_class.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_assoc_class.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_assoc_class.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -98,14 +98,14 @@
     {
         // conversion from ns::point to vector
         ns::point p(5, 3);
- boost::fusion::vector<int, short> v(p);
+ boost::fusion::vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from ns::point to list
         ns::point p(5, 3);
- boost::fusion::list<int, short> l(p);
+ boost::fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_assoc_class_named.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_assoc_class_named.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_assoc_class_named.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -102,7 +102,7 @@
         // conversion from adapted::point to vector
         ns::point basep(5, 3);
         adapted::point p(basep);
- boost::fusion::vector<int, short> v(p);
+ boost::fusion::vector<int, long> v(p);
         v = p;
     }
 
@@ -110,7 +110,7 @@
         // conversion from adated::point to list
         ns::point basep(5, 3);
         adapted::point p(basep);
- boost::fusion::list<int, short> l(p);
+ boost::fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_assoc_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_assoc_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_assoc_struct.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -104,14 +104,14 @@
     {
         // conversion from ns::point to vector
         ns::point p = {5, 3};
- fusion::vector<int, short> v(p);
+ fusion::vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from ns::point to list
         ns::point p = {5, 3};
- fusion::list<int, short> l(p);
+ fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_assoc_struct_named.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_assoc_struct_named.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_assoc_struct_named.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -88,7 +88,7 @@
         // conversion from adapted::point to vector
         ns::point basep = {5, 3};
         adapted::point p(basep);
- vector<int, short> v(p);
+ vector<int, long> v(p);
         v = p;
     }
 
@@ -96,7 +96,7 @@
         // conversion from adapted::point to list
         ns::point basep = {5, 3};
         adapted::point p(basep);
- list<int, short> l(p);
+ list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_assoc_tpl_class.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_assoc_tpl_class.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_assoc_tpl_class.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -102,14 +102,14 @@
     {
         // conversion from point to vector
         point p(5, 3);
- boost::fusion::vector<int, short> v(p);
+ boost::fusion::vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from point to list
         point p(5, 3);
- boost::fusion::list<int, short> l(p);
+ boost::fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_assoc_tpl_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_assoc_tpl_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_assoc_tpl_struct.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -102,14 +102,14 @@
     {
         // conversion from point to vector
         point p = {5, 3};
- vector<int, short> v(p);
+ vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from point to list
         point p = {5, 3};
- list<int, short> l(p);
+ list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_class.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_class.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_class.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -106,14 +106,14 @@
     {
         // conversion from ns::point to vector
         ns::point p(5, 3);
- fusion::vector<int, short> v(p);
+ fusion::vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from ns::point to list
         ns::point p(5, 3);
- fusion::list<int, short> l(p);
+ fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_class_named.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_class_named.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_class_named.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -112,7 +112,7 @@
         ns::point basep(5, 3);
         adapted::point p(basep);
 
- fusion::vector<int, short> v(p);
+ fusion::vector<int, long> v(p);
         v = p;
     }
 
@@ -121,7 +121,7 @@
         ns::point basep(5, 3);
         adapted::point p(basep);
 
- fusion::list<int, short> l(p);
+ fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_struct.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -97,14 +97,14 @@
     {
         // conversion from ns::point to vector
         ns::point p = {5, 3};
- fusion::vector<int, short> v(p);
+ fusion::vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from ns::point to list
         ns::point p = {5, 3};
- fusion::list<int, short> l(p);
+ fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_struct_named.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_struct_named.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_struct_named.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -103,7 +103,7 @@
         // conversion from adapted::point to vector
         ns::point basep = {5, 3};
         adapted::point p(basep);
- fusion::vector<int, short> v(p);
+ fusion::vector<int, long> v(p);
         v = p;
     }
 
@@ -111,7 +111,7 @@
         // conversion from adapted::point to list
         ns::point basep = {5, 3};
         adapted::point p(basep);
- fusion::list<int, short> l(p);
+ fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_tpl_class.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_tpl_class.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_tpl_class.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -110,14 +110,14 @@
     {
         // conversion from point to vector
         point p(5, 3);
- boost::fusion::vector<int, short> v(p);
+ boost::fusion::vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from point to list
         point p(5, 3);
- boost::fusion::list<int, short> l(p);
+ boost::fusion::list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/adapt_tpl_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/adapt_tpl_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/adapt_tpl_struct.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -97,14 +97,14 @@
     {
         // conversion from point to vector
         point p = {5, 3};
- vector<int, short> v(p);
+ vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from point to list
         point p = {5, 3};
- list<int, short> l(p);
+ list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/cons.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/cons.cpp (original)
+++ trunk/libs/fusion/test/sequence/cons.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -26,6 +26,7 @@
 {
     using namespace boost::fusion;
     using boost::is_same;
+ namespace fusion = boost::fusion;
 
     std::cout << tuple_open('[');
     std::cout << tuple_close(']');
@@ -39,18 +40,18 @@
             make_cons(1, make_cons(hello));
 
         BOOST_TEST((*begin(ns) == 1));
- BOOST_TEST((*next(begin(ns)) == hello));
+ BOOST_TEST((*fusion::next(begin(ns)) == hello));
 
         *begin(ns) += 1;
- *next(begin(ns)) += ' ';
+ *fusion::next(begin(ns)) += ' ';
 
         BOOST_TEST((*begin(ns) == 2));
- BOOST_TEST((*next(begin(ns)) == hello + ' '));
+ BOOST_TEST((*fusion::next(begin(ns)) == hello + ' '));
 
         for_each(ns, boost::lambda::_1 += ' ');
 
         BOOST_TEST((*begin(ns) == 2 + ' '));
- BOOST_TEST((*next(begin(ns)) == hello + ' ' + ' '));
+ BOOST_TEST((*fusion::next(begin(ns)) == hello + ' ' + ' '));
     }
 
     {

Modified: trunk/libs/fusion/test/sequence/define_assoc_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/define_assoc_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/define_assoc_struct.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -75,14 +75,14 @@
     {
         // conversion from ns::point to vector
         ns::point p(5, 3);
- vector<int, short> v(p);
+ vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from ns::point to list
         ns::point p(5, 3);
- list<int, short> l(p);
+ list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/define_assoc_tpl_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/define_assoc_tpl_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/define_assoc_tpl_struct.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -79,14 +79,14 @@
     {
         // conversion from point to vector
         point p(5, 3);
- vector<int, short> v(p);
+ vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from point to list
         point p(5, 3);
- list<int, short> l(p);
+ list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/define_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/define_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/define_struct.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -72,14 +72,14 @@
     {
         // conversion from ns::point to vector
         ns::point p(5, 3);
- vector<int, short> v(p);
+ vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from ns::point to list
         ns::point p(5, 3);
- list<int, short> l(p);
+ list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/define_tpl_struct.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/define_tpl_struct.cpp (original)
+++ trunk/libs/fusion/test/sequence/define_tpl_struct.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -75,14 +75,14 @@
     {
         // conversion from point to vector
         point p(5, 3);
- vector<int, short> v(p);
+ vector<int, long> v(p);
         v = p;
     }
 
     {
         // conversion from point to list
         point p(5, 3);
- list<int, short> l(p);
+ list<int, long> l(p);
         l = p;
     }
 

Modified: trunk/libs/fusion/test/sequence/iterator_range.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/iterator_range.cpp (original)
+++ trunk/libs/fusion/test/sequence/iterator_range.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -28,6 +28,7 @@
 main()
 {
     using namespace boost::fusion;
+ namespace fusion = boost::fusion;
 
     std::cout << tuple_open('[');
     std::cout << tuple_close(']');
@@ -104,9 +105,9 @@
         BOOST_MPL_ASSERT((boost::is_same<result_of::value_of_data<result_of::next<result_of::begin<range_type>::type>::type>::type, char>));
 
         std::cout << deref_data(begin(r)) << std::endl;
- std::cout << deref_data(next(begin(r))) << std::endl;
+ std::cout << deref_data(fusion::next(begin(r))) << std::endl;
         BOOST_TEST((deref_data(begin(r)) == "foo"));
- BOOST_TEST((deref_data(next(begin(r))) == 'x'));
+ BOOST_TEST((deref_data(fusion::next(begin(r))) == 'x'));
     }
 
     return boost::report_errors();

Modified: trunk/libs/fusion/test/sequence/joint_view.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/joint_view.cpp (original)
+++ trunk/libs/fusion/test/sequence/joint_view.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -34,6 +34,7 @@
 main()
 {
     using namespace boost::fusion;
+ namespace fusion = boost::fusion;
 
     std::cout << tuple_open('[');
     std::cout << tuple_close(']');
@@ -175,11 +176,11 @@
               , float>));
 
         std::cout << deref_data(begin(j)) << std::endl;
- std::cout << deref_data(boost::fusion::next(begin(j))) << std::endl;
- std::cout << deref_data(next(boost::fusion::next(begin(j)))) << std::endl;
+ std::cout << deref_data(fusion::next(begin(j))) << std::endl;
+ std::cout << deref_data(fusion::next(fusion::next(begin(j)))) << std::endl;
         BOOST_TEST((deref_data(begin(j)) == 0));
- BOOST_TEST((deref_data(boost::fusion::next(begin(j))) == "foo"));
- BOOST_TEST((deref_data(next(boost::fusion::next(begin(j)))) == 1.3f));
+ BOOST_TEST((deref_data(fusion::next(begin(j))) == "foo"));
+ BOOST_TEST((deref_data(fusion::next(fusion::next(begin(j)))) == 1.3f));
     }
 
     return boost::report_errors();

Modified: trunk/libs/fusion/test/sequence/map.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/map.cpp (original)
+++ trunk/libs/fusion/test/sequence/map.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -29,6 +29,7 @@
     using namespace boost::fusion;
     using namespace boost;
     using namespace std;
+ namespace fusion = boost::fusion;
     using boost::fusion::pair;
     using boost::fusion::make_pair;
 
@@ -66,15 +67,15 @@
         BOOST_STATIC_ASSERT((!result_of::has_key<map_type, std::string>::value));
 
         std::cout << deref_data(begin(m)) << std::endl;
- std::cout << deref_data(next(begin(m))) << std::endl;
+ std::cout << deref_data(fusion::next(begin(m))) << std::endl;
 
         BOOST_TEST(deref_data(begin(m)) == 'X');
- BOOST_TEST(deref_data(next(begin(m))) == "Men");
+ BOOST_TEST(deref_data(fusion::next(begin(m))) == "Men");
 
- BOOST_STATIC_ASSERT((is_same<result_of::key_of<result_of::begin<map_type>::type>::type, int>::value));
- BOOST_STATIC_ASSERT((is_same<result_of::key_of<result_of::next<result_of::begin<map_type>::type>::type>::type, double>::value));
- BOOST_STATIC_ASSERT((is_same<result_of::value_of_data<result_of::begin<map_type>::type>::type, char>::value));
- BOOST_STATIC_ASSERT((is_same<result_of::value_of_data<result_of::next<result_of::begin<map_type>::type>::type>::type, std::string>::value));
+ BOOST_STATIC_ASSERT((boost::is_same<result_of::key_of<result_of::begin<map_type>::type>::type, int>::value));
+ BOOST_STATIC_ASSERT((boost::is_same<result_of::key_of<result_of::next<result_of::begin<map_type>::type>::type>::type, double>::value));
+ BOOST_STATIC_ASSERT((boost::is_same<result_of::value_of_data<result_of::begin<map_type>::type>::type, char>::value));
+ BOOST_STATIC_ASSERT((boost::is_same<result_of::value_of_data<result_of::next<result_of::begin<map_type>::type>::type>::type, std::string>::value));
     }
     
     {

Modified: trunk/libs/fusion/test/sequence/misc.hpp
==============================================================================
--- trunk/libs/fusion/test/sequence/misc.hpp (original)
+++ trunk/libs/fusion/test/sequence/misc.hpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -151,7 +151,7 @@
     { // testing front & back
 
         typedef FUSION_SEQUENCE<int, float, std::string> tup;
- tup t(1, 2.2, "Kimpo");
+ tup t(1, 2.2f, "Kimpo");
 
         BOOST_TEST(front(t) == 1);
 #if !defined(FUSION_FORWARD_ONLY) // list has no back

Modified: trunk/libs/fusion/test/sequence/set.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/set.cpp (original)
+++ trunk/libs/fusion/test/sequence/set.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -29,6 +29,7 @@
     using namespace boost::fusion;
     using namespace boost;
     using namespace std;
+ namespace fusion = boost::fusion;
     using boost::fusion::pair;
     using boost::fusion::make_pair;
 
@@ -61,15 +62,15 @@
         BOOST_STATIC_ASSERT((!result_of::has_key<set_type, double>::value));
 
         std::cout << deref_data(begin(m)) << std::endl;
- std::cout << deref_data(next(begin(m))) << std::endl;
+ std::cout << deref_data(fusion::next(begin(m))) << std::endl;
 
         BOOST_TEST(deref_data(begin(m)) == 123);
- BOOST_TEST(deref_data(next(begin(m))) == "Hola");
+ BOOST_TEST(deref_data(fusion::next(begin(m))) == "Hola");
 
- BOOST_STATIC_ASSERT((is_same<result_of::key_of<result_of::begin<set_type>::type>::type, int>::value));
- BOOST_STATIC_ASSERT((is_same<result_of::key_of<result_of::next<result_of::begin<set_type>::type>::type>::type, std::string>::value));
- BOOST_STATIC_ASSERT((is_same<result_of::value_of_data<result_of::begin<set_type>::type>::type, int>::value));
- BOOST_STATIC_ASSERT((is_same<result_of::value_of_data<result_of::next<result_of::begin<set_type>::type>::type>::type, std::string>::value));
+ BOOST_STATIC_ASSERT((boost::is_same<result_of::key_of<result_of::begin<set_type>::type>::type, int>::value));
+ BOOST_STATIC_ASSERT((boost::is_same<result_of::key_of<result_of::next<result_of::begin<set_type>::type>::type>::type, std::string>::value));
+ BOOST_STATIC_ASSERT((boost::is_same<result_of::value_of_data<result_of::begin<set_type>::type>::type, int>::value));
+ BOOST_STATIC_ASSERT((boost::is_same<result_of::value_of_data<result_of::next<result_of::begin<set_type>::type>::type>::type, std::string>::value));
     }
     
     {

Modified: trunk/libs/fusion/test/sequence/tr1_tuple_auto_conv.cpp
==============================================================================
--- trunk/libs/fusion/test/sequence/tr1_tuple_auto_conv.cpp (original)
+++ trunk/libs/fusion/test/sequence/tr1_tuple_auto_conv.cpp 2010-06-12 11:58:31 EDT (Sat, 12 Jun 2010)
@@ -48,7 +48,7 @@
 } // namespace Core
 
 
-int main(int argc, char* argv[])
+int main()
 {
     std::tr1::tuple<int, int, int, int> test = Core::Demo();
     return 0;


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