Clang: use -std=c++23 for Clang 17.0+

Canonical flag changed in LLVM commit ba15d186e5cef2620d562c6c9d9a6d570382cd0a.
This commit is contained in:
Raul Tambre
2023-05-08 20:26:39 +03:00
parent b2d689bc5a
commit eacacc70fc

View File

@@ -173,7 +173,10 @@ macro(__compiler_clang_cxx_standards lang)
unset(_clang_version_std17)
if(NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 12.0)
if(NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 17.0)
set(CMAKE_${lang}23_STANDARD_COMPILE_OPTION "-std=c++23")
set(CMAKE_${lang}23_EXTENSION_COMPILE_OPTION "-std=gnu++23")
elseif(NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 12.0)
set(CMAKE_${lang}23_STANDARD_COMPILE_OPTION "-std=c++2b")
set(CMAKE_${lang}23_EXTENSION_COMPILE_OPTION "-std=gnu++2b")
endif()