From 8084f7a6c9d5ed6059d37abde2c5e4a68cb01157 Mon Sep 17 00:00:00 2001
From: Brad King <brad.king@kitware.com>
Date: Wed, 30 Nov 2016 15:26:19 -0500
Subject: [PATCH] Features: Activate C++ 17 support for Clang 3.5+

---
 Modules/Compiler/Clang-CXX.cmake | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/Modules/Compiler/Clang-CXX.cmake b/Modules/Compiler/Clang-CXX.cmake
index 5ac43a3ddd..d0e2521a32 100644
--- a/Modules/Compiler/Clang-CXX.cmake
+++ b/Modules/Compiler/Clang-CXX.cmake
@@ -31,6 +31,11 @@ elseif(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4)
   set(CMAKE_CXX14_EXTENSION_COMPILE_OPTION "-std=gnu++1y")
 endif()
 
+if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.5)
+  set(CMAKE_CXX17_STANDARD_COMPILE_OPTION "-std=c++1z")
+  set(CMAKE_CXX17_EXTENSION_COMPILE_OPTION "-std=gnu++1z")
+endif()
+
 if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4)
   if (NOT CMAKE_CXX_COMPILER_FORCED)
     if (NOT CMAKE_CXX_STANDARD_COMPUTED_DEFAULT)
@@ -46,6 +51,9 @@ endif()
 macro(cmake_record_cxx_compile_features)
   set(_result 0)
   if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 3.4)
+    if(_result EQUAL 0 AND CMAKE_CXX17_STANDARD_COMPILE_OPTION)
+      _record_compiler_features_cxx(17)
+    endif()
     if(_result EQUAL 0 AND CMAKE_CXX14_STANDARD_COMPILE_OPTION)
       _record_compiler_features_cxx(14)
     endif()
-- 
GitLab