-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
P0768R1 Library Support For The Spaceship Comparison Operator <=> #64
Comments
Remaining work: (Note that components of P0768R1 superseded by P1614R2 are not included here)
|
WG21-P1614 "The Mothership has Landed" added `==` operators to the comparison category types (`weak_equality`, `strong_equality`, `partial_ordering`, `weak_ordering`, and `strong_ordering`) defined in `<compare>`. This PR implements those operators to bring the comparison category types up to spec once again. It also implements P1614R2's removal of operators that rewrite into calls to `operator==(X, nullptr_t)` for each comparison category type `X`. Drive-by changes: * Move the TODO list of tasks for WG21-P0768 "Library Support for the Spaceship (Comparison) Operator" completion out of `<compare>` and into microsoft#64 * Remove the `#if 0 // Not yet implemented` block from `<compare>`
WG21-P1614 "The Mothership has Landed" added `==` operators to the comparison category types (`weak_equality`, `strong_equality`, `partial_ordering`, `weak_ordering`, and `strong_ordering`) defined in `<compare>`. This PR implements those operators to bring the comparison category types up to spec once again. It also implements P1614R2's removal of operators that rewrite into calls to `operator==(X, nullptr_t)` for each comparison category type `X`. Drive-by changes: * Move the TODO list of tasks for WG21-P0768 "Library Support for the Spaceship (Comparison) Operator" completion out of `<compare>` and into #64 * Remove the `#if 0 // Not yet implemented` block from `<compare>`
Implement WG21-P1959 Removing `weak_equality` And `strong_equality`, working towards #64.
I have |
@CaseyCarter, looking at your checklist above, is this paper complete except for the feature-test macro update? |
I struck features from the list that were removed or replaced by later proposals. That makes sense for removals, but for replacements we should implement the replacement feature before defining the feature-test macro. I've updated the list to mention both removals and replacements. TLDR: We still need to define the |
Good catch, @AdamBucior. This was simply an oversight. I've added a mention of P1959R0 to the 16.5 section of the Changelog. Thanks! |
P0768R1 Library Support For The Spaceship Comparison Operator
<=>
P1959R0 Removing
weak_equality
Andstrong_equality
This was partially implemented in VS 2019 16.0, but some work remains to be done.
This deprecates
rel_ops
.Feature-test macro added by WG21-P1353 "Missing Feature Test Macros" (note that this value will be increased by #62 WG21-P1614 "Adding Spaceship
<=>
To The Library"):#define __cpp_lib_three_way_comparison 201711L
The text was updated successfully, but these errors were encountered: