summaryrefslogtreecommitdiffstats
path: root/Tests
diff options
context:
space:
mode:
Diffstat (limited to 'Tests')
-rw-r--r--Tests/CompileFeatures/CMakeLists.txt8
-rw-r--r--Tests/CompileFeatures/cxx_generalized_initializers.cpp1
-rw-r--r--Tests/CompileFeatures/cxx_variadic_templates.cpp4
-rw-r--r--Tests/CompileFeatures/default_dialect.cpp2
-rw-r--r--Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycle.cmake6
-rw-r--r--Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved.cmake6
6 files changed, 16 insertions, 11 deletions
diff --git a/Tests/CompileFeatures/CMakeLists.txt b/Tests/CompileFeatures/CMakeLists.txt
index 5ca1eb7..106f29c 100644
--- a/Tests/CompileFeatures/CMakeLists.txt
+++ b/Tests/CompileFeatures/CMakeLists.txt
@@ -142,23 +142,24 @@ if (CMAKE_CXX_COMPILE_FEATURES)
add_executable(IfaceCompileFeatures main.cpp)
target_link_libraries(IfaceCompileFeatures iface)
- add_definitions(-DEXPECT_OVERRIDE_CONTROL=1)
-
if (CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.8)
add_definitions(
+ -DEXPECT_OVERRIDE_CONTROL=1
-DEXPECT_INHERITING_CONSTRUCTORS=1
-DEXPECT_FINAL=1
-DEXPECT_INHERITING_CONSTRUCTORS_AND_FINAL=1
)
elseif (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.7)
add_definitions(
+ -DEXPECT_OVERRIDE_CONTROL=1
-DEXPECT_INHERITING_CONSTRUCTORS=0
-DEXPECT_FINAL=1
-DEXPECT_INHERITING_CONSTRUCTORS_AND_FINAL=0
)
else()
add_definitions(
+ -DEXPECT_OVERRIDE_CONTROL=0
-DEXPECT_INHERITING_CONSTRUCTORS=0
-DEXPECT_FINAL=0
-DEXPECT_INHERITING_CONSTRUCTORS_AND_FINAL=0
@@ -166,6 +167,7 @@ if (CMAKE_CXX_COMPILE_FEATURES)
endif()
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
add_definitions(
+ -DEXPECT_OVERRIDE_CONTROL=1
-DEXPECT_INHERITING_CONSTRUCTORS=1
-DEXPECT_FINAL=1
-DEXPECT_INHERITING_CONSTRUCTORS_AND_FINAL=1
@@ -173,12 +175,14 @@ if (CMAKE_CXX_COMPILE_FEATURES)
elseif(CMAKE_CXX_COMPILER_ID STREQUAL "AppleClang")
if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.0)
add_definitions(
+ -DEXPECT_OVERRIDE_CONTROL=1
-DEXPECT_INHERITING_CONSTRUCTORS=1
-DEXPECT_FINAL=1
-DEXPECT_INHERITING_CONSTRUCTORS_AND_FINAL=1
)
else()
add_definitions(
+ -DEXPECT_OVERRIDE_CONTROL=1
-DEXPECT_INHERITING_CONSTRUCTORS=0
-DEXPECT_FINAL=1
-DEXPECT_INHERITING_CONSTRUCTORS_AND_FINAL=0
diff --git a/Tests/CompileFeatures/cxx_generalized_initializers.cpp b/Tests/CompileFeatures/cxx_generalized_initializers.cpp
index 8013ef5..7bf356b 100644
--- a/Tests/CompileFeatures/cxx_generalized_initializers.cpp
+++ b/Tests/CompileFeatures/cxx_generalized_initializers.cpp
@@ -8,6 +8,7 @@ namespace std {
const _E* __begin_;
size_t __size_;
+ initializer_list(const int*, long unsigned int) {}
};
}
diff --git a/Tests/CompileFeatures/cxx_variadic_templates.cpp b/Tests/CompileFeatures/cxx_variadic_templates.cpp
index 1d5a706..a80e157 100644
--- a/Tests/CompileFeatures/cxx_variadic_templates.cpp
+++ b/Tests/CompileFeatures/cxx_variadic_templates.cpp
@@ -1,4 +1,4 @@
-template<int I, int... Is>
+template<int... Is>
struct Interface;
template<int I>
@@ -11,7 +11,7 @@ struct Interface<I>
};
template<int I, int... Is>
-struct Interface
+struct Interface<I, Is...>
{
static int accumulate()
{
diff --git a/Tests/CompileFeatures/default_dialect.cpp b/Tests/CompileFeatures/default_dialect.cpp
index 8d97926..a2ca268 100644
--- a/Tests/CompileFeatures/default_dialect.cpp
+++ b/Tests/CompileFeatures/default_dialect.cpp
@@ -14,7 +14,7 @@ Outputter<__cplusplus> o;
# if !DEFAULT_CXX98
# error Buildsystem error
# endif
-# if __cplusplus != 199711L
+# if __cplusplus != 199711L && __cplusplus != 1 && !defined(__GXX_EXPERIMENTAL_CXX0X__)
Outputter<__cplusplus> o;
# endif
#endif
diff --git a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycle.cmake b/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycle.cmake
index 9d56bc0..d2c95ec 100644
--- a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycle.cmake
+++ b/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycle.cmake
@@ -3,12 +3,12 @@ add_library(empty1 empty.cpp)
add_library(empty2 INTERFACE)
add_library(empty3 INTERFACE)
-target_compile_features(empty3 INTERFACE cxx_constexpr)
+target_compile_features(empty3 INTERFACE cxx_static_assert)
target_link_libraries(empty1
- # When starting, $<COMPILE_FEATURES:cxx_final> is '0', so 'freeze' the
+ # When starting, $<COMPILE_FEATURES:cxx_nullptr> is '0', so 'freeze' the
# CXX_STANDARD at 98 during computation.
- $<$<COMPILE_FEATURES:cxx_final>:empty2>
+ $<$<COMPILE_FEATURES:cxx_nullptr>:empty2>
# This would add cxx_constexpr, but that would require CXX_STANDARD = 11,
# which is not allowed after freeze. Report an error.
empty3
diff --git a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved.cmake b/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved.cmake
index 0df548b..bbcf4e0 100644
--- a/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved.cmake
+++ b/Tests/RunCMake/CompileFeatures/LinkImplementationFeatureCycleSolved.cmake
@@ -3,12 +3,12 @@ add_library(empty1 empty.cpp)
add_library(empty2 INTERFACE)
add_library(empty3 INTERFACE)
-target_compile_features(empty3 INTERFACE cxx_constexpr)
+target_compile_features(empty3 INTERFACE cxx_static_assert)
target_link_libraries(empty1
- $<$<COMPILE_FEATURES:cxx_final>:empty2>
+ $<$<COMPILE_FEATURES:cxx_nullptr>:empty2>
empty3
)
# This, or populating the COMPILE_FEATURES property with a feature in the
-# same standard as cxx_final, solves the cycle above.
+# same standard as cxx_nullptr, solves the cycle above.
set_property(TARGET empty1 PROPERTY CXX_STANDARD 11)