diff options
Diffstat (limited to 'libstdc++-v3/testsuite')
-rw-r--r-- | libstdc++-v3/testsuite/23_containers/unordered_multimap/cons/from_range.cc | 12 | ||||
-rw-r--r-- | libstdc++-v3/testsuite/23_containers/unordered_multiset/cons/from_range.cc | 11 |
2 files changed, 23 insertions, 0 deletions
diff --git a/libstdc++-v3/testsuite/23_containers/unordered_multimap/cons/from_range.cc b/libstdc++-v3/testsuite/23_containers/unordered_multimap/cons/from_range.cc index 9273ef0..381302b 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_multimap/cons/from_range.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_multimap/cons/from_range.cc @@ -2,6 +2,7 @@ #include <algorithm> #include <unordered_map> +#include <ranges> #include <span> #include <testsuite_allocator.h> #include <testsuite_hooks.h> @@ -232,7 +233,18 @@ test_ranges() return true; } +void test_PR119358() { +#ifdef __SIZEOF_INT128__ + auto r = std::views::iota(__int128(0)) + | std::views::take(5); + auto z = std::views::zip(r, r); + std::unordered_multimap<__int128, __int128> m(std::from_range, z); + VERIFY( std::ranges::is_permutation(m, z) ); +#endif +} + int main() { test_ranges(); + test_PR119358(); } diff --git a/libstdc++-v3/testsuite/23_containers/unordered_multiset/cons/from_range.cc b/libstdc++-v3/testsuite/23_containers/unordered_multiset/cons/from_range.cc index fb38876..cb522b0 100644 --- a/libstdc++-v3/testsuite/23_containers/unordered_multiset/cons/from_range.cc +++ b/libstdc++-v3/testsuite/23_containers/unordered_multiset/cons/from_range.cc @@ -2,6 +2,7 @@ #include <algorithm> #include <unordered_set> +#include <ranges> #include <span> #include <testsuite_allocator.h> #include <testsuite_hooks.h> @@ -195,7 +196,17 @@ test_ranges() return true; } +void test_PR119358() { +#ifdef __SIZEOF_INT128__ + auto r = std::views::iota(__int128(0)) + | std::views::take(5); + std::unordered_multiset<__int128> s(std::from_range, r); + VERIFY( std::ranges::is_permutation(s, r) ); +#endif +} + int main() { test_ranges(); + test_PR119358(); } |