forked from boostorg/variant2
Add variant<monostate, T>::emplace tests to fish out -Wmaybe-uninitialized warnings
This commit is contained in:
@@ -288,5 +288,39 @@ int main()
|
|||||||
BOOST_TEST_EQ( Z1::instances, 0 );
|
BOOST_TEST_EQ( Z1::instances, 0 );
|
||||||
BOOST_TEST_EQ( Z2::instances, 0 );
|
BOOST_TEST_EQ( Z2::instances, 0 );
|
||||||
|
|
||||||
|
{
|
||||||
|
variant<monostate, monostate> v;
|
||||||
|
BOOST_TEST_EQ( v.index(), 0 );
|
||||||
|
|
||||||
|
v.emplace<0>();
|
||||||
|
BOOST_TEST_EQ( v.index(), 0 );
|
||||||
|
|
||||||
|
v.emplace<1>();
|
||||||
|
BOOST_TEST_EQ( v.index(), 1 );
|
||||||
|
|
||||||
|
v.emplace<1>();
|
||||||
|
BOOST_TEST_EQ( v.index(), 1 );
|
||||||
|
|
||||||
|
v.emplace<0>();
|
||||||
|
BOOST_TEST_EQ( v.index(), 0 );
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
variant<monostate, int> v;
|
||||||
|
BOOST_TEST_EQ( v.index(), 0 );
|
||||||
|
|
||||||
|
v.emplace<0>();
|
||||||
|
BOOST_TEST_EQ( v.index(), 0 );
|
||||||
|
|
||||||
|
v.emplace<1>();
|
||||||
|
BOOST_TEST_EQ( v.index(), 1 );
|
||||||
|
|
||||||
|
v.emplace<1>();
|
||||||
|
BOOST_TEST_EQ( v.index(), 1 );
|
||||||
|
|
||||||
|
v.emplace<0>();
|
||||||
|
BOOST_TEST_EQ( v.index(), 0 );
|
||||||
|
}
|
||||||
|
|
||||||
return boost::report_errors();
|
return boost::report_errors();
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user