[libc++] Replace _LIBCPP_HAS_NO_CONCEPTS with _LIBCPP_STD_VER > 17. NFCI.All supported compilers that support C++20 now support concepts. So, remove`_LIB_LIBCPP_HAS_NO_CONCEPTS` in favor of `_LIBC
[libc++] Replace _LIBCPP_HAS_NO_CONCEPTS with _LIBCPP_STD_VER > 17. NFCI.All supported compilers that support C++20 now support concepts. So, remove`_LIB_LIBCPP_HAS_NO_CONCEPTS` in favor of `_LIBCPP_STD_VER > 17`. Similarly inthe tests, remove `// UNSUPPORTED: libcpp-no-concepts`.Differential Revision: https://reviews.llvm.org/D121528
show more ...
[libcxx][test] tests for strengthened `noexcept` are non-portableDifferential Revision: https://reviews.llvm.org/D117966
[libc++] Fix LWG3533 "Make `base() const&` consistent..."Fixed in counted_iterator and transform_view::iterator.The LWG issue also affected elements_view::iterator, but we haven'timplemented that
[libc++] Fix LWG3533 "Make `base() const&` consistent..."Fixed in counted_iterator and transform_view::iterator.The LWG issue also affected elements_view::iterator, but we haven'timplemented that one yet, and whoever does implement it will getthe fix for free if they just follow the working draft's wording.Drive-by stop calling `.base()` on test iterators in the test,and improve the transform_view::iterator/sentinel tests.Differential Revision: https://reviews.llvm.org/D117329
[libcxx][test] the domain of == for forward iterators is iterator values from the same range* Default-initialized `basic_string` iterators are not portably in the domain of `==`.* Avoid comparing
[libcxx][test] the domain of == for forward iterators is iterator values from the same range* Default-initialized `basic_string` iterators are not portably in the domain of `==`.* Avoid comparing iterators from non-equal string_views which MSVCSTL considers not to be in the domain of equality.* Don't test invalid range `[in, out + N)`.Also silence some truncation warnings by testing with a non-narrowing conversion.Differential Revision: https://reviews.llvm.org/D118049
[libc++][NFC] Fix incorrect synopsis in transform_view test
[libc++] [test] Simplify some ranges tests.Eliminate a bogus operator== overload.Also, check more intermediate steps in the logic we're checking here.Some of this simplification is possible only
[libc++] [test] Simplify some ranges tests.Eliminate a bogus operator== overload.Also, check more intermediate steps in the logic we're checking here.Some of this simplification is possible only now that we've implementedmore of <ranges>.Differential Revision: https://reviews.llvm.org/D116002
[libc++] [test] s/ContiguousView/MoveOnlyView/g. NFCI.The unique (ha!) thing about this range type is that it's move-only.Its contiguity is unsurprising (most of our test ranges are contiguous).D
[libc++] [test] s/ContiguousView/MoveOnlyView/g. NFCI.The unique (ha!) thing about this range type is that it's move-only.Its contiguity is unsurprising (most of our test ranges are contiguous).Discussed in D111231 but committed separately for clarity.
[libc++] [ranges] Uncomment operator<=> in transform and iota iterators.The existing tests for transform_view::iterator weren't quite right,and can be simplified now that we have more of C++20 ava
[libc++] [ranges] Uncomment operator<=> in transform and iota iterators.The existing tests for transform_view::iterator weren't quite right,and can be simplified now that we have more of C++20 available to us.Having done that, let's use the same pattern for iota_view::iteratoras well.Differential Revision: https://reviews.llvm.org/D110774
[libc++][NFC] Refactor tests for transform_viewAdjust the names of helper function objects to represent better whatthey do, as suggested in the review of D107098.
[libc++] Remove Lit annotations for unsupported GCC versions from the test suiteSince we officially don't support several older compilers now, we candrop a lot of the markup in the test suite. Thi
[libc++] Remove Lit annotations for unsupported GCC versions from the test suiteSince we officially don't support several older compilers now, we candrop a lot of the markup in the test suite. This helps keep the testsuite simple and makes sure that UNSUPPORTED annotations don't rot.This is the first patch of a series that will remove annotations forcompilers that are now unsupported.Differential Revision: https://reviews.llvm.org/D107787
[libc++] Disable incomplete library features.Adds a new CMake option to disable the usage of incomplete headers.These incomplete headers are not guaranteed to be ABI stable. Thisoption is intende
[libc++] Disable incomplete library features.Adds a new CMake option to disable the usage of incomplete headers.These incomplete headers are not guaranteed to be ABI stable. Thisoption is intended to be used by vendors so they can avoid their usersfrom code that's not ready for production usage.The option is enabled by default.Differential Revision: https://reviews.llvm.org/D106763
[libcxx][ranges] Add `ranges::transform_view`.Reviewed By: cjdb, ldionne, #libcDifferential Revision: https://reviews.llvm.org/D103056