Restrict msvc-12.0 to one tuple in tuple_transform

This commit is contained in:
Peter Dimov committed 2020-05-24 00:56:43 +03:00
1 parent 857ba905e4
commit 917ac15ee1
3 files changed
+73 -7

No files matched your search

+19 -1
View File
@@ -58,6 +58,8 @@ int main()
BOOST_TEST_EQ( std::get<2>(s).value, 5 );
}
#if !BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1900 )
{
std::tuple<T<5>, T<7>, T<9>> s = tuple_transform( F{}, tp, tp2 );
BOOST_TEST_EQ( std::get<0>(s).value, 6 );
@@ -73,6 +75,8 @@ int main()
BOOST_TEST_EQ( std::get<1>(s).value, 8 );
BOOST_TEST_EQ( std::get<2>(s).value, 10 );
}
#endif
}
{
@@ -93,6 +97,8 @@ int main()
BOOST_TEST_EQ( std::get<2>(s).value, 5 );
}
#if !BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1900 )
{
std::tuple<T<5>, T<7>, T<9>> s = tuple_transform( F{}, tp, tp2 );
BOOST_TEST_EQ( std::get<0>(s).value, 6 );
@@ -108,6 +114,8 @@ int main()
BOOST_TEST_EQ( std::get<1>(s).value, 8 );
BOOST_TEST_EQ( std::get<2>(s).value, 10 );
}
#endif
}
{
@@ -126,6 +134,8 @@ int main()
BOOST_TEST_EQ( std::get<1>(s).value, 4 );
}
#if !BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1900 )
{
std::tuple<T<4>, T<6>> s = tuple_transform( F{}, tp, tp2 );
BOOST_TEST_EQ( std::get<0>(s).value, 5 );
@@ -139,6 +149,9 @@ int main()
BOOST_TEST_EQ( std::get<0>(s).value, 5 );
BOOST_TEST_EQ( std::get<1>(s).value, 7 );
}
#endif
}
{
@@ -157,6 +170,8 @@ int main()
BOOST_TEST_EQ( std::get<1>(s).value, 4 );
}
#if !BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1900 )
{
std::tuple<T<4>, T<6>> s = tuple_transform( F{}, tp, tp2 );
BOOST_TEST_EQ( std::get<0>(s).value, 5 );
@@ -170,7 +185,10 @@ int main()
BOOST_TEST_EQ( std::get<0>(s).value, 5 );
BOOST_TEST_EQ( std::get<1>(s).value, 7 );
}
}
#endif
}
{
std::tuple<> tp;
+16
View File
@@ -63,6 +63,8 @@ int main()
BOOST_TEST_EQ( std::get<0>( r ), 2 );
}
#if !BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1900 )
{
std::tuple<int> r = tuple_transform( g, ::make_array( 1 ), std::make_tuple( 2 ) );
@@ -75,6 +77,8 @@ int main()
BOOST_TEST_EQ( std::get<0>( r ), 6 );
}
#endif
//
{
@@ -98,6 +102,8 @@ int main()
BOOST_TEST_EQ( std::get<1>( r ), 3 );
}
#if !BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1900 )
{
std::tuple<int, int> r = tuple_transform( g, ::make_array( 1, 2 ), std::make_pair( 3, 4 ) );
@@ -112,6 +118,8 @@ int main()
BOOST_TEST_EQ( std::get<1>( r ), 12 );
}
#endif
//
{
@@ -130,6 +138,8 @@ int main()
BOOST_TEST_EQ( std::get<2>( r ), 4 );
}
#if !BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1900 )
{
std::tuple<int, int, int> r = tuple_transform( g, ::make_array( 1, 2, 3 ), std::make_tuple( 4, 5, 6 ) );
@@ -146,6 +156,10 @@ int main()
BOOST_TEST_EQ( std::get<2>( r ), 18 );
}
#endif
#if !BOOST_MP11_WORKAROUND( BOOST_MP11_MSVC, < 1900 )
{
using namespace boost::mp11;
@@ -158,5 +172,7 @@ int main()
mp_for_each<Tp>( test_element<decltype(r)>{ r } );
}
#endif
return boost::report_errors();
}