forked from boostorg/mp11
Zero-length arrays are an extension
This commit is contained in:
@@ -907,15 +907,11 @@ template<class... T, class F> BOOST_CONSTEXPR F mp_for_each_impl( mp_list<T...>,
|
|||||||
return (void)A{ ((void)f(T()), 0)... }, std::forward<F>(f);
|
return (void)A{ ((void)f(T()), 0)... }, std::forward<F>(f);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if BOOST_WORKAROUND( BOOST_MSVC, <= 1800 )
|
|
||||||
|
|
||||||
template<class F> BOOST_CONSTEXPR F mp_for_each_impl( mp_list<>, F && f )
|
template<class F> BOOST_CONSTEXPR F mp_for_each_impl( mp_list<>, F && f )
|
||||||
{
|
{
|
||||||
return std::forward<F>(f);
|
return std::forward<F>(f);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
} // namespace detail
|
} // namespace detail
|
||||||
|
|
||||||
template<class L, class F> BOOST_CONSTEXPR F mp_for_each( F && f )
|
template<class L, class F> BOOST_CONSTEXPR F mp_for_each( F && f )
|
||||||
|
@@ -69,15 +69,11 @@ template<class Tp, std::size_t... J, class F> BOOST_CONSTEXPR F tuple_for_each_i
|
|||||||
return (void)A{ ((void)f(std::get<J>(std::forward<Tp>(tp))), 0)... }, std::forward<F>(f);
|
return (void)A{ ((void)f(std::get<J>(std::forward<Tp>(tp))), 0)... }, std::forward<F>(f);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if BOOST_WORKAROUND( BOOST_MSVC, <= 1800 )
|
template<class Tp, class F> BOOST_CONSTEXPR F tuple_for_each_impl( Tp && /*tp*/, integer_sequence<std::size_t>, F && f )
|
||||||
|
|
||||||
template<class Tp, class F> BOOST_CONSTEXPR F tuple_for_each_impl( Tp && tp, integer_sequence<std::size_t>, F && f )
|
|
||||||
{
|
{
|
||||||
return std::forward<F>(f);
|
return std::forward<F>(f);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
|
||||||
|
|
||||||
} // namespace detail
|
} // namespace detail
|
||||||
|
|
||||||
template<class Tp, class F> BOOST_CONSTEXPR F tuple_for_each( Tp && tp, F && f )
|
template<class Tp, class F> BOOST_CONSTEXPR F tuple_for_each( Tp && tp, F && f )
|
||||||
|
Reference in New Issue
Block a user