diff options
author | Stephen Kelly <steveire@gmail.com> | 2013-10-21 14:59:40 (GMT) |
---|---|---|
committer | Brad King <brad.king@kitware.com> | 2014-05-14 17:57:30 (GMT) |
commit | 62a4a67dc54f3b796cd2735b230a863815d932b2 (patch) | |
tree | 004d214d0fbfd240540b5941601cd39b86d4a549 /Tests/Module/WriteCompilerDetectionHeader/main.cpp | |
parent | f782417b8cf3d9295ce33ca7214674e5db03efdd (diff) | |
download | CMake-62a4a67dc54f3b796cd2735b230a863815d932b2.zip CMake-62a4a67dc54f3b796cd2735b230a863815d932b2.tar.gz CMake-62a4a67dc54f3b796cd2735b230a863815d932b2.tar.bz2 |
Add the WriteCompilerDetectionHeader module.
Provide a function to write a portable header to detect compiler
features. Generate a preprocessor #error for unknown compilers
and compiler versions whose features are not yet recorded. This
error condition might be relaxed in the future, but for now it
is useful for verification of expectations.
Diffstat (limited to 'Tests/Module/WriteCompilerDetectionHeader/main.cpp')
-rw-r--r-- | Tests/Module/WriteCompilerDetectionHeader/main.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/Tests/Module/WriteCompilerDetectionHeader/main.cpp b/Tests/Module/WriteCompilerDetectionHeader/main.cpp new file mode 100644 index 0000000..8b4ea52 --- /dev/null +++ b/Tests/Module/WriteCompilerDetectionHeader/main.cpp @@ -0,0 +1,19 @@ + +#include "test_compiler_detection.h" + +#define JOIN_IMPL(A, B) A ## B +#define JOIN(A, B) JOIN_IMPL(A, B) +#define CHECK(FEATURE) (JOIN(TEST_COMPILER_, FEATURE) == JOIN(EXPECTED_COMPILER_, FEATURE)) + +#if !CHECK(CXX_DELEGATING_CONSTRUCTORS) +#error cxx_delegating_constructors expected availability did not match. +#endif + +#if !CHECK(CXX_VARIADIC_TEMPLATES) +#error cxx_variadic_templates expected availability did not match. +#endif + +int main() +{ + return 0; +} |