llvm-project/libcxx/test/std
Ruslan Arutyunyan 8ce2675b13 [libc++][compare] Implement three_way_comparable[_with] concepts
Implementation of `three_way_comparable` and `three_way_comparable_with` concepts from <compare> header.

Please note that I have temporarily removed `<compare>` header from `<utility>` due to cyclic dependency that prevents using `<concepts>` header in `<compare>` one.

I tried to quickly resolve those issues including applying suggestions from @cjdb and dive deeper by myself but the problem seems more complicated that we thought initially.

I am in progress to prepare the patch with resolving this cyclic dependency between headers but for now I decided to put all that I have to the review to unblock people that depend on that functionality. At first glance the patch with resolving cyclic dependency is not so small (unless I find the way to make it smaller and cleaner) so I don't want to mix everything to one review.

Reviewed By: ldionne, cjdb, #libc, Quuxplusone

Differential Revision: https://reviews.llvm.org/D103478
2021-09-05 12:38:08 -07:00
..
algorithms [libc++] Remove test-suite annotations for unsupported Clang versions 2021-08-20 15:05:13 -04:00
atomics [libc++][NFC] Fix copy-paste errors in tests 2021-08-18 08:54:18 -04:00
concepts [libc++] [test] IWYU in <concepts> tests. 2021-08-09 09:39:36 -04:00
containers [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
depr [libc++] Remove support for CloudABI, which has been abandoned 2021-08-24 14:11:32 -04:00
diagnostics [runtimes] Simplify how we specify XFAIL & friends based on the triple 2021-07-01 14:03:30 -04:00
experimental [libcxx][nfc] Fix the ASAN bots: update expected.pass.cpp. 2021-05-26 14:06:25 -07:00
input.output [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
iterators [libc++] Define insert_iterator::iter with ranges::iterator_t. 2021-09-02 16:15:53 -04:00
language.support [libc++][compare] Implement three_way_comparable[_with] concepts 2021-09-05 12:38:08 -07:00
localization [libc++] Remove support for CloudABI, which has been abandoned 2021-08-24 14:11:32 -04:00
namespace [libc++] Add a libc++ configuration that does not support localization 2020-10-27 14:56:30 -04:00
numerics [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
ranges [libc++] Add an assertion in the subrange constructors with a size hint 2021-09-03 16:04:02 -04:00
re [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
strings [libc++][NFC] Remove uses of 'using namespace std;' in the test suite 2021-09-03 13:15:10 -04:00
thread [SystemZ][z/OS] Avoid assumption for character value in futures tests 2021-08-20 14:03:03 -04:00
utilities [libc++][format] Implement formatters. 2021-09-04 11:41:08 +02:00
pstl [libc++] Take 2: Integrate the PSTL into libc++ 2019-08-05 18:29:14 +00:00