llvm-project/libcxx/test/std/iterators/iterator.requirements
Arthur O'Dwyer 53406fb691 [libc++] Guard much of std::ranges under _LIBCPP_HAS_NO_INCOMPLETE_RANGES.
The logic here is that we are disabling *only* things in `std::ranges::`.
Everything in `std::` is permitted, including `default_sentinel`, `contiguous_iterator`,
`common_iterator`, `projected`, `swappable`, and so on. Then, we include
anything from `std::ranges::` that is required in order to make those things
work: `ranges::swap`, `ranges::swap_ranges`, `input_range`, `ranges::begin`,
`ranges::iter_move`, and so on. But then that's all. Everything else (including
notably all of the "views" and the `std::views` namespace itself) is still
locked up behind `_LIBCPP_HAS_NO_INCOMPLETE_RANGES`.

Differential Revision: https://reviews.llvm.org/D118736
2022-02-15 10:38:21 -05:00
..
alg.req.ind.copy [libc++][ranges] Implement `indirectly_copyable{,_storable}`. 2022-02-02 13:27:44 -08:00
alg.req.ind.move [libc++][ranges] Implement `indirectly_copyable{,_storable}`. 2022-02-02 13:27:44 -08:00
alg.req.ind.swap [libc++] Remove Lit annotations for unsupported GCC versions from the test suite 2021-08-12 13:30:47 -04:00
alg.req.permutable [libc++][ranges] Implement `permutable`. 2022-02-09 20:34:20 -08:00
bidirectional.iterators
forward.iterators
indirectcallable [libc++] Remove U+00AD SOFT HYPHEN from comments in tests. NFC. 2022-02-14 10:26:25 -05:00
input.iterators
iterator.assoc.types [libc++] Remove Lit annotations for unsupported GCC versions from the test suite 2021-08-12 13:30:47 -04:00
iterator.concepts [libc++][NFC] Use cpp17_output_iterator in tests. 2022-02-04 08:01:20 +01:00
iterator.cust [libc++] Guard much of std::ranges under _LIBCPP_HAS_NO_INCOMPLETE_RANGES. 2022-02-15 10:38:21 -05:00
iterator.iterators
iterator.requirements.general
output.iterators
random.access.iterators