summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/containers
diff options
context:
space:
mode:
authorEric Fiselier <eric@efcs.ca>2015-03-03 20:10:01 +0000
committerEric Fiselier <eric@efcs.ca>2015-03-03 20:10:01 +0000
commitb3be398c67ddb8d2f98480cc5540607a68b1ac88 (patch)
treeaff366ad6d79b4aaf2b1cbc4c2c471c8c9e53677 /libcxx/test/std/containers
parent2351bec3ead0f0a4b1a5858fc633410e3a0cc095 (diff)
downloadbcm5719-llvm-b3be398c67ddb8d2f98480cc5540607a68b1ac88.tar.gz
bcm5719-llvm-b3be398c67ddb8d2f98480cc5540607a68b1ac88.zip
Allow declaration of map and multimap iterator with incomplete mapped type. Patch from eugenis
llvm-svn: 231119
Diffstat (limited to 'libcxx/test/std/containers')
-rw-r--r--libcxx/test/std/containers/associative/map/map.cons/default_recursive.pass.cpp8
-rw-r--r--libcxx/test/std/containers/associative/multimap/multimap.cons/default_recursive.pass.cpp29
2 files changed, 33 insertions, 4 deletions
diff --git a/libcxx/test/std/containers/associative/map/map.cons/default_recursive.pass.cpp b/libcxx/test/std/containers/associative/map/map.cons/default_recursive.pass.cpp
index 8b393d3c91c..b4b72725fd6 100644
--- a/libcxx/test/std/containers/associative/map/map.cons/default_recursive.pass.cpp
+++ b/libcxx/test/std/containers/associative/map/map.cons/default_recursive.pass.cpp
@@ -15,15 +15,15 @@
#include <map>
-#if !__has_feature(cxx_noexcept)
-
struct X
{
std::map<int, X> m;
+ std::map<int, X>::iterator i;
+ std::map<int, X>::const_iterator ci;
+ std::map<int, X>::reverse_iterator ri;
+ std::map<int, X>::const_reverse_iterator cri;
};
-#endif
-
int main()
{
}
diff --git a/libcxx/test/std/containers/associative/multimap/multimap.cons/default_recursive.pass.cpp b/libcxx/test/std/containers/associative/multimap/multimap.cons/default_recursive.pass.cpp
new file mode 100644
index 00000000000..08ca8a441e3
--- /dev/null
+++ b/libcxx/test/std/containers/associative/multimap/multimap.cons/default_recursive.pass.cpp
@@ -0,0 +1,29 @@
+//===----------------------------------------------------------------------===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is dual licensed under the MIT and the University of Illinois Open
+// Source Licenses. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+// <map>
+
+// class multimap
+
+// multimap();
+
+#include <map>
+
+struct X
+{
+ std::multimap<int, X> m;
+ std::multimap<int, X>::iterator i;
+ std::multimap<int, X>::const_iterator ci;
+ std::multimap<int, X>::reverse_iterator ri;
+ std::multimap<int, X>::const_reverse_iterator cri;
+};
+
+int main()
+{
+}
OpenPOWER on IntegriCloud