diff --git a/include/boost/mp11/algorithm.hpp b/include/boost/mp11/algorithm.hpp index 1b94f7e..f936a67 100644 --- a/include/boost/mp11/algorithm.hpp +++ b/include/boost/mp11/algorithm.hpp @@ -1247,11 +1247,23 @@ template struct mp_intersperse_impl { }; +#if BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, <= 1800 ) + +template class L, class... T> struct mp_intersperse_impl, S> +{ + static_assert( sizeof...(T) == 0, "T... must be empty" ); + using type = L<>; +}; + +#else + template class L, class S> struct mp_intersperse_impl, S> { using type = L<>; }; +#endif + template class L, class T1, class... T, class S> struct mp_intersperse_impl, S> { using type = mp_append, L...>;