-
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
P1614R2 Adding Spaceship <=> To The Library #1678
P1614R2 Adding Spaceship <=> To The Library #1678
Conversation
feature/spaceship: Merge microsoft#1049 (fix <compare> and simplify guards)
Co-authored-by: Casey Carter <[email protected]> Co-authored-by: Stephan T. Lavavej <[email protected]>
feature/spaceship: Merge VS 2019 16.8 Preview 1 toolset update
feature/spaceship: Merge Standard_D16as_v4 VM update
Co-authored-by: Casey Carter <[email protected]> Co-authored-by: Curtis Bezault <[email protected]>
feature/spaceship: Merge fix for test timing assumption
feature/spaceship: Merge VS 2019 16.8 Preview 2 toolset update
Co-authored-by: Ahana Mukhopadhyay <[email protected]> Co-authored-by: Casey Carter <[email protected]> Co-authored-by: Stephan T. Lavavej <[email protected]>
feature/spaceship: Merge toolset update
feature/spaceship: Merge CI changes to pick up microsoft#1337. This is a clean merge with no additional edits.
feature/spaceship: Merge toolset update
feature/spaceship: Merge toolset update
feature/spaceship: Merge toolset update
feature/spaceship: Merge toolset update
feature/spaceship: Merge CI update
feature/spaceship: Merge toolset update
Co-authored-by: Stephan T. Lavavej <[email protected]>
feature/spaceship: Merge LLVM update
Co-authored-by: Stephan T. Lavavej <[email protected]>
feature/spaceship: Merge toolset update
NOTE: there was much complicated conflict resolution in `<vector>` to reconcile the work on this branch with the `constexpr vector` work from main.
Feature/spaceship: Merge VMSS update
Co-authored-by: Ahana Mukhopadhyay <[email protected]> Co-authored-by: Casey Carter <[email protected]> Co-authored-by: Curtis Bezault <[email protected]> Co-authored-by: Stephan T. Lavavej <[email protected]>
Mirrored to internal MSVC-PR-306138 after I had a successful x86chk build and |
I checked that all my work was correctly merged and it looks it is, with a small minor exception. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The only comments I could find were pathetic whitespace issues - feel free to ignore to avoid rerunning the tests! A monumental amount of work - looks good to me!
_NODISCARD strong_ordering operator<=>(const shared_ptr<_Ty1>& _Left, const shared_ptr<_Ty2>& _Right) noexcept { | ||
return _Left.get() <=> _Right.get(); | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just so I can comment on something, do we need this blank line here? :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll remove these lines in a followup PR 😺
_NODISCARD strong_ordering operator<=>(const shared_ptr<_Ty>& _Left, nullptr_t) noexcept { | ||
return _Left.get() <=> static_cast<typename shared_ptr<_Ty>::element_type*>(nullptr); | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto!
Thanks everyone - we're now a warp-capable civilization! 🚀 🛸 ☄️ |
Fixes #62.
This merges
feature/spaceship
intomain
with one additional commit. That commit fixes the default template argument oftake_view::sentinel
to follow WG21-N4878 [range.take.sentinel], which was the only remaining work for Clause 24 Ranges. (Note thattake_while_view::sentinel
was already doing the right thing.)I plan to mark this feature as complete after merging this PR, with a small amount of remaining work tracked by various issues:
constexpr std::string
; it will need to be extended to applyconstexpr
tostd::string
andstd::string::iterator
's spaceships, or we'll need to file a tracking issue.<chrono>
spaceships.constexpr std::vector
spaceships (when compiler fixes are available)This feature sets a record for the largest number of contributors in the STL's history! (The previous record-holder was C++17
<filesystem>
.) Thanks to everyone who implemented spaceship machinery:🚀 🛸 🪐