Skip to content
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

<utility>: Implement to_underlying() #1828

Merged
merged 13 commits into from Jun 29, 2021

Conversation

SuperWig
Copy link
Contributor

@SuperWig SuperWig commented Apr 12, 2021

As it seems remaining C++20 is nearing completion; I figure now's a good time to get started on C++23, starting with this incredibly small feature.

Fixes #1681.

@StephanTLavavej StephanTLavavej added blocked Something is preventing work on this cxx23 C++23 feature labels Apr 12, 2021
@StephanTLavavej StephanTLavavej added this to Initial Review in Code Reviews via automation Apr 12, 2021
@StephanTLavavej StephanTLavavej moved this from Initial Review to Blocked in Code Reviews Apr 12, 2021
@StephanTLavavej
Copy link
Member

Like #1478, this is blocked by the absence of _HAS_CXX23 in vcruntime. We need to add it there (or yvals_core.h as a workaround), now that /std:c++20 and /std:c++latest are distinguishable options.

@SuperWig
Copy link
Contributor Author

It's things like this that'll stop us from completing C++23 by next year.

@CaseyCarter
Copy link
Member

It's things like this that'll stop us from completing C++23 by next year.

Next year? I thought we were freezing the C++23 ABI in a month or two. 👿

@SuperWig SuperWig marked this pull request as ready for review May 27, 2021 07:08
@SuperWig SuperWig requested a review from a team as a code owner May 27, 2021 07:08
Code Reviews automation moved this from Blocked to Work In Progress May 27, 2021
stl/inc/yvals_core.h Outdated Show resolved Hide resolved
tests/std/tests/P1682R3_to_underlying/test.cpp Outdated Show resolved Hide resolved
@CaseyCarter CaseyCarter removed the blocked Something is preventing work on this label May 27, 2021
@StephanTLavavej StephanTLavavej moved this from Work In Progress to Initial Review in Code Reviews Jun 2, 2021
@CaseyCarter CaseyCarter self-assigned this Jun 9, 2021
@CaseyCarter CaseyCarter self-requested a review June 9, 2021 21:13
@StephanTLavavej
Copy link
Member

This PR needs to merge main and resolve a conflict in yvals_core.h.

stl/inc/yvals_core.h Outdated Show resolved Hide resolved
@SuperWig
Copy link
Contributor Author

Uh, why didn't that skip CI?

@StephanTLavavej
Copy link
Member

Uh, why didn't that skip CI?

Apparently, if that tag appears in a merged commit, it will skip a CI build for main - however, it will not skip a PR build. 😿

Fix wacky license comment formatting.
@CaseyCarter CaseyCarter removed their assignment Jun 21, 2021
@CaseyCarter CaseyCarter moved this from Initial Review to Final Review in Code Reviews Jun 21, 2021
@StephanTLavavej StephanTLavavej moved this from Final Review to Ready To Merge in Code Reviews Jun 22, 2021
@StephanTLavavej StephanTLavavej self-assigned this Jun 24, 2021
@StephanTLavavej StephanTLavavej merged commit 3a27935 into microsoft:main Jun 29, 2021
Code Reviews automation moved this from Ready To Merge to Done Jun 29, 2021
@StephanTLavavej
Copy link
Member

Thanks for implementing this C++23 feature - it may be small, but I think it'll be the favorite of many users. 😻 🎉

@SuperWig SuperWig deleted the to_underlying branch June 29, 2021 10:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cxx23 C++23 feature
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

P1682R3 to_underlying() For Enumerations
3 participants