Toolset update: VS 2022 17.2 Preview 2 #2611
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This updates the Azure VMSS pool to StlBuild-2022-03-17-T1445, containing March 2022's Patch Tuesday, VS 2022 17.2 Preview 2, and Python 3.10.3. (Built with PowerShell 7.2.2.)
The CMake/Ninja versions are unchanged. The README still mentions Python 3.9 as the minimum, as that's what the VS Installer still offers. This is not increasing the minimum
_MSC_VER
required as the internal build still uses an older compiler version.Since switching to Server 2022 in #2496, we've had remarkably well-behaved checks, with virtually no stalled checks. I'd like to try removing the hack of using N - 2 for test parallelism (i.e. 30 for our 32-core VMs).
This removes a number of compiler bug workarounds:
constexpr variant
stores wrong pointer) was fixed in 17.1./scanDependencies
generates incorrect"logical-name"
in JSON output" was fixed in 17.2 Preview 2.fatal error C1116: unrecoverable error importing module
, with<concepts>
" was fixed in 17.2 Preview 2.error C2672: 'count_if': no matching overloaded function found
" was fixed in 17.2 Preview 2.Additionally, 17.2 Preview 2 added
_rotl8
,_rotl16
,_rotr8
,_rotr16
to<intrin0.h>
, so @AlexGuteniev's #2369 can be completed. Note that (unlike the 32/64-bit intrinsics) their second parameters are declared asunsigned char
so we need tostatic_cast
. (Fortunately, the intrinsics have modulo behavior.)Finally, this adds two unrelated small cleanups found while working on Standard Library Modules:
using _CSTD FILE;
in<cstdio>
.using
-declarations in<csignal>
.