From 2c8ce53efb8524f7d546f4aecaccf17f62cc6db8 Mon Sep 17 00:00:00 2001 From: Peter Dimov Date: Thu, 19 Mar 2020 16:11:39 +0200 Subject: [PATCH] Apply a workaround for msvc-12.0 --- include/boost/mp11/algorithm.hpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/include/boost/mp11/algorithm.hpp b/include/boost/mp11/algorithm.hpp index cc749a9..4ee111b 100644 --- a/include/boost/mp11/algorithm.hpp +++ b/include/boost/mp11/algorithm.hpp @@ -1140,11 +1140,23 @@ template using mp_power_set = typename detail::mp_power_set_impl::ty namespace detail { +#if BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, <= 1800 ) + +template class L, class... T> struct mp_power_set_impl< L > +{ + static_assert( sizeof...(T) == 0, "T... must be empty" ); + using type = L< L<> >; +}; + +#else + template class L> struct mp_power_set_impl< L<> > { using type = L< L<> >; }; +#endif + template class L, class T1, class... T> struct mp_power_set_impl< L > { using S1 = mp_power_set< L >;