diff options
Diffstat (limited to 'libcxx/test/containers/associative/multimap/multimap.ops/count.pass.cpp')
-rw-r--r-- | libcxx/test/containers/associative/multimap/multimap.ops/count.pass.cpp | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/libcxx/test/containers/associative/multimap/multimap.ops/count.pass.cpp b/libcxx/test/containers/associative/multimap/multimap.ops/count.pass.cpp index e707cd70066..b0e4c58873c 100644 --- a/libcxx/test/containers/associative/multimap/multimap.ops/count.pass.cpp +++ b/libcxx/test/containers/associative/multimap/multimap.ops/count.pass.cpp @@ -16,9 +16,12 @@ #include <map> #include <cassert> +#include "../../../min_allocator.h" + int main() { typedef std::pair<const int, double> V; + { typedef std::multimap<int, double> M; { typedef M::size_type R; @@ -50,4 +53,40 @@ int main() r = m.count(10); assert(r == 0); } + } +#if __cplusplus >= 201103L + { + typedef std::multimap<int, double, std::less<int>, min_allocator<std::pair<const int, double>>> M; + { + typedef M::size_type R; + V ar[] = + { + V(5, 1), + V(5, 2), + V(5, 3), + V(7, 1), + V(7, 2), + V(7, 3), + V(9, 1), + V(9, 2), + V(9, 3) + }; + const M m(ar, ar+sizeof(ar)/sizeof(ar[0])); + R r = m.count(4); + assert(r == 0); + r = m.count(5); + assert(r == 3); + r = m.count(6); + assert(r == 0); + r = m.count(7); + assert(r == 3); + r = m.count(8); + assert(r == 0); + r = m.count(9); + assert(r == 3); + r = m.count(10); + assert(r == 0); + } + } +#endif } |