26 lines
637 B
C
26 lines
637 B
C
|
|
||
|
#define JOIN_IMPL(A, B) A ## B
|
||
|
#define JOIN(A, B) JOIN_IMPL(A, B)
|
||
|
|
||
|
#define CHECK(FEATURE) (JOIN(PREFIX, JOIN(_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
|
||
|
|
||
|
#if !CHECK(VERSION_MAJOR)
|
||
|
#error Compiler major version did not match.
|
||
|
#endif
|
||
|
|
||
|
#if !CHECK(VERSION_MINOR)
|
||
|
#error Compiler minor version did not match.
|
||
|
#endif
|
||
|
|
||
|
#if !CHECK(VERSION_PATCH)
|
||
|
#error Compiler patch version did not match.
|
||
|
#endif
|