1
0
forked from boostorg/mp11

Bump msvc version checks from <= 1910 to < 1920

This commit is contained in:
Peter Dimov
2017-08-22 22:01:10 +03:00
parent 181c74592f
commit d8628a7c5e
7 changed files with 14 additions and 14 deletions

View File

@@ -67,7 +67,7 @@ template<template<class...> class F, class... L> struct mp_transform_impl
template<template<class...> class F, template<class...> class L, class... T> struct mp_transform_impl<F, L<T...>>
{
#if BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
template<class... U> struct f { using type = F<U...>; };
@@ -82,7 +82,7 @@ template<template<class...> class F, template<class...> class L, class... T> str
template<template<class...> class F, template<class...> class L1, class... T1, template<class...> class L2, class... T2> struct mp_transform_impl<F, L1<T1...>, L2<T2...>>
{
#if BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
template<class... U> struct f { using type = F<U...>; };
@@ -97,7 +97,7 @@ template<template<class...> class F, template<class...> class L1, class... T1, t
template<template<class...> class F, template<class...> class L1, class... T1, template<class...> class L2, class... T2, template<class...> class L3, class... T3> struct mp_transform_impl<F, L1<T1...>, L2<T2...>, L3<T3...>>
{
#if BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
template<class... U> struct f { using type = F<U...>; };
@@ -164,7 +164,7 @@ template<template<class...> class P, template<class...> class F, class... L> str
using Qp = mp_quote<P>;
using Qf = mp_quote<F>;
#if BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
template<class... U> struct _f_ { using type = mp_eval_if_q<mp_not<mp_invoke<Qp, U...>>, mp_first<mp_list<U...>>, Qf, U...>; };
template<class... U> using _f = typename _f_<U...>::type;
@@ -419,7 +419,7 @@ template<class L, template<class...> class P> struct mp_copy_if_impl;
template<template<class...> class L, class... T, template<class...> class P> struct mp_copy_if_impl<L<T...>, P>
{
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
template<class U> struct _f { using type = mp_if<P<U>, mp_list<U>, mp_list<>>; };
using type = mp_append<L<>, typename _f<T>::type...>;
#else
@@ -440,7 +440,7 @@ template<class L, class V> struct mp_remove_impl;
template<template<class...> class L, class... T, class V> struct mp_remove_impl<L<T...>, V>
{
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
template<class U> struct _f { using type = mp_if<std::is_same<U, V>, mp_list<>, mp_list<U>>; };
using type = mp_append<L<>, typename _f<T>::type...>;
#else
@@ -461,7 +461,7 @@ template<class L, template<class...> class P> struct mp_remove_if_impl;
template<template<class...> class L, class... T, template<class...> class P> struct mp_remove_if_impl<L<T...>, P>
{
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
template<class U> struct _f { using type = mp_if<P<U>, mp_list<>, mp_list<U>>; };
using type = mp_append<L<>, typename _f<T>::type...>;
#else

View File

@@ -65,7 +65,7 @@ template<class Q, class... T> using mp_bind_q = mp_bind<Q::template fn, T...>;
// mp_bind_front
template<template<class...> class F, class... T> struct mp_bind_front
{
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1910 && BOOST_MSVC >= 1900 )
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1920 && BOOST_MSVC >= 1900 )
#else
private:
#endif
@@ -85,7 +85,7 @@ template<class Q, class... T> using mp_bind_front_q = mp_bind_front<Q::template
// mp_bind_back
template<template<class...> class F, class... T> struct mp_bind_back
{
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1910 && BOOST_MSVC >= 1900 )
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1920 && BOOST_MSVC >= 1900 )
#else
private:
#endif

View File

@@ -15,7 +15,7 @@
# define BOOST_MP11_NO_CONSTEXPR
#elif defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#elif defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
# define BOOST_MP11_NO_CONSTEXPR

View File

@@ -91,7 +91,7 @@ template<template<class...> class L, class... T, template<class...> class P> str
template<template<class...> class L, class... T, template<class...> class P> struct mp_count_if_impl<L<T...>, P>
{
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
template<class T> struct _f { using type = mp_to_bool<P<T>>; };
using type = mp_size_t<mp_plus<typename _f<T>::type...>::value>;

View File

@@ -87,7 +87,7 @@ template<class... T> using mp_and = typename detail::mp_and_impl<mp_list<T...>>:
#endif
// mp_all<T...>
#if BOOST_WORKAROUND( BOOST_MSVC, <= 1910 ) || BOOST_WORKAROUND( BOOST_GCC, < 70200 )
#if BOOST_WORKAROUND( BOOST_MSVC, < 1920 ) || BOOST_WORKAROUND( BOOST_GCC, < 70200 )
template<class... T> using mp_all = mp_bool< mp_count_if< mp_list<T...>, mp_not >::value == 0 >;

View File

@@ -54,7 +54,7 @@ int main()
#endif
#if !defined( BOOST_NO_CXX14_CONSTEXPR ) && !BOOST_WORKAROUND( BOOST_MSVC, <= 1910 )
#if !defined( BOOST_NO_CXX14_CONSTEXPR ) && !BOOST_WORKAROUND( BOOST_MSVC, < 1920 )
constexpr auto r1 = mp_for_each<mp_list<int, short, char>>( F{0} );
static_assert( r1.s == 123, "r1.s == 123" );

View File

@@ -44,7 +44,7 @@ int main()
BOOST_TEST_TRAIT_TRUE((std::is_same<R1, X<void, char, int>>));
#endif
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, <= 1910 && BOOST_MSVC >= 1900 )
#if defined( BOOST_MSVC ) && BOOST_WORKAROUND( BOOST_MSVC, < 1920 && BOOST_MSVC >= 1900 )
#else
using R2 = Z<Q, void, char, int>;
BOOST_TEST_TRAIT_TRUE((std::is_same<R2, X<void, char, int>>));