llvm-project/libcxx/include/__iterator
Arthur O'Dwyer fc9248877d [libc++] Assume that __wrap_iter always wraps a fancy pointer.
Not only do we conscientiously avoid using `__wrap_iter` for non-contiguous
iterators (in vector, string, span...) but also we make the assumption
(in regex) that `__wrap_iter<_Iter>` is contiguous for all `_Iter`.

So `__wrap_iter<reverse_iterator<int*>>` should be considered IFNDR,
and every `__wrap_iter` should correctly advertise contiguity in C++20.

Drive-by simplify some type traits.

Reviewed as part of https://reviews.llvm.org/D102781
2021-05-24 17:30:21 -04:00
..
concepts.h [libcxx][gardening] Re-order includes across libcxx. 2021-05-21 13:22:10 -07:00
incrementable_traits.h [libc++][NFC] Remove non-ASCII from comment. 2021-04-26 17:53:20 +02:00
iter_move.h [libc++] Re-apply `std::indirectly_readable` and `std::indirectly_writable` 2021-04-22 11:24:04 -04:00
iterator_traits.h [libc++] Assume that __wrap_iter always wraps a fancy pointer. 2021-05-24 17:30:21 -04:00
readable_traits.h [libc++][NFC] Remove non-ASCII from comment. 2021-04-26 17:53:20 +02:00