Skip to content

Commit 50c0cc8

Browse files
committed
Guard C++23
1 parent fd313e5 commit 50c0cc8

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

libcxx/test/benchmarks/algorithms/modifying/rotate.bench.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,11 @@ int main(int argc, char** argv) {
7272
bm.operator()<std::vector<bool>>("std::rotate(vector<bool>) (by 1/3)", std_rotate, 0.33);
7373
bm.operator()<std::vector<bool>>("std::rotate(vector<bool>) (by 1/2)", std_rotate, 0.50);
7474

75+
#if TEST_STD_VER >= 23 // vector<bool>::iterator is not std::permutable before C++23
7576
bm.operator()<std::vector<bool>>("rng::rotate(vector<bool>) (by 1/4)", std::ranges::rotate, 0.25);
7677
bm.operator()<std::vector<bool>>("rng::rotate(vector<bool>) (by 1/3)", std::ranges::rotate, 0.33);
7778
bm.operator()<std::vector<bool>>("rng::rotate(vector<bool>) (by 1/2)", std::ranges::rotate, 0.50);
79+
#endif
7880
}
7981

8082
// Benchmark {std,ranges}::rotate where we rotate a single element from the beginning to the end of the range.
@@ -108,7 +110,9 @@ int main(int argc, char** argv) {
108110
bm.operator()<std::list<int>>("rng::rotate(list<int>) (1 element forward)", std::ranges::rotate);
109111

110112
bm.operator()<std::vector<bool>>("std::rotate(vector<bool>) (1 element forward)", std_rotate);
113+
#if TEST_STD_VER >= 23 // vector<bool>::iterator is not std::permutable before C++23
111114
bm.operator()<std::vector<bool>>("rng::rotate(vector<bool>) (1 element forward)", std::ranges::rotate);
115+
#endif
112116
}
113117

114118
// Benchmark {std,ranges}::rotate where we rotate a single element from the end to the beginning of the range.
@@ -142,7 +146,9 @@ int main(int argc, char** argv) {
142146
bm.operator()<std::list<int>>("rng::rotate(list<int>) (1 element backward)", std::ranges::rotate);
143147

144148
bm.operator()<std::vector<bool>>("std::rotate(vector<bool>) (1 element backward)", std_rotate);
149+
#if TEST_STD_VER >= 23 // vector<bool>::iterator is not std::permutable before C++23
145150
bm.operator()<std::vector<bool>>("rng::rotate(vector<bool>) (1 element backward)", std::ranges::rotate);
151+
#endif
146152
}
147153

148154
benchmark::Initialize(&argc, argv);

0 commit comments

Comments
 (0)