- Rename test files to follow conventions better
- Split constructor tests that were in a single file
- Add missing tests for take_view and transform_view's default constructors
- Add missing tests for transform_view's view/function constructor
- Fix include guards
- Mark some tests as being specific to libc++
Details
- Reviewers
• Quuxplusone ldionne - Group Reviewers
Restricted Project - Commits
- rG770602cfa013: [libc++] Various cleanups in the ranges tests
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
Just skimmed, but it LGTM.
Might you be persuaded to do another cleanup patch replacing all the instances of stdr:: with std::ranges::? Two days ago I was grepping for the ranges::iterator_t tests, and was mildly irked to find we "didn't have any" (because we had stdr::iterator_t instead).
libcxx/test/std/ranges/range.access/range.access.begin/incomplete.verify.cpp | ||
---|---|---|
15 | Grammar nit (throughout): "types" should be "type", since it's an array of (one single) incomplete type. | |
22–24 | It might be more to the point to make this an actual SFINAE situation, like template<class T> void f() requires std::invocable<begin_t&, T> {} template<class T> void f() {} https://godbolt.org/z/deP98eMvd Also, calling this 48-line spew a "better" diagnostic is... generous. ;) | |
29 | Tangent: Maybe the message shouldn't end with a period . |
libcxx/test/std/ranges/range.access/range.access.begin/incomplete.verify.cpp | ||
---|---|---|
22–24 | I'll suggest that we tackle whether or not we want this behavior at all as a separate patch. |
Grammar nit (throughout): "types" should be "type", since it's an array of (one single) incomplete type.