aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/testsuite
diff options
context:
space:
mode:
authorbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-26 21:56:17 +0000
committerbkoz <bkoz@138bc75d-0d04-0410-961f-82ee72b054a4>2001-12-26 21:56:17 +0000
commitde04ffae7dee2a22b221a962a0cb7416fab8e415 (patch)
tree5c8e3b9a675d7ddd45af4dcabfbee0c5b9e49ee8 /libstdc++-v3/testsuite
parenta87b92f23feabeaec33b26260f382c1cede9ffe2 (diff)
2001-12-26 Benjamin Kosnik <bkoz@waller.constant.com>
* testsuite/24_iterators/insert_iterator.cc (test02): Add. * testsuite/24_iterators/front_insert_iterator.cc (test02): Add. * testsuite/24_iterators/back_insert_iterator.cc (test02): Add. * testsuite/24_iterators/reverse_iterator.cc (test02): Add. * include/bits/stl_iterator.h (reverse_iterator): Uglify member current to _M_current. (back_insert_iterator): Ulify member container to _M_container. (front_insert_iterator): Same. (insert_iterator): Same. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@48318 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/testsuite')
-rw-r--r--libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc12
-rw-r--r--libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc11
-rw-r--r--libstdc++-v3/testsuite/24_iterators/insert_iterator.cc16
-rw-r--r--libstdc++-v3/testsuite/24_iterators/reverse_iterator.cc25
4 files changed, 64 insertions, 0 deletions
diff --git a/libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc b/libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc
index 87d2d7966ed..60e7c231911 100644
--- a/libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc
+++ b/libstdc++-v3/testsuite/24_iterators/back_insert_iterator.cc
@@ -43,8 +43,20 @@ void test01()
typedef test_iterator::container_type container_type;
}
+
+// Make sure iterator can be instantiated.
+template class std::back_insert_iterator<std::list<int> >;
+
+void test02()
+{
+ typedef std::back_insert_iterator<std::list<int> > iterator_type;
+ std::list<int> li;
+ iterator_type it = std::back_inserter(li);
+}
+
int main()
{
test01();
+ test02();
return 0;
}
diff --git a/libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc b/libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc
index 5e0d04ff1c5..4be3346a5ed 100644
--- a/libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc
+++ b/libstdc++-v3/testsuite/24_iterators/front_insert_iterator.cc
@@ -43,8 +43,19 @@ void test01()
typedef test_iterator::container_type container_type;
}
+// Make sure iterator can be instantiated.
+template class std::front_insert_iterator<std::list<int> >;
+
+void test02()
+{
+ typedef std::front_insert_iterator<std::list<int> > iterator_type;
+ std::list<int> li;
+ iterator_type it = std::front_inserter(li);
+}
+
int main()
{
test01();
+ test02();
return 0;
}
diff --git a/libstdc++-v3/testsuite/24_iterators/insert_iterator.cc b/libstdc++-v3/testsuite/24_iterators/insert_iterator.cc
index aee24700d8a..d3dcd8816a9 100644
--- a/libstdc++-v3/testsuite/24_iterators/insert_iterator.cc
+++ b/libstdc++-v3/testsuite/24_iterators/insert_iterator.cc
@@ -45,8 +45,24 @@ void test01()
typedef test_iterator::container_type container_type;
}
+
+
+// Make sure iterator can be instantiated.
+template class std::insert_iterator<std::list<int> >;
+
+void test02()
+{
+ typedef std::insert_iterator<std::list<int> > iterator_type;
+
+ std::list<int> li;
+ std::list<int>::iterator liit;
+ iterator_type it01(li, liit);
+ iterator_type it02 = std::inserter(li, liit);
+}
+
int main()
{
test01();
+ test02();
return 0;
}
diff --git a/libstdc++-v3/testsuite/24_iterators/reverse_iterator.cc b/libstdc++-v3/testsuite/24_iterators/reverse_iterator.cc
index 606d393bf37..d20a44f8691 100644
--- a/libstdc++-v3/testsuite/24_iterators/reverse_iterator.cc
+++ b/libstdc++-v3/testsuite/24_iterators/reverse_iterator.cc
@@ -46,8 +46,33 @@ void test01()
typedef test_iterator::iterator_category iteratory_category;
}
+
+// Make sure iterator can be instantiated.
+template class std::reverse_iterator<int*>;
+
+void test02()
+{
+ typedef std::reverse_iterator<int*> iterator_type;
+ iterator_type it01;
+ iterator_type it02;
+
+ // Sanity check non-member operators and functions can be instantiated.
+ it01 == it02;
+ it01 != it02;
+ it01 < it02;
+ it01 <= it02;
+ it01 > it02;
+ it01 >= it02;
+ it01 - it02;
+ 5 + it02;
+}
+
+
int main()
{
test01();
+ test02();
return 0;
}
+
+