Enable C++23

# Conflicts:
#	.github/workflows/ci.yml
This commit is contained in:
Daniel Wolf 2024-12-27 11:15:38 +01:00
parent 3283e66db4
commit a77a5d55ef
1 changed files with 9 additions and 2 deletions

View File

@ -28,10 +28,17 @@ endif()
# Support legacy OS X versions # Support legacy OS X versions
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.10" CACHE STRING "Minimum OS X deployment version") set(CMAKE_OSX_DEPLOYMENT_TARGET "10.10" CACHE STRING "Minimum OS X deployment version")
# Enable C++17 # Enable C++23
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 23)
set(CMAKE_CXX_STANDARD_REQUIRED ON) set(CMAKE_CXX_STANDARD_REQUIRED ON)
# Disable char8_t support (see https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p1423r3.html)
if(compilerIsGccOrClang)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fno-char8_t")
elseif(compilerIsMsvc)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /Zc:char8_t-")
endif()
# Enable POSIX threads # Enable POSIX threads
if(compilerIsGccOrClang) if(compilerIsGccOrClang)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread") set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread")