| // { dg-do run { target c++17 xfail *-*-* } } |
| // { dg-require-debug-mode "" } |
| |
| #include <unordered_map> |
| #include <algorithm> |
| #include <testsuite_hooks.h> |
| |
| using test_type = std::unordered_map<int, int>; |
| |
| void |
| test01() |
| { |
| test_type c0{ { 1, 1 }, { 2, 2 }, { 3, 3 }, { 5, 5 }, { 6, 6 } }; |
| test_type c1{ { 1, 1 }, { 2, 2 }, { 3, 3 }, { 4, 4 } }; |
| |
| auto it2 = c1.find(2); |
| auto it4 = c1.find(4); |
| VERIFY( it2->second == 2 ); |
| VERIFY( it4->second == 4 ); |
| |
| c0.merge(std::move(c1)); |
| |
| VERIFY( it2->second == 2 ); |
| VERIFY( it2 != it4 ); // Invalid iterator. |
| } |
| |
| |
| int |
| main() |
| { |
| test01(); |
| } |