summaryrefslogtreecommitdiffstats
path: root/libcxx/test/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp')
-rw-r--r--libcxx/test/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp32
1 files changed, 32 insertions, 0 deletions
diff --git a/libcxx/test/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp b/libcxx/test/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
index 9b4992bdb09..1ae4634a5b7 100644
--- a/libcxx/test/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
+++ b/libcxx/test/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
@@ -14,6 +14,10 @@
// template <class InputIterator>
// set(InputIterator first, InputIterator last,
// const value_compare& comp, const allocator_type& a);
+//
+// template <class InputIterator>
+// set(InputIterator first, InputIterator last,
+// const allocator_type& a);
#include <set>
#include <cassert>
@@ -49,4 +53,32 @@ int main()
assert(*m.begin() == 1);
assert(*next(m.begin()) == 2);
assert(*next(m.begin(), 2) == 3);
+#if _LIBCPP_STD_VER > 11
+ {
+ typedef int V;
+ V ar[] =
+ {
+ 1,
+ 1,
+ 1,
+ 2,
+ 2,
+ 2,
+ 3,
+ 3,
+ 3
+ };
+ typedef test_allocator<V> A;
+ typedef test_compare<std::less<int> > C;
+ A a(7);
+ std::set<V, C, A> m(ar, ar+sizeof(ar)/sizeof(ar[0]), a);
+
+ assert(m.size() == 3);
+ assert(distance(m.begin(), m.end()) == 3);
+ assert(*m.begin() == 1);
+ assert(*next(m.begin()) == 2);
+ assert(*next(m.begin(), 2) == 3);
+ assert(m.get_allocator() == a);
+ }
+#endif
}
OpenPOWER on IntegriCloud