Skip to content

Commit 7f0f35d

Browse files
Toolset update: VS 2022 17.12 Preview 1 (#4889)
1 parent 0619755 commit 7f0f35d

File tree

6 files changed

+13
-20
lines changed

6 files changed

+13
-20
lines changed

README.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -141,15 +141,15 @@ Just try to follow these rules, so we can spend more time fixing bugs and implem
141141

142142
# How To Build With The Visual Studio IDE
143143

144-
1. Install Visual Studio 2022 17.11 Preview 3 or later.
144+
1. Install Visual Studio 2022 17.12 Preview 1 or later.
145145
* Select "Windows 11 SDK (10.0.22621.0)" in the VS Installer.
146146
* Select "MSVC v143 - VS 2022 C++ ARM64/ARM64EC build tools (Latest)" in the VS Installer
147147
if you would like to build the ARM64/ARM64EC target.
148148
* Select "MSVC v143 - VS 2022 C++ ARM build tools (Latest)" in the VS Installer
149149
if you would like to build the ARM target.
150150
* We recommend selecting "C++ CMake tools for Windows" in the VS Installer.
151151
This will ensure that you're using supported versions of CMake and Ninja.
152-
* Otherwise, install [CMake][] 3.29.0 or later, and [Ninja][] 1.11.0 or later.
152+
* Otherwise, install [CMake][] 3.29.0 or later, and [Ninja][] 1.12.1 or later.
153153
* Make sure [Python][] 3.12 or later is available to CMake.
154154
2. Open Visual Studio, and choose the "Clone or check out code" option. Enter the URL of this repository,
155155
`https://github.com/microsoft/STL`.
@@ -160,15 +160,15 @@ Just try to follow these rules, so we can spend more time fixing bugs and implem
160160

161161
# How To Build With A Native Tools Command Prompt
162162

163-
1. Install Visual Studio 2022 17.11 Preview 3 or later.
163+
1. Install Visual Studio 2022 17.12 Preview 1 or later.
164164
* Select "Windows 11 SDK (10.0.22621.0)" in the VS Installer.
165165
* Select "MSVC v143 - VS 2022 C++ ARM64/ARM64EC build tools (Latest)" in the VS Installer
166166
if you would like to build the ARM64/ARM64EC target.
167167
* Select "MSVC v143 - VS 2022 C++ ARM build tools (Latest)" in the VS Installer
168168
if you would like to build the ARM target.
169169
* We recommend selecting "C++ CMake tools for Windows" in the VS Installer.
170170
This will ensure that you're using supported versions of CMake and Ninja.
171-
* Otherwise, install [CMake][] 3.29.0 or later, and [Ninja][] 1.11.0 or later.
171+
* Otherwise, install [CMake][] 3.29.0 or later, and [Ninja][] 1.12.1 or later.
172172
* Make sure [Python][] 3.12 or later is available to CMake.
173173
2. Open a command prompt.
174174
3. Change directories to a location where you'd like a clone of this STL repository.

azure-devops/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
variables:
77
- name: poolName
8-
value: 'StlBuild-2024-07-09T1614-Pool'
8+
value: 'StlBuild-2024-08-14T0018-Pool'
99
readonly: true
1010
- name: poolDemands
1111
value: 'EnableSpotVM -equals false'

azure-devops/provision-image.ps1

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@ foreach ($workload in $VisualStudioWorkloads) {
4040
}
4141

4242
# https://github.com/PowerShell/PowerShell/releases/latest
43-
$PowerShellUrl = 'https://github.com/PowerShell/PowerShell/releases/download/v7.4.3/PowerShell-7.4.3-win-x64.msi'
43+
$PowerShellUrl = 'https://github.com/PowerShell/PowerShell/releases/download/v7.4.4/PowerShell-7.4.4-win-x64.msi'
4444
$PowerShellArgs = @('/quiet', '/norestart')
4545

46-
$PythonUrl = 'https://www.python.org/ftp/python/3.12.4/python-3.12.4-amd64.exe'
46+
$PythonUrl = 'https://www.python.org/ftp/python/3.12.5/python-3.12.5-amd64.exe'
4747
$PythonArgs = @('/quiet', 'InstallAllUsers=1', 'PrependPath=1', 'CompileAll=1', 'Include_doc=0')
4848

4949
$CudaUrl = 'https://developer.download.nvidia.com/compute/cuda/12.4.0/local_installers/cuda_12.4.0_551.61_windows.exe'

stl/inc/type_traits

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1295,23 +1295,14 @@ template <class _Ty1, class _Ty2>
12951295
using _Conditional_type = decltype(false ? _STD declval<_Ty1>() : _STD declval<_Ty2>());
12961296

12971297
#if _HAS_CXX20
1298-
#if defined(__clang__) || defined(__EDG__) // TRANSITION, DevCom-10648215
12991298
template <class _Ty1, class _Ty2>
1300-
#else // ^^^ no workaround / workaround vvv
1301-
template <class _Ty1, class _Ty2, class = void>
1302-
#endif // ^^^ workaround ^^^
1303-
struct _Const_lvalue_cond_oper {
1304-
};
1299+
struct _Const_lvalue_cond_oper {};
13051300

13061301
// N4950 [meta.trans.other]/3.3.4 (per the proposed resolution of LWG-3205): "Otherwise, if remove_cvref_t</**/> denotes
13071302
// a type..."
13081303
template <class _Ty1, class _Ty2>
1309-
#if defined(__clang__) || defined(__EDG__) // TRANSITION, DevCom-10648215
13101304
requires requires { typename _Conditional_type<const _Ty1&, const _Ty2&>; }
13111305
struct _Const_lvalue_cond_oper<_Ty1, _Ty2> {
1312-
#else // ^^^ no workaround / workaround vvv
1313-
struct _Const_lvalue_cond_oper<_Ty1, _Ty2, void_t<_Conditional_type<const _Ty1&, const _Ty2&>>> {
1314-
#endif // ^^^ workaround ^^^
13151306
using type = remove_cvref_t<_Conditional_type<const _Ty1&, const _Ty2&>>;
13161307
};
13171308

stl/src/vector_algorithms.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2087,7 +2087,6 @@ namespace {
20872087
_Advance_bytes(_First, sizeof(_Ty));
20882088
}
20892089

2090-
#pragma loop(no_vector) // TRANSITION, VSO-2093761: work around a compiler back-end assertion
20912090
for (auto _Ptr = static_cast<const _Ty*>(_First); _Ptr != _Last; ++_Ptr) {
20922091
if constexpr ((_Mode & _Mode_min) != 0) {
20932092
if (*_Ptr < _Cur_min_val) {

tests/libcxx/expected_results.txt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -228,6 +228,9 @@ std/atomics/atomics.types.generic/atomics.types.float/compare_exchange_strong.pa
228228
std/atomics/atomics.types.generic/atomics.types.float/compare_exchange_weak.pass.cpp:1 SKIPPED
229229
std/input.output/syncstream/osyncstream/thread/several_threads.pass.cpp:1 SKIPPED
230230

231+
# VSO-2164191 "[ASAN][STL] Interception breaks strtoll"
232+
std/strings/string.conversions/stoll.pass.cpp:1 FAIL
233+
231234

232235
# *** MISSING STL FEATURES ***
233236
# Missing mbrtoc8 and c8rtomb
@@ -318,7 +321,7 @@ std/utilities/utility/pairs/pairs.spec/three_way_comparison.pass.cpp:1 FAIL
318321
std/utilities/variant/variant.relops/three_way.pass.cpp:0 FAIL
319322
std/utilities/variant/variant.relops/three_way.pass.cpp:1 FAIL
320323

321-
# DevCom-1626727 VSO-1457307: bogus "failure was caused by a conversion from void* to a pointer-to-object type" for conversion to void
324+
# VSO-2188243 constexpr ICE in C1XX adapt::to_prvalue
322325
std/algorithms/robust_re_difference_type.compile.pass.cpp:0 FAIL
323326
std/algorithms/robust_re_difference_type.compile.pass.cpp:1 FAIL
324327

@@ -345,7 +348,7 @@ std/concepts/concepts.compare/concept.equalitycomparable/equality_comparable_wit
345348
std/containers/sequences/array/array.cons/initialization.pass.cpp:0 FAIL
346349
std/containers/sequences/array/array.cons/initialization.pass.cpp:1 FAIL
347350

348-
# DevCom-10456523: MSVC incorrectly raises constant evaluation failure in pointer comparison
351+
# DevCom-10456523 VSO-1880569: MSVC incorrectly raises constant evaluation failure in pointer comparison
349352
std/algorithms/robust_against_adl.compile.pass.cpp:0 FAIL
350353
std/algorithms/robust_against_adl.compile.pass.cpp:1 FAIL
351354

0 commit comments

Comments
 (0)