summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/iterators
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/iterators')
-rw-r--r--libcxx/test/std/iterators/iterator.primitives/iterator.operations/next.pass.cpp20
-rw-r--r--libcxx/test/std/iterators/iterator.primitives/iterator.operations/prev.pass.cpp16
2 files changed, 23 insertions, 13 deletions
diff --git a/libcxx/test/std/iterators/iterator.primitives/iterator.operations/next.pass.cpp b/libcxx/test/std/iterators/iterator.primitives/iterator.operations/next.pass.cpp
index 87f79fbd32b..26ec32cab29 100644
--- a/libcxx/test/std/iterators/iterator.primitives/iterator.operations/next.pass.cpp
+++ b/libcxx/test/std/iterators/iterator.primitives/iterator.operations/next.pass.cpp
@@ -55,10 +55,12 @@ int main(int, char**)
{
{
const char* s = "1234567890";
- test(input_iterator<const char*>(s), 10, input_iterator<const char*>(s+10));
- test(forward_iterator<const char*>(s), 10, forward_iterator<const char*>(s+10));
- test(bidirectional_iterator<const char*>(s), 10, bidirectional_iterator<const char*>(s+10));
- test(random_access_iterator<const char*>(s), 10, random_access_iterator<const char*>(s+10));
+ test(input_iterator<const char*>(s), 10, input_iterator<const char*>(s+10));
+ test(forward_iterator<const char*>(s), 10, forward_iterator<const char*>(s+10));
+ test(bidirectional_iterator<const char*>(s), 10, bidirectional_iterator<const char*>(s+10));
+ test(bidirectional_iterator<const char*>(s+10), -10, bidirectional_iterator<const char*>(s));
+ test(random_access_iterator<const char*>(s), 10, random_access_iterator<const char*>(s+10));
+ test(random_access_iterator<const char*>(s+10), -10, random_access_iterator<const char*>(s));
test(s, 10, s+10);
test(input_iterator<const char*>(s), input_iterator<const char*>(s+1));
@@ -70,10 +72,12 @@ int main(int, char**)
#if TEST_STD_VER > 14
{
constexpr const char* s = "1234567890";
- static_assert( constexpr_test(input_iterator<const char*>(s), 10, input_iterator<const char*>(s+10)), "" );
- static_assert( constexpr_test(forward_iterator<const char*>(s), 10, forward_iterator<const char*>(s+10)), "" );
- static_assert( constexpr_test(bidirectional_iterator<const char*>(s), 10, bidirectional_iterator<const char*>(s+10)), "" );
- static_assert( constexpr_test(random_access_iterator<const char*>(s), 10, random_access_iterator<const char*>(s+10)), "" );
+ static_assert( constexpr_test(input_iterator<const char*>(s), 10, input_iterator<const char*>(s+10)), "" );
+ static_assert( constexpr_test(forward_iterator<const char*>(s), 10, forward_iterator<const char*>(s+10)), "" );
+ static_assert( constexpr_test(bidirectional_iterator<const char*>(s), 10, bidirectional_iterator<const char*>(s+10)), "" );
+ static_assert( constexpr_test(bidirectional_iterator<const char*>(s+10), -10, bidirectional_iterator<const char*>(s)), "" );
+ static_assert( constexpr_test(random_access_iterator<const char*>(s), 10, random_access_iterator<const char*>(s+10)), "" );
+ static_assert( constexpr_test(random_access_iterator<const char*>(s+10), -10, random_access_iterator<const char*>(s)), "" );
static_assert( constexpr_test(s, 10, s+10), "" );
static_assert( constexpr_test(input_iterator<const char*>(s), input_iterator<const char*>(s+1)), "" );
diff --git a/libcxx/test/std/iterators/iterator.primitives/iterator.operations/prev.pass.cpp b/libcxx/test/std/iterators/iterator.primitives/iterator.operations/prev.pass.cpp
index 2ee0444ce14..8faaf3d05f0 100644
--- a/libcxx/test/std/iterators/iterator.primitives/iterator.operations/prev.pass.cpp
+++ b/libcxx/test/std/iterators/iterator.primitives/iterator.operations/prev.pass.cpp
@@ -8,7 +8,7 @@
// <iterator>
-// template <BidirectionalIterator Iter>
+// template <InputIterator Iter>
// Iter prev(Iter x, Iter::difference_type n = 1);
#include <iterator>
@@ -53,8 +53,11 @@ int main(int, char**)
{
{
const char* s = "1234567890";
- test(bidirectional_iterator<const char*>(s+10), 10, bidirectional_iterator<const char*>(s));
- test(random_access_iterator<const char*>(s+10), 10, random_access_iterator<const char*>(s));
+ test(forward_iterator <const char*>(s), -10, forward_iterator <const char*>(s+10));
+ test(bidirectional_iterator<const char*>(s+10), 10, bidirectional_iterator<const char*>(s));
+ test(bidirectional_iterator<const char*>(s), -10, bidirectional_iterator<const char*>(s+10));
+ test(random_access_iterator<const char*>(s+10), 10, random_access_iterator<const char*>(s));
+ test(random_access_iterator<const char*>(s), -10, random_access_iterator<const char*>(s+10));
test(s+10, 10, s);
test(bidirectional_iterator<const char*>(s+1), bidirectional_iterator<const char*>(s));
@@ -64,8 +67,11 @@ int main(int, char**)
#if TEST_STD_VER > 14
{
constexpr const char* s = "1234567890";
- static_assert( constexpr_test(bidirectional_iterator<const char*>(s+10), 10, bidirectional_iterator<const char*>(s)), "" );
- static_assert( constexpr_test(random_access_iterator<const char*>(s+10), 10, random_access_iterator<const char*>(s)), "" );
+ static_assert( constexpr_test(forward_iterator <const char*>(s), -10, forward_iterator <const char*>(s+10)), "" );
+ static_assert( constexpr_test(bidirectional_iterator<const char*>(s+10), 10, bidirectional_iterator<const char*>(s)), "" );
+ static_assert( constexpr_test(forward_iterator <const char*>(s), -10, forward_iterator <const char*>(s+10)), "" );
+ static_assert( constexpr_test(random_access_iterator<const char*>(s+10), 10, random_access_iterator<const char*>(s)), "" );
+ static_assert( constexpr_test(forward_iterator <const char*>(s), -10, forward_iterator <const char*>(s+10)), "" );
static_assert( constexpr_test(s+10, 10, s), "" );
static_assert( constexpr_test(bidirectional_iterator<const char*>(s+1), bidirectional_iterator<const char*>(s)), "" );
OpenPOWER on IntegriCloud