summaryrefslogtreecommitdiffstats
path: root/Tests/CompileFeatures
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2019-04-19 12:44:51 (GMT)
committerBrad King <brad.king@kitware.com>2019-04-19 13:14:00 (GMT)
commit66f3f11af5ecea17680077c39c6e0fe7738ca34a (patch)
tree80a11d5de5e85d34e3141e0c234a718469a6a820 /Tests/CompileFeatures
parentbf64e50da4a36e17ea0e27a45a5277226e123210 (diff)
downloadCMake-66f3f11af5ecea17680077c39c6e0fe7738ca34a.zip
CMake-66f3f11af5ecea17680077c39c6e0fe7738ca34a.tar.gz
CMake-66f3f11af5ecea17680077c39c6e0fe7738ca34a.tar.bz2
SunPro: Record support for C++14 features by SunPro 5.{14,15}
SunPro 5.15 supports `-std=c++14` and several C++14 features. SunPro 5.14 accepts `-std=c++14` but does not update its definition of `__cplusplus` or any other macro to distinguish it from `-std=c++11`, so we need to blacklist a couple features that do work but that we cannot report for that version. We can still support `cxx_std_14`. Co-Author: Robert Maynard <robert.maynard@kitware.com>
Diffstat (limited to 'Tests/CompileFeatures')
-rw-r--r--Tests/CompileFeatures/CMakeLists.txt10
1 files changed, 10 insertions, 0 deletions
diff --git a/Tests/CompileFeatures/CMakeLists.txt b/Tests/CompileFeatures/CMakeLists.txt
index 2dd8917..060fb49 100644
--- a/Tests/CompileFeatures/CMakeLists.txt
+++ b/Tests/CompileFeatures/CMakeLists.txt
@@ -52,6 +52,16 @@ if (CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang"
endif()
if (CMAKE_CXX_COMPILER_ID STREQUAL SunPro)
+ if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.15)
+ # SunPro 5.14 accepts -std=c++14 and compiles two features but does
+ # not define __cplusplus to a value different than with -std=c++11.
+ list(REMOVE_ITEM CXX_non_features
+ cxx_aggregate_default_initializers
+ cxx_digit_separators
+ )
+ endif()
+
+ # FIXME: Do any of these work correctly on SunPro 5.13 or above?
list(REMOVE_ITEM CXX_non_features
cxx_attribute_deprecated
cxx_contextual_conversions