From caa2deb5469b46c52c2e689084b53a4e8a8b5739 Mon Sep 17 00:00:00 2001 From: Louis St-Amour Date: Fri, 15 May 2020 08:23:22 -0400 Subject: [PATCH] build: Set C++ standard to C++17 from C++14 (#971) This is not yet the case but if our code uses DenseMap, Clang has to be compiled with C++17 to work natively with C++17 host applications --- CMakeLists.txt | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9871073f..e325557f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -72,8 +72,9 @@ if(UNIX AND NOT APPLE) endif() set(CMAKE_EXPORT_COMPILE_COMMANDS ON) -set(CMAKE_CXX_STANDARD 14) -set(CMAKE_C_STANDARD 99) +set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_C_STANDARD 11) # Settings --------------------------------------------------------------------- @@ -391,6 +392,7 @@ if (BUILD_CXX_LANGUAGE_PACKAGE) target_link_libraries(${LIB_CXX_PROJECT_NAME} ${LIB_UTILITY_PROJECT_NAME} ${CLANG_LIBRARIES} ${REQ_LLVM_LIBS}) if (WIN32) + target_compile_definitions(${LIB_CXX_PROJECT_NAME} PRIVATE _SILENCE_ALL_CXX17_DEPRECATION_WARNINGS) # Due to Clang target_link_libraries(${LIB_CXX_PROJECT_NAME} version) endif()