Skip to content

Commit 5704a7b

Browse files
author
anonymouspc
committed
list is not constexpr until C++26, thus not testable in C++23
1 parent a33c1be commit 5704a7b

File tree

3 files changed

+25
-30
lines changed

3 files changed

+25
-30
lines changed

libcxx/test/libcxx/ranges/range.adaptors/range.chunk/range.chunk.view/end.nodiscard.verify.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,6 @@ void test() {
2121

2222
// clang-format off
2323
view.end(); // expected-warning {{ignoring return value of function declared with 'nodiscard' attribute}}
24-
td::as_const(view).end(); // expected-warning {{ignoring return value of function declared with 'nodiscard' attribute}}
24+
std::as_const(view).end(); // expected-warning {{ignoring return value of function declared with 'nodiscard' attribute}}
2525
// clang-format on
2626
}

libcxx/test/std/ranges/range.adaptors/range.chunk/begin.pass.cpp

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -14,41 +14,41 @@
1414

1515
#include <algorithm>
1616
#include <cassert>
17-
#include <list>
17+
#include <vector>
1818

1919
#include "test_range.h"
2020

2121
constexpr bool test() {
22-
std::list<int> full_list = {1, 1, 1, 2, 2, 2, 3, 3};
23-
std::list<int> empty_list = {};
22+
std::vector<int> full_vector = {1, 1, 1, 2, 2, 2, 3, 3};
23+
std::vector<int> empty_vector = {};
2424

2525
// Test `chunk_view.begin()`
2626
{
27-
auto view = full_list | std::views::chunk(3);
27+
auto view = full_vector | std::views::chunk(3);
2828
auto it = view.begin();
29-
assert(std::ranges::equal(*it, std::list{1, 1, 1}));
30-
assert(std::ranges::equal(*++it, std::list{2, 2, 2}));
31-
assert(std::ranges::equal(*++it, std::list{3, 3})); // The last chunk has only 2 elements.
29+
assert(std::ranges::equal(*it, std::vector{1, 1, 1}));
30+
assert(std::ranges::equal(*++it, std::vector{2, 2, 2}));
31+
assert(std::ranges::equal(*++it, std::vector{3, 3})); // The last chunk has only 2 elements.
3232
assert(++it == view.end()); // Reaches end.
3333

34-
view = full_list | std::views::chunk(5);
34+
view = full_vector | std::views::chunk(5);
3535
it = view.begin();
36-
assert(std::ranges::equal(*it, std::list{1, 1, 1, 2, 2}));
37-
assert(std::ranges::equal(*++it, std::list{2, 3, 3}));
36+
assert(std::ranges::equal(*it, std::vector{1, 1, 1, 2, 2}));
37+
assert(std::ranges::equal(*++it, std::vector{2, 3, 3}));
3838
}
3939

4040
// Test `empty_chunk_view.begin()`
4141
{
42-
auto view = empty_list | std::views::chunk(3);
42+
auto view = empty_vector | std::views::chunk(3);
4343
assert(view.size() == 0);
4444
assert(view.begin() == view.end());
4545
}
4646

4747
// Test `small_view_with_big_chunk.begin()`
4848
{
49-
auto view = full_list | std::views::chunk(314159);
49+
auto view = full_vector | std::views::chunk(314159);
5050
assert(view.size() == 1);
51-
assert(std::ranges::equal(*view.begin(), full_list));
51+
assert(std::ranges::equal(*view.begin(), full_vector));
5252
assert(++view.begin() == view.end());
5353
}
5454

libcxx/test/std/ranges/range.adaptors/range.chunk/end.pass.cpp

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,41 +15,36 @@
1515
#include <algorithm>
1616
#include <cassert>
1717
#include <concepts>
18-
#include <forward_list>
19-
#include <list>
18+
#include <vector>
2019

2120
#include "test_range.h"
2221
#include "types.h"
2322

2423
constexpr bool test() {
25-
std::list list = {1, 1, 1, 2, 2, 2, 3, 3};
26-
std::forward_list forward_list = {1, 1, 1, 2, 2, 2, 3, 3};
24+
std::vector vector = {1, 1, 1, 2, 2, 2, 3, 3};
2725

2826
// Test `chunk_view.end()`
2927
{
30-
auto view = list | std::views::chunk(3);
28+
auto view = vector | std::views::chunk(3);
3129
auto it = view.end();
32-
assert(std::ranges::equal(*--it, std::list{3, 3})); // We can adjust the tailing chunk-size.
33-
assert(std::ranges::equal(*--it, std::list{2, 2, 2}));
34-
assert(std::ranges::equal(*--it, std::list{1, 1, 1}));
30+
assert(std::ranges::equal(*--it, std::vector{3, 3})); // We can adjust the tailing chunk-size.
31+
assert(std::ranges::equal(*--it, std::vector{2, 2, 2}));
32+
assert(std::ranges::equal(*--it, std::vector{1, 1, 1}));
3533
}
3634

3735
// Test `not_sized_chunk_view.end()`
3836
{
39-
auto not_sized_list = not_sized_view(list | std::views::all);
40-
auto view = not_sized_list | std::views::chunk(4);
37+
auto not_sized_vector = not_sized_view(vector | std::views::all);
38+
auto view = not_sized_vector | std::views::chunk(4);
4139
static_assert(std::ranges::bidirectional_range<decltype(view)>);
4240
static_assert(!std::ranges::sized_range<decltype(view)>);
43-
static_assert(
44-
std::same_as<
45-
decltype(view.end()),
46-
std::
47-
default_sentinel_t>); // We cannot handle the tailing chunk without size info, so we forbids one to derement from end().
41+
// We cannot handle the tailing chunk without size info, so we forbids one to derement from end().
42+
static_assert(std::same_as< decltype(view.end()), std::default_sentinel_t>);
4843
}
4944

5045
// Test `forward_chunk_view.end()`
5146
{
52-
auto view = list | std::views::chunk(5);
47+
auto view = vector | std::views::chunk(5);
5348
assert(++(++view.begin()) == view.end());
5449
}
5550

0 commit comments

Comments
 (0)