diff options
author | Brad King <brad.king@kitware.com> | 2016-10-26 19:02:35 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2016-10-27 17:33:10 (GMT) |
commit | 369d580937b49c1c5672ba3512c2a736581d545c (patch) | |
tree | 67a6b2cd1cbdee00edafd960094d484aa1f017f9 /Modules/Compiler/Intel-CXX.cmake | |
parent | a5a3642f9292bb697176aaf1077fc98302f286b7 (diff) | |
download | CMake-369d580937b49c1c5672ba3512c2a736581d545c.zip CMake-369d580937b49c1c5672ba3512c2a736581d545c.tar.gz CMake-369d580937b49c1c5672ba3512c2a736581d545c.tar.bz2 |
Features: Record features for Intel Compiler on Windows
Since this compiler always defines `__cplusplus` to `1` we need to use
`_MSC_VER`, `__INTEL_CXX11_MODE__`, and the feature test macro named
`__cpp_aggregate_nsdmi` to detect C++11 and C++14 modes.
With no `-Qstd=` flag this compiler defaults to C++98 plus a subset of
C++11/C++14 features needed to be compatible with MSVC. We pretend it
is plain C++98 and add a `-Qstd=` flag whenever needed for C++11 or
above features even if they would happen to be available in MSVC-mode.
Closes: #16384
Diffstat (limited to 'Modules/Compiler/Intel-CXX.cmake')
-rw-r--r-- | Modules/Compiler/Intel-CXX.cmake | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/Modules/Compiler/Intel-CXX.cmake b/Modules/Compiler/Intel-CXX.cmake index 63081cc..b6bc2ee 100644 --- a/Modules/Compiler/Intel-CXX.cmake +++ b/Modules/Compiler/Intel-CXX.cmake @@ -65,8 +65,7 @@ macro(cmake_record_cxx_compile_features) endmacro() set(_result 0) - if(NOT "x${CMAKE_CXX_SIMULATE_ID}" STREQUAL "xMSVC" AND - NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.1) + if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 12.1) if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 15.0) _get_intel_features("${CMAKE_CXX14_STANDARD_COMPILE_OPTION}" CMAKE_CXX14_COMPILE_FEATURES) endif() |