diff options
-rw-r--r-- | libstdc++-v3/ChangeLog | 3 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/23_containers/vector/modifiers/push_back/49836.cc | 15 |
2 files changed, 15 insertions, 3 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 5a94e80..fda3f4f 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,5 +1,8 @@ 2019-02-05 Jonathan Wakely <jwakely@redhat.com> + * testsuite/23_containers/vector/modifiers/push_back/49836.cc: Restore + use of CopyConsOnlyType, but also test DelAnyAssign for completeness. + PR libstdc++/89130 * include/bits/alloc_traits.h (__is_copy_insertable_impl): Rename to __is_alloc_insertable_impl. Replace single type member with two diff --git a/libstdc++-v3/testsuite/23_containers/vector/modifiers/push_back/49836.cc b/libstdc++-v3/testsuite/23_containers/vector/modifiers/push_back/49836.cc index 1a7d872..3e59781 100644 --- a/libstdc++-v3/testsuite/23_containers/vector/modifiers/push_back/49836.cc +++ b/libstdc++-v3/testsuite/23_containers/vector/modifiers/push_back/49836.cc @@ -24,11 +24,12 @@ // libstdc++/49836 void test01() { - using __gnu_test::assign::DelAnyAssign; + using __gnu_test::CopyConsOnlyType; using __gnu_test::MoveConsOnlyType; + using __gnu_test::assign::DelAnyAssign; - std::vector<DelAnyAssign> v1; - DelAnyAssign t1; + std::vector<CopyConsOnlyType> v1; + CopyConsOnlyType t1(1); v1.push_back(t1); v1.push_back(t1); v1.push_back(t1); @@ -40,6 +41,14 @@ void test01() v2.push_back(std::move(t2)); v2.push_back(std::move(t2)); VERIFY( v2.size() == 3 ); + + std::vector<DelAnyAssign> v3; + DelAnyAssign t3; + v3.push_back(t3); + v3.push_back(t3); + v3.push_back(t3); + VERIFY( v3.size() == 3 ); + } int main() |