diff --git a/include/boost/fusion/view/iterator_range/detail/segmented_iterator_range.hpp b/include/boost/fusion/view/iterator_range/detail/segmented_iterator_range.hpp index a4148c76..4b2c11eb 100644 --- a/include/boost/fusion/view/iterator_range/detail/segmented_iterator_range.hpp +++ b/include/boost/fusion/view/iterator_range/detail/segmented_iterator_range.hpp @@ -411,7 +411,7 @@ namespace boost { namespace fusion { namespace detail typename StackBegin , typename StackEnd , bool SameSegment -#if BOOST_WORKAROUND(BOOST_GCC, < 40000) || BOOST_WORKAROUND(BOOST_GCC, >= 40200) +#if !(BOOST_WORKAROUND(BOOST_GCC, >= 40000) && BOOST_WORKAROUND(BOOST_GCC, < 40200)) = result_of::equal_to< typename StackBegin::car_type::begin_type , typename StackEnd::car_type::begin_type @@ -485,7 +485,7 @@ namespace boost { namespace fusion { namespace detail template struct make_segmented_range_reduce : make_segmented_range_reduce2= 40000) || BOOST_WORKAROUND(BOOST_GCC, < 40200) +#if BOOST_WORKAROUND(BOOST_GCC, >= 40000) && BOOST_WORKAROUND(BOOST_GCC, < 40200) , result_of::equal_to< typename StackBegin::car_type::begin_type , typename StackEnd::car_type::begin_type