diff --git a/Modules/Compiler/MSVC-CXX.cmake b/Modules/Compiler/MSVC-CXX.cmake index f30983ed5e..a82e76cc66 100644 --- a/Modules/Compiler/MSVC-CXX.cmake +++ b/Modules/Compiler/MSVC-CXX.cmake @@ -42,7 +42,11 @@ if ((CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 19.0.24215.1 AND set(CMAKE_CXX_STANDARD_LATEST 20) endif() - if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 19.29.30129) + if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 19.43.34808) + set(CMAKE_CXX23_STANDARD_COMPILE_OPTION "-std:c++23preview") + set(CMAKE_CXX23_EXTENSION_COMPILE_OPTION "-std:c++23preview") + set(CMAKE_CXX_STANDARD_LATEST 23) + elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 19.29.30129) set(CMAKE_CXX23_STANDARD_COMPILE_OPTION "-std:c++latest") set(CMAKE_CXX23_EXTENSION_COMPILE_OPTION "-std:c++latest") set(CMAKE_CXX_STANDARD_LATEST 23) diff --git a/Templates/MSBuild/FlagTables/v143_CL.json b/Templates/MSBuild/FlagTables/v143_CL.json index c5f94725e1..f0431a6d04 100644 --- a/Templates/MSBuild/FlagTables/v143_CL.json +++ b/Templates/MSBuild/FlagTables/v143_CL.json @@ -496,6 +496,13 @@ "value": "stdcpp20", "flags": [] }, + { + "name": "LanguageStandard", + "switch": "std:c++23preview", + "comment": "Preview - ISO C++23 Standard", + "value": "stdcpp23", + "flags": [] + }, { "name": "LanguageStandard", "switch": "std:c++latest",