Browse Source

Merge topic 'intel-std'

80d4bd5370 IntelLLVM: Record C++26 support

Acked-by: Kitware Robot <[email protected]>
Merge-request: !9511
Brad King 1 year ago
parent
commit
646c921ce6
1 changed files with 23 additions and 2 deletions
  1. 23 2
      Modules/Compiler/IntelLLVM-CXX.cmake

+ 23 - 2
Modules/Compiler/IntelLLVM-CXX.cmake

@@ -49,11 +49,21 @@ if(NOT "x${CMAKE_CXX_SIMULATE_ID}" STREQUAL "xMSVC")
 
   set(CMAKE_CXX_STANDARD_LATEST 20)
 
-  if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 2021.2.0)
+  if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 2024.0.0)
+    set(CMAKE_CXX23_STANDARD_COMPILE_OPTION "-std=c++23")
+    set(CMAKE_CXX23_EXTENSION_COMPILE_OPTION "-std=gnu++23")
+    set(CMAKE_CXX_STANDARD_LATEST 23)
+  elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 2021.2.0)
     set(CMAKE_CXX23_STANDARD_COMPILE_OPTION  "-std=c++2b")
     set(CMAKE_CXX23_EXTENSION_COMPILE_OPTION "-std=gnu++2b")
     set(CMAKE_CXX_STANDARD_LATEST 23)
   endif()
+
+  if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 2024.0.0)
+    set(CMAKE_CXX26_STANDARD_COMPILE_OPTION "-std=c++26")
+    set(CMAKE_CXX26_EXTENSION_COMPILE_OPTION "-std=gnu++26")
+    set(CMAKE_CXX_STANDARD_LATEST 26)
+  endif()
 else()
   set(CMAKE_CXX98_STANDARD_COMPILE_OPTION  "")
   set(CMAKE_CXX98_EXTENSION_COMPILE_OPTION "")
@@ -72,11 +82,22 @@ else()
 
   set(CMAKE_CXX_STANDARD_LATEST 20)
 
-  if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 2021.2.0)
+  if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 2024.0.0)
+    set(CMAKE_CXX23_STANDARD_COMPILE_OPTION "-Qstd=c++23")
+    set(CMAKE_CXX23_EXTENSION_COMPILE_OPTION "-Qstd=c++23")
+    set(CMAKE_CXX_STANDARD_LATEST 23)
+  elseif(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 2021.2.0)
     set(CMAKE_CXX23_STANDARD_COMPILE_OPTION  "-Qstd:c++2b")
     set(CMAKE_CXX23_EXTENSION_COMPILE_OPTION "-Qstd:c++2b")
     set(CMAKE_CXX_STANDARD_LATEST 23)
   endif()
+
+  if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL 2024.0.0)
+    set(CMAKE_CXX26_STANDARD_COMPILE_OPTION "-Qstd=c++26")
+    set(CMAKE_CXX26_EXTENSION_COMPILE_OPTION "-Qstd=c++26")
+    set(CMAKE_CXX_STANDARD_LATEST 26)
+  endif()
+
 endif()
 
 __compiler_check_default_language_standard(CXX 2020 14)