1
0
forked from boostorg/mp11

Apply a workaround for msvc-12.0

This commit is contained in:
Peter Dimov
2020-03-19 16:11:39 +02:00
parent 64b9c1f874
commit 2c8ce53efb

View File

@@ -1140,11 +1140,23 @@ template<class L> using mp_power_set = typename detail::mp_power_set_impl<L>::ty
namespace detail namespace detail
{ {
#if BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, <= 1800 )
template<template<class...> class L, class... T> struct mp_power_set_impl< L<T...> >
{
static_assert( sizeof...(T) == 0, "T... must be empty" );
using type = L< L<> >;
};
#else
template<template<class...> class L> struct mp_power_set_impl< L<> > template<template<class...> class L> struct mp_power_set_impl< L<> >
{ {
using type = L< L<> >; using type = L< L<> >;
}; };
#endif
template<template<class...> class L, class T1, class... T> struct mp_power_set_impl< L<T1, T...> > template<template<class...> class L, class T1, class... T> struct mp_power_set_impl< L<T1, T...> >
{ {
using S1 = mp_power_set< L<T...> >; using S1 = mp_power_set< L<T...> >;