diff options
Diffstat (limited to 'boost/fusion/adapted/boost_array/array_iterator.hpp')
-rw-r--r-- | boost/fusion/adapted/boost_array/array_iterator.hpp | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/boost/fusion/adapted/boost_array/array_iterator.hpp b/boost/fusion/adapted/boost_array/array_iterator.hpp index 0e39d45709..ca8da0a22c 100644 --- a/boost/fusion/adapted/boost_array/array_iterator.hpp +++ b/boost/fusion/adapted/boost_array/array_iterator.hpp @@ -32,7 +32,7 @@ namespace boost { namespace fusion typedef mpl::int_<Pos> index; typedef Array array_type; - BOOST_FUSION_GPU_ENABLED + BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED array_iterator(Array& a) : array(a) {} @@ -57,7 +57,7 @@ namespace boost { namespace fusion >::type type; - BOOST_FUSION_GPU_ENABLED + BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED static type call(Iterator const & it) { @@ -72,7 +72,7 @@ namespace boost { namespace fusion typedef typename Iterator::array_type array_type; typedef array_iterator<array_type, index::value + N::value> type; - BOOST_FUSION_GPU_ENABLED + BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED static type call(Iterator const& i) { @@ -95,7 +95,7 @@ namespace boost { namespace fusion >::type type; - BOOST_FUSION_GPU_ENABLED + BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED static type call(I1 const&, I2 const&) { @@ -109,4 +109,13 @@ namespace boost { namespace fusion }; }} +#ifdef BOOST_FUSION_WORKAROUND_FOR_LWG_2408 +namespace std +{ + template <typename Array, int Pos> + struct iterator_traits< ::boost::fusion::array_iterator<Array, Pos> > + { }; +} +#endif + #endif |