Skip to content

Split <chrono> into <__msvc_chrono.hpp> - #2604

Merged
Stephan T. Lavavej (StephanTLavavej) merged 3 commits into
microsoft:mainfrom
StephanTLavavej:tiny-chrono
Mar 19, 2022
Merged

Split <chrono> into <__msvc_chrono.hpp>#2604
Stephan T. Lavavej (StephanTLavavej) merged 3 commits into
microsoft:mainfrom
StephanTLavavej:tiny-chrono

Conversation

@StephanTLavavej

Copy link
Copy Markdown
Member

This contains S. B. Tam (@cpplearner)'s commits in #2600 to split <chrono> into a smaller internal header containing classic machinery (a strategy used successfully in the past), with an additional commit to rename this header to follow our modern naming convention.

(<__msvc_meow.hpp> clearly indicates "internal, implementation-specific, not for public consumption", and all recently added headers have followed that pattern. <xmeow.h> is less obviously internal. We don't use extensionless <xmeow> anymore because that requires changing the IDE's lists of extensionless headers.)

This is a separate PR because we want to prioritize the header surgery for VS 2022 17.2 Preview 3 (low risk, high throughput gain). Thanks again to S. B. Tam (@cpplearner) who did all the hard work here - I reviewed the split to make sure nothing was lost or altered unintentionally. (The only thing being dropped with a single comment // [time.clock.file], which I'm perfectly happy with.)

Works towards #2003.

⚠️ Note when merging:

Microsoft-internal build/setup changes will be necessary for this new header.

@StephanTLavavej

This comment was marked as resolved.

@StephanTLavavej

Copy link
Copy Markdown
Member Author

I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chrono C++20 chrono throughput Must compile faster

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants