diff options
Diffstat (limited to 'boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp')
-rw-r--r-- | boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp b/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp index 9be150433a..da48649a24 100644 --- a/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp +++ b/boost/fusion/sequence/intrinsic/detail/segmented_end_impl.hpp @@ -48,11 +48,18 @@ 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 + BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED + static pair_type make_pair(end_type end) + { + return pair_type(end, end); + } + + BOOST_CONSTEXPR BOOST_FUSION_GPU_ENABLED static type call(Sequence & seq, Stack stack) { - end_type end = fusion::end(fusion::segments(seq)); - return type(pair_type(end, end), stack); + return type( + make_pair(fusion::end(fusion::segments(seq))), + stack); } }; |