microsoft / STL

MSVC's implementation of the C++ Standard Library.
Other
9.88k stars 1.45k forks source link

Toolset update: VS 2022 17.11 Preview 2 #4725

Closed StephanTLavavej closed 1 week ago

StephanTLavavej commented 2 weeks ago

:scroll: Changelog

:bulb: Notes

The internal build compiler still needs to be updated (@MahmoudGSaleh is working on it, but it's a time-consuming process), so we still can't require _MSC_VER 1941.

Similarly, a new WinSDK is available, but the internal build isn't using it yet, so I'm not updating the image or the readme to specify it. (This is updated at a slower pace, so it might not happen for a while.)

STL-ASan-CI passed.

:gear: Workarounds removed

StephanTLavavej commented 2 weeks ago

/azp run STL-ASan-CI

azure-pipelines[bot] commented 2 weeks ago
Azure Pipelines successfully started running 1 pipeline(s).
AlexGuteniev commented 2 weeks ago

How can you remove workarounds without updating internal build?

StephanTLavavej commented 2 weeks ago

That's a good question! (And one that I didn't fully think through before submitting this PR :joy_cat:)

In this case I think I'll get away with all of these workaround removals. EDG is updated independently from the checked-in MSVC toolset, and is actually usually a newer version than what's shipping publicly, so the EDG workaround removals should be fine. The <limits.h> workaround removal depends on updated VCRuntime sources that I fixed, which are present in the internal repo (they aren't consumed from the checked-in toolset). So that leaves the ASAN issue, which I think will be okay - the checked-in toolset is used only for the initial build, whereas the tests run with the freshly built compiler. Even though we're building the compiler with ASAN these days (or will shortly, I forget), this bug was specific to the static debug STL, but the compiler doesn't consume the STL statically.

StephanTLavavej commented 2 weeks ago

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