aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/testsuite/23_containers/unordered_multiset/insert/multiset_range.cc
diff options
context:
space:
mode:
authorJeff Law <law@redhat.com>2011-11-30 05:16:36 +0000
committerJeff Law <law@redhat.com>2011-11-30 05:16:36 +0000
commit7b5177cc9956a68a50825c443a6d396fdc1af2b5 (patch)
treea6b80dca8f72a2e7640e4d535901e42325b2a954 /libstdc++-v3/testsuite/23_containers/unordered_multiset/insert/multiset_range.cc
parent6377b0d9b395f395e25bd4a030a9056171433061 (diff)
parentee4a734e5eece9824adc2a26e518c99bbdbe802e (diff)
Weekly merge from trunk. No regressions.reload-v2a
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/reload-v2a@181834 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/testsuite/23_containers/unordered_multiset/insert/multiset_range.cc')
-rw-r--r--libstdc++-v3/testsuite/23_containers/unordered_multiset/insert/multiset_range.cc19
1 files changed, 17 insertions, 2 deletions
diff --git a/libstdc++-v3/testsuite/23_containers/unordered_multiset/insert/multiset_range.cc b/libstdc++-v3/testsuite/23_containers/unordered_multiset/insert/multiset_range.cc
index 571346fd5c2..59cd8c9857b 100644
--- a/libstdc++-v3/testsuite/23_containers/unordered_multiset/insert/multiset_range.cc
+++ b/libstdc++-v3/testsuite/23_containers/unordered_multiset/insert/multiset_range.cc
@@ -25,6 +25,19 @@
#include <unordered_set>
#include <testsuite_hooks.h>
+namespace
+{
+ template <typename _Tp>
+ std::size_t
+ get_nb_bucket_elems(const std::unordered_multiset<_Tp>& us)
+ {
+ std::size_t nb = 0;
+ for (std::size_t b = 0; b != us.bucket_count(); ++b)
+ nb += us.bucket_size(b);
+ return nb;
+ }
+}
+
void test01()
{
bool test __attribute__((unused)) = true;
@@ -38,8 +51,9 @@ void test01()
"magenta", "yellow", "orange", "pink", "gray" };
s.insert(A+0, A+N);
- VERIFY(s.size() == static_cast<unsigned int>(N));
- VERIFY(std::distance(s.begin(), s.end()) == N);
+ VERIFY( s.size() == static_cast<unsigned int>(N) );
+ VERIFY( std::distance(s.begin(), s.end()) == N );
+ VERIFY( get_nb_bucket_elems(s) == N );
for (int i = 0; i < N; ++i) {
std::string str = A[i];
@@ -62,6 +76,7 @@ void test02()
s.insert(A+0, A+N);
VERIFY(s.size() == static_cast<unsigned int>(N));
VERIFY(std::distance(s.begin(), s.end()) == N);
+ VERIFY( get_nb_bucket_elems(s) == N );
VERIFY(std::count(s.begin(), s.end(), 2) == 1);
VERIFY(std::count(s.begin(), s.end(), 3) == 1);