diff options
Diffstat (limited to 'boost/fusion/sequence')
43 files changed, 138 insertions, 66 deletions
diff --git a/boost/fusion/sequence/comparison.hpp b/boost/fusion/sequence/comparison.hpp index 52fd1384c8..d319f9e07f 100644 --- a/boost/fusion/sequence/comparison.hpp +++ b/boost/fusion/sequence/comparison.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_SEQUENCE_COMPARISON_10022005_0615) #define FUSION_SEQUENCE_COMPARISON_10022005_0615 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/comparison/equal_to.hpp> #include <boost/fusion/sequence/comparison/greater.hpp> #include <boost/fusion/sequence/comparison/greater_equal.hpp> diff --git a/boost/fusion/sequence/comparison/detail/equal_to.hpp b/boost/fusion/sequence/comparison/detail/equal_to.hpp index 56cfe1b247..577023db6a 100644 --- a/boost/fusion/sequence/comparison/detail/equal_to.hpp +++ b/boost/fusion/sequence/comparison/detail/equal_to.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_EQUAL_TO_05052005_1142) #define FUSION_EQUAL_TO_05052005_1142 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/fusion/iterator/next.hpp> @@ -23,6 +24,7 @@ namespace boost { namespace fusion { namespace detail typedef typename result_of::end<Seq2>::type end2_type; template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const&, I2 const&, mpl::true_) { @@ -30,6 +32,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b, mpl::false_) { @@ -38,6 +41,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b) { @@ -50,6 +54,7 @@ namespace boost { namespace fusion { namespace detail struct sequence_equal_to<Seq1, Seq2, false> { template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& /*a*/, I2 const& /*b*/) { diff --git a/boost/fusion/sequence/comparison/detail/greater.hpp b/boost/fusion/sequence/comparison/detail/greater.hpp index e61287765f..d875f16b2b 100644 --- a/boost/fusion/sequence/comparison/detail/greater.hpp +++ b/boost/fusion/sequence/comparison/detail/greater.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_GREATER_05052005_1142) #define FUSION_GREATER_05052005_1142 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/fusion/iterator/next.hpp> @@ -23,6 +24,7 @@ namespace boost { namespace fusion { namespace detail typedef typename result_of::end<Seq2>::type end2_type; template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const&, I2 const&, mpl::true_) { @@ -30,6 +32,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b, mpl::false_) { @@ -39,6 +42,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b) { diff --git a/boost/fusion/sequence/comparison/detail/greater_equal.hpp b/boost/fusion/sequence/comparison/detail/greater_equal.hpp index 6d91e27bbd..e0aa530e18 100644 --- a/boost/fusion/sequence/comparison/detail/greater_equal.hpp +++ b/boost/fusion/sequence/comparison/detail/greater_equal.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_GREATER_EQUAL_05052005_1142) #define FUSION_GREATER_EQUAL_05052005_1142 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/fusion/iterator/next.hpp> @@ -23,6 +24,7 @@ namespace boost { namespace fusion { namespace detail typedef typename result_of::end<Seq2>::type end2_type; template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const&, I2 const&, mpl::true_) { @@ -30,6 +32,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b, mpl::false_) { @@ -39,6 +42,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b) { diff --git a/boost/fusion/sequence/comparison/detail/less.hpp b/boost/fusion/sequence/comparison/detail/less.hpp index 1342bb1427..8964ca7d13 100644 --- a/boost/fusion/sequence/comparison/detail/less.hpp +++ b/boost/fusion/sequence/comparison/detail/less.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_LESS_05052005_1141) #define FUSION_LESS_05052005_1141 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/fusion/iterator/next.hpp> @@ -23,6 +24,7 @@ namespace boost { namespace fusion { namespace detail typedef typename result_of::end<Seq2>::type end2_type; template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const&, I2 const&, mpl::true_) { @@ -30,6 +32,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b, mpl::false_) { @@ -39,6 +42,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b) { diff --git a/boost/fusion/sequence/comparison/detail/less_equal.hpp b/boost/fusion/sequence/comparison/detail/less_equal.hpp index 5683849a2c..10bcb76791 100644 --- a/boost/fusion/sequence/comparison/detail/less_equal.hpp +++ b/boost/fusion/sequence/comparison/detail/less_equal.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_LESS_EQUAL_05052005_1141) #define FUSION_LESS_EQUAL_05052005_1141 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/fusion/iterator/next.hpp> @@ -23,6 +24,7 @@ namespace boost { namespace fusion { namespace detail typedef typename result_of::end<Seq2>::type end2_type; template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const&, I2 const&, mpl::true_) { @@ -30,6 +32,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b, mpl::false_) { @@ -39,6 +42,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b) { diff --git a/boost/fusion/sequence/comparison/detail/not_equal_to.hpp b/boost/fusion/sequence/comparison/detail/not_equal_to.hpp index 77c235089f..b230ac1fba 100644 --- a/boost/fusion/sequence/comparison/detail/not_equal_to.hpp +++ b/boost/fusion/sequence/comparison/detail/not_equal_to.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_NOT_EQUAL_TO_05052005_1141) #define FUSION_NOT_EQUAL_TO_05052005_1141 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/bool.hpp> #include <boost/fusion/iterator/deref.hpp> #include <boost/fusion/iterator/next.hpp> @@ -23,6 +24,7 @@ namespace boost { namespace fusion { namespace detail typedef typename result_of::end<Seq2>::type end2_type; template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const&, I2 const&, mpl::true_) { @@ -30,6 +32,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b, mpl::false_) { @@ -38,6 +41,7 @@ namespace boost { namespace fusion { namespace detail } template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b) { @@ -50,6 +54,7 @@ namespace boost { namespace fusion { namespace detail struct sequence_not_equal_to<Seq1, Seq2, false> { template <typename I1, typename I2> + BOOST_FUSION_GPU_ENABLED static bool call(I1 const& a, I2 const& b) { diff --git a/boost/fusion/sequence/comparison/enable_comparison.hpp b/boost/fusion/sequence/comparison/enable_comparison.hpp index bd55ac302e..1279417714 100644 --- a/boost/fusion/sequence/comparison/enable_comparison.hpp +++ b/boost/fusion/sequence/comparison/enable_comparison.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_ENABLE_COMPARISON_09232005_1958) #define FUSION_ENABLE_COMPARISON_09232005_1958 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/or.hpp> #include <boost/mpl/and.hpp> #include <boost/mpl/not.hpp> diff --git a/boost/fusion/sequence/comparison/equal_to.hpp b/boost/fusion/sequence/comparison/equal_to.hpp index 9c4e043558..485df0bac2 100644 --- a/boost/fusion/sequence/comparison/equal_to.hpp +++ b/boost/fusion/sequence/comparison/equal_to.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_EQUAL_TO_05052005_0431) #define FUSION_EQUAL_TO_05052005_0431 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/size.hpp> @@ -23,6 +24,7 @@ namespace boost { namespace fusion { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline bool equal_to(Seq1 const& a, Seq2 const& b) { @@ -36,6 +38,7 @@ namespace boost { namespace fusion namespace operators { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline typename boost::enable_if< traits::enable_equality<Seq1, Seq2> diff --git a/boost/fusion/sequence/comparison/greater.hpp b/boost/fusion/sequence/comparison/greater.hpp index 077138d80d..5ad7ef74b9 100644 --- a/boost/fusion/sequence/comparison/greater.hpp +++ b/boost/fusion/sequence/comparison/greater.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_GREATER_05052005_0432) #define FUSION_GREATER_05052005_0432 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/size.hpp> @@ -22,6 +23,7 @@ namespace boost { namespace fusion { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline bool greater(Seq1 const& a, Seq2 const& b) { @@ -36,6 +38,7 @@ namespace boost { namespace fusion namespace operators { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline typename boost::enable_if< traits::enable_comparison<Seq1, Seq2> diff --git a/boost/fusion/sequence/comparison/greater_equal.hpp b/boost/fusion/sequence/comparison/greater_equal.hpp index 90175bc7d2..65904f8339 100644 --- a/boost/fusion/sequence/comparison/greater_equal.hpp +++ b/boost/fusion/sequence/comparison/greater_equal.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_GREATER_EQUAL_05052005_0432) #define FUSION_GREATER_EQUAL_05052005_0432 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/size.hpp> @@ -22,6 +23,7 @@ namespace boost { namespace fusion { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline bool greater_equal(Seq1 const& a, Seq2 const& b) { @@ -36,6 +38,7 @@ namespace boost { namespace fusion namespace operators { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline typename boost::enable_if< traits::enable_comparison<Seq1, Seq2> diff --git a/boost/fusion/sequence/comparison/less.hpp b/boost/fusion/sequence/comparison/less.hpp index 944cdcf69e..28762b7394 100644 --- a/boost/fusion/sequence/comparison/less.hpp +++ b/boost/fusion/sequence/comparison/less.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_LESS_05052005_0432) #define FUSION_LESS_05052005_0432 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/size.hpp> @@ -17,6 +18,7 @@ namespace boost { namespace fusion { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline bool less(Seq1 const& a, Seq2 const& b) { @@ -27,6 +29,7 @@ namespace boost { namespace fusion namespace operators { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline typename boost::enable_if< traits::enable_comparison<Seq1, Seq2> diff --git a/boost/fusion/sequence/comparison/less_equal.hpp b/boost/fusion/sequence/comparison/less_equal.hpp index 0e5d23a5eb..d0668208f0 100644 --- a/boost/fusion/sequence/comparison/less_equal.hpp +++ b/boost/fusion/sequence/comparison/less_equal.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_LESS_EQUAL_05052005_0432) #define FUSION_LESS_EQUAL_05052005_0432 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/size.hpp> @@ -23,6 +24,7 @@ namespace boost { namespace fusion { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline bool less_equal(Seq1 const& a, Seq2 const& b) { @@ -39,6 +41,7 @@ namespace boost { namespace fusion #if defined(BOOST_MSVC) && (BOOST_MSVC <= 1400) // Workaround for VC8.0 and VC7.1 template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline bool operator<=(sequence_base<Seq1> const& a, sequence_base<Seq2> const& b) { @@ -46,6 +49,7 @@ namespace boost { namespace fusion } template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline typename disable_if<traits::is_native_fusion_sequence<Seq2>, bool>::type operator<=(sequence_base<Seq1> const& a, Seq2 const& b) { @@ -53,6 +57,7 @@ namespace boost { namespace fusion } template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline typename disable_if<traits::is_native_fusion_sequence<Seq1>, bool>::type operator<=(Seq1 const& a, sequence_base<Seq2> const& b) { @@ -64,6 +69,7 @@ namespace boost { namespace fusion // but barfs somewhere else. template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline typename boost::enable_if< traits::enable_comparison<Seq1, Seq2> diff --git a/boost/fusion/sequence/comparison/not_equal_to.hpp b/boost/fusion/sequence/comparison/not_equal_to.hpp index 14ef25df7f..4cd94f9e53 100644 --- a/boost/fusion/sequence/comparison/not_equal_to.hpp +++ b/boost/fusion/sequence/comparison/not_equal_to.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_NOT_EQUAL_TO_05052005_0431) #define FUSION_NOT_EQUAL_TO_05052005_0431 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/sequence/intrinsic/size.hpp> @@ -22,6 +23,7 @@ namespace boost { namespace fusion { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline bool not_equal_to(Seq1 const& a, Seq2 const& b) { @@ -39,6 +41,7 @@ namespace boost { namespace fusion namespace operators { template <typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED inline typename boost::enable_if< traits::enable_equality<Seq1, Seq2> diff --git a/boost/fusion/sequence/convert.hpp b/boost/fusion/sequence/convert.hpp index 5264810102..461b92120d 100644 --- a/boost/fusion/sequence/convert.hpp +++ b/boost/fusion/sequence/convert.hpp @@ -20,15 +20,16 @@ namespace boost { namespace fusion template <typename Tag, typename Sequence> struct convert { - typedef typename extension::convert_impl<Tag> gen; - typedef typename - gen::template apply<Sequence>::type - type; + extension::convert_impl<Tag>::template apply<Sequence> + gen; + + typedef typename gen::type type; }; } template <typename Tag, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::convert<Tag, Sequence>::type convert(Sequence& seq) { @@ -37,6 +38,7 @@ namespace boost { namespace fusion } template <typename Tag, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::convert<Tag, Sequence const>::type convert(Sequence const& seq) { diff --git a/boost/fusion/sequence/intrinsic.hpp b/boost/fusion/sequence/intrinsic.hpp index 7da2cf03d5..4583807406 100644 --- a/boost/fusion/sequence/intrinsic.hpp +++ b/boost/fusion/sequence/intrinsic.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_SEQUENCE_INTRINSIC_10022005_0618) #define FUSION_SEQUENCE_INTRINSIC_10022005_0618 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/at.hpp> #include <boost/fusion/sequence/intrinsic/back.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> diff --git a/boost/fusion/sequence/intrinsic/at.hpp b/boost/fusion/sequence/intrinsic/at.hpp index 92da7bbd2c..aa0d97445d 100644 --- a/boost/fusion/sequence/intrinsic/at.hpp +++ b/boost/fusion/sequence/intrinsic/at.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_AT_05042005_0722) #define FUSION_AT_05042005_0722 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/int.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> @@ -71,6 +72,7 @@ namespace boost { namespace fusion template <typename N, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_disable_if< is_const<Sequence> @@ -82,6 +84,7 @@ namespace boost { namespace fusion } template <typename N, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::at<Sequence const, N>::type at(Sequence const& seq) { @@ -89,6 +92,7 @@ namespace boost { namespace fusion } template <int N, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_disable_if< is_const<Sequence> @@ -100,6 +104,7 @@ namespace boost { namespace fusion } template <int N, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::at_c<Sequence const, N>::type at_c(Sequence const& seq) { diff --git a/boost/fusion/sequence/intrinsic/at_c.hpp b/boost/fusion/sequence/intrinsic/at_c.hpp index 449e3f4149..327798c0ce 100644 --- a/boost/fusion/sequence/intrinsic/at_c.hpp +++ b/boost/fusion/sequence/intrinsic/at_c.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_AT_C_08252008_0308) #define FUSION_AT_C_08252008_0308 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/at.hpp> #endif diff --git a/boost/fusion/sequence/intrinsic/at_key.hpp b/boost/fusion/sequence/intrinsic/at_key.hpp index 24c2fffa65..844de840e4 100644 --- a/boost/fusion/sequence/intrinsic/at_key.hpp +++ b/boost/fusion/sequence/intrinsic/at_key.hpp @@ -8,6 +8,7 @@ #if !defined(BOOST_FUSION_AT_KEY_20060304_1755) #define BOOST_FUSION_AT_KEY_20060304_1755 +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/algorithm/query/find.hpp> @@ -37,6 +38,7 @@ namespace boost { namespace fusion >::type type; + BOOST_FUSION_GPU_ENABLED static type call(Seq& seq) { @@ -72,6 +74,7 @@ namespace boost { namespace fusion } template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_disable_if< is_const<Sequence> @@ -83,6 +86,7 @@ namespace boost { namespace fusion } template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::at_key<Sequence const, Key>::type at_key(Sequence const& seq) { diff --git a/boost/fusion/sequence/intrinsic/back.hpp b/boost/fusion/sequence/intrinsic/back.hpp index 0a4d482053..f934355381 100644 --- a/boost/fusion/sequence/intrinsic/back.hpp +++ b/boost/fusion/sequence/intrinsic/back.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_BACK_09162005_0350) #define FUSION_BACK_09162005_0350 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/sequence/intrinsic/end.hpp> #include <boost/fusion/iterator/prior.hpp> @@ -26,6 +27,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::back<Sequence>::type back(Sequence& seq) { @@ -33,6 +35,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::back<Sequence const>::type back(Sequence const& seq) { diff --git a/boost/fusion/sequence/intrinsic/begin.hpp b/boost/fusion/sequence/intrinsic/begin.hpp index 7a7ecf6afd..af4e31225d 100644 --- a/boost/fusion/sequence/intrinsic/begin.hpp +++ b/boost/fusion/sequence/intrinsic/begin.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_BEGIN_04052005_1132) #define FUSION_BEGIN_04052005_1132 +#include <boost/fusion/support/config.hpp> #include <boost/blank.hpp> #include <boost/utility/enable_if.hpp> #include <boost/mpl/if.hpp> @@ -70,6 +71,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_enable_if< traits::is_sequence<Sequence> @@ -81,6 +83,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_enable_if< traits::is_sequence<Sequence> diff --git a/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp b/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp index 968718eb2a..81d09660b1 100644 --- a/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp +++ b/boost/fusion/sequence/intrinsic/detail/segmented_begin.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEGMENTED_BEGIN_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_BEGIN_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp> #include <boost/fusion/iterator/segmented_iterator.hpp> #include <boost/fusion/view/iterator_range.hpp> @@ -19,22 +20,23 @@ namespace boost { namespace fusion { namespace detail { //auto segmented_begin( seq ) //{ - // return make_segmented_iterator( segmented_begin_impl( seq, nil ) ); + // return make_segmented_iterator( segmented_begin_impl( seq, nil_ ) ); //} - template <typename Sequence, typename Nil = fusion::nil> + template <typename Sequence, typename Nil_ = fusion::nil_> struct segmented_begin { typedef segmented_iterator< - typename segmented_begin_impl<Sequence, Nil>::type + typename segmented_begin_impl<Sequence, Nil_>::type > type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq) { return type( - segmented_begin_impl<Sequence, Nil>::call(seq, Nil())); + segmented_begin_impl<Sequence, Nil_>::call(seq, Nil_())); } }; diff --git a/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp b/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp index 5069432761..2ab462702d 100644 --- a/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp +++ b/boost/fusion/sequence/intrinsic/detail/segmented_begin_impl.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEGMENTED_BEGIN_IMPL_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_BEGIN_IMPL_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/remove_const.hpp> #include <boost/fusion/container/list/cons_fwd.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> @@ -37,6 +38,7 @@ namespace boost { namespace fusion { namespace detail typedef cons<range_type, Context> type; typedef mpl::false_ continue_type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq, State const&, Context const& context, segmented_begin_fun) { return type(range_type(fusion::begin(seq), fusion::end(seq)), context); @@ -62,6 +64,7 @@ namespace boost { namespace fusion { namespace detail typedef typename fold_impl::type type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq, Stack const& stack) { return fold_impl::call(seq, end_impl::call(seq, stack), stack, segmented_begin_fun()); @@ -76,6 +79,7 @@ namespace boost { namespace fusion { namespace detail typedef iterator_range<begin_type, end_type> pair_type; typedef cons<pair_type, Stack> type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence& seq, Stack stack) { return type(pair_type(fusion::begin(seq), fusion::end(seq)), stack); diff --git a/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp b/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp index 469862ac3b..c26865a671 100644 --- a/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp +++ b/boost/fusion/sequence/intrinsic/detail/segmented_end.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEGMENTED_END_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_END_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp> #include <boost/fusion/iterator/segmented_iterator.hpp> #include <boost/fusion/container/list/cons.hpp> @@ -18,19 +19,20 @@ namespace boost { namespace fusion { namespace detail // return make_segmented_iterator( segmented_end_impl( seq ) ); //} - template <typename Sequence, typename Nil = fusion::nil> + template <typename Sequence, typename Nil_ = fusion::nil_> struct segmented_end { typedef segmented_iterator< - typename segmented_end_impl<Sequence, Nil>::type + typename segmented_end_impl<Sequence, Nil_>::type > type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence & seq) { return type( - segmented_end_impl<Sequence, Nil>::call(seq, Nil())); + segmented_end_impl<Sequence, Nil_>::call(seq, Nil_())); } }; diff --git a/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp b/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp index 149027bc2d..9be150433a 100644 --- a/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp +++ b/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEGMENTED_END_IMPL_HPP_INCLUDED) #define BOOST_FUSION_SEGMENTED_END_IMPL_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/mpl/assert.hpp> #include <boost/type_traits/add_const.hpp> #include <boost/type_traits/remove_reference.hpp> @@ -47,6 +48,7 @@ namespace boost { namespace fusion { namespace detail typedef iterator_range<end_type, end_type> pair_type; typedef cons<pair_type, Stack> type; + BOOST_FUSION_GPU_ENABLED static type call(Sequence & seq, Stack stack) { end_type end = fusion::end(fusion::segments(seq)); diff --git a/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp b/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp index 03cef28fa5..4defcedde1 100644 --- a/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp +++ b/boost/fusion/sequence/intrinsic/detail/segmented_size.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEGMENTED_SIZE_08112006_1141) #define BOOST_FUSION_SEGMENTED_SIZE_08112006_1141 +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/add_const.hpp> #include <boost/type_traits/remove_reference.hpp> #include <boost/mpl/fold.hpp> diff --git a/boost/fusion/sequence/intrinsic/empty.hpp b/boost/fusion/sequence/intrinsic/empty.hpp index a9928ab1a1..3c8666abd4 100644 --- a/boost/fusion/sequence/intrinsic/empty.hpp +++ b/boost/fusion/sequence/intrinsic/empty.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_EMPTY_09162005_0335) #define FUSION_EMPTY_09162005_0335 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/sequence/intrinsic/size.hpp> #include <boost/mpl/bool.hpp> @@ -50,6 +51,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::empty<Sequence>::type empty(Sequence const&) { diff --git a/boost/fusion/sequence/intrinsic/end.hpp b/boost/fusion/sequence/intrinsic/end.hpp index 995ed7a083..3e69518efa 100644 --- a/boost/fusion/sequence/intrinsic/end.hpp +++ b/boost/fusion/sequence/intrinsic/end.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_END_04052005_1141) #define FUSION_END_04052005_1141 +#include <boost/fusion/support/config.hpp> #include <boost/blank.hpp> #include <boost/utility/enable_if.hpp> #include <boost/mpl/if.hpp> @@ -70,6 +71,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_enable_if< traits::is_sequence<Sequence> @@ -81,6 +83,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_enable_if< traits::is_sequence<Sequence> diff --git a/boost/fusion/sequence/intrinsic/front.hpp b/boost/fusion/sequence/intrinsic/front.hpp index 0e50e3ca75..6d939da3d3 100644 --- a/boost/fusion/sequence/intrinsic/front.hpp +++ b/boost/fusion/sequence/intrinsic/front.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_FRONT_09162005_0343) #define FUSION_FRONT_09162005_0343 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/sequence/intrinsic/begin.hpp> #include <boost/fusion/iterator/deref.hpp> @@ -25,6 +26,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::front<Sequence>::type front(Sequence& seq) { @@ -32,6 +34,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::front<Sequence const>::type front(Sequence const& seq) { diff --git a/boost/fusion/sequence/intrinsic/has_key.hpp b/boost/fusion/sequence/intrinsic/has_key.hpp index 1ff05bad06..bba2c695b3 100644 --- a/boost/fusion/sequence/intrinsic/has_key.hpp +++ b/boost/fusion/sequence/intrinsic/has_key.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_HAS_KEY_09232005_1454) #define FUSION_HAS_KEY_09232005_1454 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> #include <boost/fusion/iterator/equal_to.hpp> @@ -67,8 +68,9 @@ namespace boost { namespace fusion } template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::has_key<Sequence, Key>::type - has_key(Sequence const& seq) + has_key(Sequence const&) { typedef typename result_of::has_key<Sequence, Key>::type result; return result(); diff --git a/boost/fusion/sequence/intrinsic/segments.hpp b/boost/fusion/sequence/intrinsic/segments.hpp index afd5d400eb..a1bbacaf06 100644 --- a/boost/fusion/sequence/intrinsic/segments.hpp +++ b/boost/fusion/sequence/intrinsic/segments.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEGMENTS_04052005_1141) #define BOOST_FUSION_SEGMENTS_04052005_1141 +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/utility/enable_if.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> @@ -53,6 +54,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename lazy_disable_if< is_const<Sequence> @@ -65,6 +67,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::segments<Sequence const>::type segments(Sequence const& seq) { diff --git a/boost/fusion/sequence/intrinsic/size.hpp b/boost/fusion/sequence/intrinsic/size.hpp index 0a1c1659b2..51e613f693 100644 --- a/boost/fusion/sequence/intrinsic/size.hpp +++ b/boost/fusion/sequence/intrinsic/size.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_SIZE_05052005_0214) #define FUSION_SIZE_05052005_0214 +#include <boost/fusion/support/config.hpp> #include <boost/utility/enable_if.hpp> #include <boost/mpl/if.hpp> #include <boost/mpl/int.hpp> @@ -77,6 +78,7 @@ namespace boost { namespace fusion } template <typename Sequence> + BOOST_FUSION_GPU_ENABLED inline typename result_of::size<Sequence>::type size(Sequence const&) { diff --git a/boost/fusion/sequence/intrinsic/swap.hpp b/boost/fusion/sequence/intrinsic/swap.hpp index 329f812484..05ce9b44b1 100644 --- a/boost/fusion/sequence/intrinsic/swap.hpp +++ b/boost/fusion/sequence/intrinsic/swap.hpp @@ -8,6 +8,7 @@ #if !defined(BOOST_FUSION_SWAP_20070501_1956) #define BOOST_FUSION_SWAP_20070501_1956 +#include <boost/fusion/support/config.hpp> #include <algorithm> #include <boost/fusion/support/is_sequence.hpp> @@ -39,6 +40,7 @@ namespace boost { namespace fusion { }; template<typename Elem> + BOOST_FUSION_GPU_ENABLED void operator()(Elem const& e) const { using std::swap; @@ -48,6 +50,7 @@ namespace boost { namespace fusion { } template<typename Seq1, typename Seq2> + BOOST_FUSION_GPU_ENABLED typename enable_if<mpl::and_<traits::is_sequence<Seq1>, traits::is_sequence<Seq2> >, void>::type swap(Seq1& lhs, Seq2& rhs) { diff --git a/boost/fusion/sequence/intrinsic/value_at.hpp b/boost/fusion/sequence/intrinsic/value_at.hpp index ce314a8362..362669b521 100644 --- a/boost/fusion/sequence/intrinsic/value_at.hpp +++ b/boost/fusion/sequence/intrinsic/value_at.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_VALUE_AT_05052005_0229) #define FUSION_VALUE_AT_05052005_0229 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/int.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/support/tag_of.hpp> diff --git a/boost/fusion/sequence/intrinsic/value_at_key.hpp b/boost/fusion/sequence/intrinsic/value_at_key.hpp index 23d34ee6bc..6d8be3fbcd 100644 --- a/boost/fusion/sequence/intrinsic/value_at_key.hpp +++ b/boost/fusion/sequence/intrinsic/value_at_key.hpp @@ -8,6 +8,7 @@ #if !defined(FUSION_VALUE_AT_KEY_05052005_0229) #define FUSION_VALUE_AT_KEY_05052005_0229 +#include <boost/fusion/support/config.hpp> #include <boost/mpl/int.hpp> #include <boost/fusion/sequence/intrinsic_fwd.hpp> #include <boost/fusion/iterator/value_of_data.hpp> diff --git a/boost/fusion/sequence/intrinsic_fwd.hpp b/boost/fusion/sequence/intrinsic_fwd.hpp index 57409a3917..3b248a04bb 100644 --- a/boost/fusion/sequence/intrinsic_fwd.hpp +++ b/boost/fusion/sequence/intrinsic_fwd.hpp @@ -7,6 +7,7 @@ #if !defined(BOOST_FUSION_SEQUENCE_INTRINSIC_FWD_HPP_INCLUDED) #define BOOST_FUSION_SEQUENCE_INTRINSIC_FWD_HPP_INCLUDED +#include <boost/fusion/support/config.hpp> #include <boost/type_traits/is_const.hpp> #include <boost/utility/enable_if.hpp> #include <boost/fusion/support/is_sequence.hpp> @@ -92,6 +93,7 @@ namespace boost { namespace fusion } template <typename N, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> @@ -100,10 +102,12 @@ namespace boost { namespace fusion at(Sequence& seq); template <typename N, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::at<Sequence const, N>::type at(Sequence const& seq); template <int N, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> @@ -112,18 +116,22 @@ namespace boost { namespace fusion at_c(Sequence& seq); template <int N, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::at_c<Sequence const, N>::type at_c(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::back<Sequence>::type back(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::back<Sequence const>::type back(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_enable_if< traits::is_sequence<Sequence> @@ -132,6 +140,7 @@ namespace boost { namespace fusion begin(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_enable_if< traits::is_sequence<Sequence> @@ -140,10 +149,12 @@ namespace boost { namespace fusion begin(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::empty<Sequence>::type empty(Sequence const&); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_enable_if< traits::is_sequence<Sequence> @@ -152,6 +163,7 @@ namespace boost { namespace fusion end(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_enable_if< traits::is_sequence<Sequence> @@ -160,18 +172,22 @@ namespace boost { namespace fusion end(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::front<Sequence>::type front(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::front<Sequence const>::type front(Sequence const& seq); template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::has_key<Sequence, Key>::type has_key(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> @@ -180,14 +196,17 @@ namespace boost { namespace fusion segments(Sequence& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::segments<Sequence const>::type segments(Sequence const& seq); template <typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::size<Sequence>::type size(Sequence const&); template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename lazy_disable_if< is_const<Sequence> @@ -196,6 +215,7 @@ namespace boost { namespace fusion at_key(Sequence& seq); template <typename Key, typename Sequence> + BOOST_FUSION_GPU_ENABLED typename result_of::at_key<Sequence const, Key>::type at_key(Sequence const& seq); }} diff --git a/boost/fusion/sequence/io.hpp b/boost/fusion/sequence/io.hpp index 1c5925de17..b0baf426c5 100644 --- a/boost/fusion/sequence/io.hpp +++ b/boost/fusion/sequence/io.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_SEQUENCE_IO_10032005_0836) #define FUSION_SEQUENCE_IO_10032005_0836 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/sequence/io/in.hpp> #include <boost/fusion/sequence/io/out.hpp> diff --git a/boost/fusion/sequence/io/detail/in.hpp b/boost/fusion/sequence/io/detail/in.hpp index 38c4dd5fa5..d0a8dc4964 100644 --- a/boost/fusion/sequence/io/detail/in.hpp +++ b/boost/fusion/sequence/io/detail/in.hpp @@ -9,6 +9,7 @@ #if !defined(FUSION_IN_05052005_0121) #define FUSION_IN_05052005_0121 +#include <boost/fusion/support/config.hpp> #include <istream> #include <boost/fusion/sequence/io/detail/manip.hpp> diff --git a/boost/fusion/sequence/io/detail/manip.hpp b/boost/fusion/sequence/io/detail/manip.hpp index 371d0d29f7..8d8c296d3b 100644 --- a/boost/fusion/sequence/io/detail/manip.hpp +++ b/boost/fusion/sequence/io/detail/manip.hpp @@ -9,6 +9,7 @@ #if !defined(FUSION_MANIP_05052005_1200) #define FUSION_MANIP_05052005_1200 +#include <boost/fusion/support/config.hpp> #include <boost/config.hpp> #include <string> #include <vector> @@ -19,15 +20,11 @@ #define FUSION_GET_CHAR_TYPE(T) typename T::char_type #define FUSION_GET_TRAITS_TYPE(T) typename T::traits_type -#if defined (BOOST_NO_TEMPLATED_STREAMS) -#define FUSION_STRING_OF_STREAM(Stream) std::string -#else #define FUSION_STRING_OF_STREAM(Stream) \ std::basic_string< \ FUSION_GET_CHAR_TYPE(Stream) \ , FUSION_GET_TRAITS_TYPE(Stream) \ > -#endif //$$$ these should be part of the public API$$$ //$$$ rename tuple_open, tuple_close and tuple_delimiter to @@ -154,55 +151,6 @@ namespace boost { namespace fusion } // detail -#if defined (BOOST_NO_TEMPLATED_STREAMS) - -#define STD_TUPLE_DEFINE_MANIPULATOR(name) \ - namespace detail \ - { \ - struct name##_tag; \ - \ - struct name##_type \ - { \ - typedef std::string string_type; \ - string_type data; \ - name##_type(const string_type& d): data(d) {} \ - }; \ - \ - template <typename Stream> \ - Stream& operator>>(Stream& s, const name##_type& m) \ - { \ - string_ios_manip<name##_tag, Stream>(s).set(m.data); \ - return s; \ - } \ - \ - template <typename Stream> \ - Stream& operator<<(Stream& s, const name##_type& m) \ - { \ - string_ios_manip<name##_tag, Stream>(s).set(m.data); \ - return s; \ - } \ - } - -#define STD_TUPLE_DEFINE_MANIPULATOR_FUNCTIONS(name) \ - inline detail::name##_type \ - name(const std::string& s) \ - { \ - return detail::name##_type(s); \ - } \ - \ - inline detail::name##_type \ - name(const char* s) \ - { \ - return detail::name##_type(std::string(s)); \ - } \ - \ - inline detail::name##_type \ - name(char c) \ - { \ - return detail::name##_type(std::string(1, c)); \ - } - -#else // defined(BOOST_NO_TEMPLATED_STREAMS) #if defined(BOOST_NO_FUNCTION_TEMPLATE_ORDERING) @@ -299,7 +247,6 @@ namespace boost { namespace fusion } \ } \ -#endif // defined(BOOST_NO_TEMPLATED_STREAMS) STD_TUPLE_DEFINE_MANIPULATOR(tuple_open) STD_TUPLE_DEFINE_MANIPULATOR(tuple_close) diff --git a/boost/fusion/sequence/io/detail/out.hpp b/boost/fusion/sequence/io/detail/out.hpp index 52caf00d7d..7da87a53a4 100644 --- a/boost/fusion/sequence/io/detail/out.hpp +++ b/boost/fusion/sequence/io/detail/out.hpp @@ -9,6 +9,7 @@ #if !defined(FUSION_OUT_05052005_0121) #define FUSION_OUT_05052005_0121 +#include <boost/fusion/support/config.hpp> #include <ostream> #include <boost/fusion/sequence/io/detail/manip.hpp> diff --git a/boost/fusion/sequence/io/in.hpp b/boost/fusion/sequence/io/in.hpp index 73a1fffbff..288c247331 100644 --- a/boost/fusion/sequence/io/in.hpp +++ b/boost/fusion/sequence/io/in.hpp @@ -9,6 +9,7 @@ #if !defined(BOOST_IN_05042005_0120) #define BOOST_IN_05042005_0120 +#include <boost/fusion/support/config.hpp> #include <istream> #include <boost/fusion/sequence/io/detail/in.hpp> #include <boost/fusion/support/is_sequence.hpp> diff --git a/boost/fusion/sequence/io/out.hpp b/boost/fusion/sequence/io/out.hpp index 988a39856a..5c4637d57b 100644 --- a/boost/fusion/sequence/io/out.hpp +++ b/boost/fusion/sequence/io/out.hpp @@ -9,6 +9,7 @@ #if !defined(BOOST_OUT_05042005_0120) #define BOOST_OUT_05042005_0120 +#include <boost/fusion/support/config.hpp> #include <ostream> #include <boost/fusion/sequence/io/detail/out.hpp> #include <boost/fusion/support/is_sequence.hpp> diff --git a/boost/fusion/sequence/sequence_facade.hpp b/boost/fusion/sequence/sequence_facade.hpp index fd6b095eab..ff578a00c5 100644 --- a/boost/fusion/sequence/sequence_facade.hpp +++ b/boost/fusion/sequence/sequence_facade.hpp @@ -7,6 +7,7 @@ #if !defined(FUSION_SEQUENCE_FACADE_09252006_1044) #define FUSION_SEQUENCE_FACADE_09252006_1044 +#include <boost/fusion/support/config.hpp> #include <boost/fusion/support/sequence_base.hpp> #include <boost/mpl/bool.hpp> |