Index: test/std/containers/associative/map/map.cons/move_alloc.pass.cpp =================================================================== --- test/std/containers/associative/map/map.cons/move_alloc.pass.cpp +++ test/std/containers/associative/map/map.cons/move_alloc.pass.cpp @@ -178,15 +178,15 @@ M m3(std::move(m1), A()); assert(m3 == m2); LIBCPP_ASSERT(m1.empty()); - assert(Counter_base::gConstructed == num+6); + assert(Counter_base::gConstructed == num+6+(m1.empty()?0:3)); { M m4(std::move(m2), A(5)); - assert(Counter_base::gConstructed == num+6); + assert(Counter_base::gConstructed == num+6+(m1.empty()?0:3)+(m2.empty()?0:3)); assert(m4 == m3); LIBCPP_ASSERT(m2.empty()); } - assert(Counter_base::gConstructed == num+3); + assert(Counter_base::gConstructed == num+3+(m1.empty()?0:3)+(m2.empty()?0:3)); } assert(Counter_base::gConstructed == 0); } Index: test/std/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp =================================================================== --- test/std/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp +++ test/std/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp @@ -178,15 +178,15 @@ M m3(std::move(m1), A()); assert(m3 == m2); LIBCPP_ASSERT(m1.empty()); - assert(Counter_base::gConstructed == 3*num); + assert(Counter_base::gConstructed == (3+(m1.empty()?0:1))*num); { M m4(std::move(m2), A(5)); - assert(Counter_base::gConstructed == 3*num); + assert(Counter_base::gConstructed == (3+(m1.empty()?0:1)+(m2.empty()?0:1))*num); assert(m4 == m3); LIBCPP_ASSERT(m2.empty()); } - assert(Counter_base::gConstructed == 2*num); + assert(Counter_base::gConstructed == (2+(m1.empty()?0:1)+(m2.empty()?0:1))*num); } assert(Counter_base::gConstructed == 0); } Index: test/std/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp =================================================================== --- test/std/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp +++ test/std/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp @@ -172,15 +172,15 @@ M m3(std::move(m1), A()); assert(m3 == m2); LIBCPP_ASSERT(m1.empty()); - assert(Counter_base::gConstructed == 3*num); + assert(Counter_base::gConstructed == (3+(m1.empty()?0:1))*num); { M m4(std::move(m2), A(5)); - assert(Counter_base::gConstructed == 3*num); + assert(Counter_base::gConstructed == (3+(m1.empty()?0:1)+(m2.empty()?0:1))*num); assert(m4 == m3); LIBCPP_ASSERT(m2.empty()); } - assert(Counter_base::gConstructed == 2*num); + assert(Counter_base::gConstructed == (2+(m1.empty()?0:1))*num); } assert(Counter_base::gConstructed == 0); } Index: test/std/containers/associative/set/set.cons/move_alloc.pass.cpp =================================================================== --- test/std/containers/associative/set/set.cons/move_alloc.pass.cpp +++ test/std/containers/associative/set/set.cons/move_alloc.pass.cpp @@ -172,15 +172,15 @@ M m3(std::move(m1), A()); assert(m3 == m2); LIBCPP_ASSERT(m1.empty()); - assert(Counter_base::gConstructed == 6+num); + assert(Counter_base::gConstructed == (m1.empty()?0:3)+6+num); { M m4(std::move(m2), A(5)); - assert(Counter_base::gConstructed == 6+num); + assert(Counter_base::gConstructed == (m1.empty()?0:3)+(m2.empty()?0:3)+6+num); assert(m4 == m3); LIBCPP_ASSERT(m2.empty()); } - assert(Counter_base::gConstructed == 3+num); + assert(Counter_base::gConstructed == (m1.empty()?0:3)+(m2.empty()?0:3)+3+num); } assert(Counter_base::gConstructed == 0); }