From baaed67d3a745d42b6b4f534b7fe7075fa2afcdf Mon Sep 17 00:00:00 2001 From: Rageking8 <106309953+Rageking8@users.noreply.github.com> Date: Sun, 3 Aug 2025 21:26:36 +0800 Subject: [PATCH 1/3] Add supported values `17.10`, `17.12`, `17.13`, and `17.14` in "Microsoft C/C++ language conformance by Visual Studio version" --- docs/overview/visual-cpp-language-conformance.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/docs/overview/visual-cpp-language-conformance.md b/docs/overview/visual-cpp-language-conformance.md index b276614c6a..5bfa82df0a 100644 --- a/docs/overview/visual-cpp-language-conformance.md +++ b/docs/overview/visual-cpp-language-conformance.md @@ -570,7 +570,11 @@ A group of papers listed together indicates a Standard feature along with one or **VS 2022 17.2** Supported in Visual Studio 2022 version 17.2.\ **VS 2022 17.3** Supported in Visual Studio 2022 version 17.3.\ **VS 2022 17.4** Supported in Visual Studio 2022 version 17.4.\ -**VS 2022 17.5** Supported in Visual Studio 2022 version 17.5. +**VS 2022 17.5** Supported in Visual Studio 2022 version 17.5.\ +**VS 2022 17.10** Supported in Visual Studio 2022 version 17.10.\ +**VS 2022 17.12** Supported in Visual Studio 2022 version 17.12.\ +**VS 2022 17.13** Supported in Visual Studio 2022 version 17.13.\ +**VS 2022 17.14** Supported in Visual Studio 2022 version 17.14. ### Notes From 55d5393dd53913c2383298344b7bbd44e6d2519d Mon Sep 17 00:00:00 2001 From: Rageking8 <106309953+Rageking8@users.noreply.github.com> Date: Sun, 3 Aug 2025 21:38:03 +0800 Subject: [PATCH 2/3] Update implemented C++23 language features in "Microsoft C/C++ language conformance by Visual Studio version" --- .../visual-cpp-language-conformance.md | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/docs/overview/visual-cpp-language-conformance.md b/docs/overview/visual-cpp-language-conformance.md index 5bfa82df0a..231e470391 100644 --- a/docs/overview/visual-cpp-language-conformance.md +++ b/docs/overview/visual-cpp-language-conformance.md @@ -177,28 +177,28 @@ For details on conformance improvements, see [C++ conformance improvements in Vi |  [`P0735R1 Interaction of memory_order_consume with release sequences`](https://wg21.link/P0735R1) | N/A | |  [`P1236R1 Signed integers are two's complement`](https://wg21.link/P1236R1) | N/A | | **C++23 Core language features** | **Supported** | -|  [`P0330R8 Literal Suffix for (signed) size_t`](https://wg21.link/p0330r8) | no | -|  [`P0847R7 Deducing this`](https://wg21.link/p0847r7) | no | +|  [`P0330R8 Literal Suffix for (signed) size_t`](https://wg21.link/p0330r8) | VS 2022 17.13 [23](#note_23) | +|  [`P0847R7 Deducing this`](https://wg21.link/p0847r7) | VS 2022 17.2 [23](#note_23) | |  [`P0849R8 auto(x): decay-copy in the language`](https://wg21.link/p0849r8) | no | -|  [`P1102R2 Down with ()!`](https://wg21.link/p1102r2) | no | -|  [`P1169R4 static operator()`](https://wg21.link/p1169r4) | no | +|  [`P1102R2 Down with ()!`](https://wg21.link/p1102r2) | VS 2022 17.14 [23](#note_23) | +|  [`P1169R4 static operator()`](https://wg21.link/p1169r4) | VS 2022 17.14 [23](#note_23) | |  [`P1401R5 Narrowing contextual conversions to bool`](https://wg21.link/p1401r5) | no | |  [`P1467R9 Extended floating-point types and standard names`](https://wg21.link/p1467r9) | no | |  [`P1774R8 Portable assumptions`](https://wg21.link/p1774r8) | no | |  [`P1787R6 Declarations and where to find them`](https://wg21.link/p1787r6) | no | |  [`P1847R4 Make declaration order layout mandated`](https://wg21.link/p1847r4) | VS 2022 17.0 [23](#note_23) | -|  [`P1938R3 if consteval`](https://wg21.link/p1938r3) | no | +|  [`P1938R3 if consteval`](https://wg21.link/p1938r3) | VS 2022 17.14 [23](#note_23) | |  [`P1949R7 C++ Identifier Syntax using Unicode Standard Annex 31`](https://wg21.link/p1949r7) | no | |  [`P2029R4 Proposed resolution for core issues 411, 1656, and 2333; numeric and universal character escapes in character and string literals`](https://wg21.link/p2029r4) | no | |  [`P2036R3 Change scope of lambda trailing-return-type`](https://wg21.link/p2036r3) | no | |  [`P2071R2 Named universal character escapes`](https://wg21.link/p2071r2) | no | -|  [`P2128R6 Multidimensional subscript operator`](https://wg21.link/p2128r6) | no | +|  [`P2128R6 Multidimensional subscript operator`](https://wg21.link/p2128r6) | VS 2022 17.12 [23](#note_23) | |  [`P2156R1 Allow Duplicate Attributes`](https://wg21.link/p2156r1) | no | -|  [`P2173R1 Attributes on Lambda-Expressions`](https://wg21.link/p2173r1) | no | +|  [`P2173R1 Attributes on Lambda-Expressions`](https://wg21.link/p2173r1) | VS 2022 17.14 [23](#note_23) | |  [`P2186R2 Remove Garbage Collection Support`](https://wg21.link/p2186r2) | VS 2022 17.0 [23](#note_23) | |  [`P2201R1 Mixed string literal concatenation`](https://wg21.link/p2201r1) | no | |  [`P2223R2 Trimming whitespaces before line splicing`](https://wg21.link/p2223r2) | no | -|  [`P2242R3 Non-literal variables (and labels and gotos) in constexpr functions`](https://wg21.link/p2242r3) | no | +|  [`P2242R3 Non-literal variables (and labels and gotos) in constexpr functions`](https://wg21.link/p2242r3) | VS 2022 17.13 [23](#note_23) | |  [`P2246R1 Character encoding of diagnostic text`](https://wg21.link/p2246r1) | VS 2022 17.0 [23](#note_23) | |  [`P2266R3 Simpler implicit move`](https://wg21.link/p2266r3) | no | |  [`P2280R4 Using unknown pointers and references in constant expressions`](https://wg21.link/p2280r4) | no | @@ -208,17 +208,18 @@ For details on conformance improvements, see [C++ conformance improvements in Vi |  [`P2316R2 Consistent character literal encoding`](https://wg21.link/p2316r2) | VS 2022 17.0 [23](#note_23) | |  [`P2324R2 Labels at the end of compound statements (C compatibility)`](https://wg21.link/p2324r2) | no | |  [`P2327R1 De-deprecating volatile compound operations`](https://wg21.link/p2327r1) | no | -|  [`P2334R1 preprocessing directives elifdef and elifndef`](https://wg21.link/p2334r1) | no | +|  [`P2334R1 preprocessing directives elifdef and elifndef`](https://wg21.link/p2334r1) | VS 2022 17.10 [23](#note_23) | |  [`P2360R0 Extend init-statement to allow alias-declaration`](https://wg21.link/p2360r0) | no | |  [`P2362R3 Remove non-encodable wide character literals and multicharacter wide character literals`](https://wg21.link/p2362r3) | no | |  [`P2437R1 Support for #warning`](https://wg21.link/p2437r1) | no | |  [`P2448R2 Relaxing some constexpr restrictions`](https://wg21.link/p2448r2) | no | |  [`P2460R2 Relax requirements on wchar_t to match existing practices`](https://wg21.link/p2460r2) | no | |  [`P2468R2 The Equality Operator You Are Looking For`](https://wg21.link/p2468r2) | no | -|  [`P2493R0 Missing feature test macros for C++20 core papers`](https://wg21.link/p2493r0) | no | +|  [`P2493R0 Missing feature test macros for C++20 core papers`](https://wg21.link/p2493r0) | VS 2022 17.2 [23](#note_23) | |  [`P2513R4 char8_t Compatibility and Portability Fix`](https://wg21.link/p2513r4) | VS 2022 17.4 [DR](#note_DR) | |  [`P2579R0 Mitigation strategies for P2036 ”Changing scope for lambda trailing-return-type”`](https://wg21.link/p2579r0) | no | |  [`P2582R1 Wording for class template argument deduction from inherited constructors`](https://wg21.link/p2582r1) | no | +|  [`P2589R1 static operator[]`](https://wg21.link/p2589r1) | VS 2022 17.14 [23](#note_23) | ## C++ Standard library features From 14e1a74b8980973eb849ed65a36f27026098fd53 Mon Sep 17 00:00:00 2001 From: Rageking8 <106309953+Rageking8@users.noreply.github.com> Date: Sun, 3 Aug 2025 22:18:08 +0800 Subject: [PATCH 3/3] Change P2493R0 superscript to DR in "Microsoft C/C++ language conformance by Visual Studio version" --- docs/overview/visual-cpp-language-conformance.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/overview/visual-cpp-language-conformance.md b/docs/overview/visual-cpp-language-conformance.md index 231e470391..eeb659159c 100644 --- a/docs/overview/visual-cpp-language-conformance.md +++ b/docs/overview/visual-cpp-language-conformance.md @@ -215,7 +215,7 @@ For details on conformance improvements, see [C++ conformance improvements in Vi |  [`P2448R2 Relaxing some constexpr restrictions`](https://wg21.link/p2448r2) | no | |  [`P2460R2 Relax requirements on wchar_t to match existing practices`](https://wg21.link/p2460r2) | no | |  [`P2468R2 The Equality Operator You Are Looking For`](https://wg21.link/p2468r2) | no | -|  [`P2493R0 Missing feature test macros for C++20 core papers`](https://wg21.link/p2493r0) | VS 2022 17.2 [23](#note_23) | +|  [`P2493R0 Missing feature test macros for C++20 core papers`](https://wg21.link/p2493r0) | VS 2022 17.2 [DR](#note_DR) | |  [`P2513R4 char8_t Compatibility and Portability Fix`](https://wg21.link/p2513r4) | VS 2022 17.4 [DR](#note_DR) | |  [`P2579R0 Mitigation strategies for P2036 ”Changing scope for lambda trailing-return-type”`](https://wg21.link/p2579r0) | no | |  [`P2582R1 Wording for class template argument deduction from inherited constructors`](https://wg21.link/p2582r1) | no |