2015-04-27 22:25:09 +02:00
|
|
|
|
2016-07-09 11:21:54 +02:00
|
|
|
#define JOIN_IMPL(A, B) A##B
|
2015-04-27 22:25:09 +02:00
|
|
|
#define JOIN(A, B) JOIN_IMPL(A, B)
|
|
|
|
|
2016-07-09 11:21:54 +02:00
|
|
|
#define CHECK(FEATURE) \
|
|
|
|
(JOIN(PREFIX, JOIN(_COMPILER_, FEATURE)) == \
|
|
|
|
JOIN(EXPECTED_COMPILER_, FEATURE))
|
2015-04-27 22:25:09 +02:00
|
|
|
|
|
|
|
#if !CHECK(CXX_DELEGATING_CONSTRUCTORS)
|
2018-08-09 18:06:22 +02:00
|
|
|
# error cxx_delegating_constructors expected availability did not match.
|
2015-04-27 22:25:09 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if !CHECK(CXX_VARIADIC_TEMPLATES)
|
2018-08-09 18:06:22 +02:00
|
|
|
# error cxx_variadic_templates expected availability did not match.
|
2015-04-27 22:25:09 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if !CHECK(VERSION_MAJOR)
|
2018-08-09 18:06:22 +02:00
|
|
|
# error Compiler major version did not match.
|
2015-04-27 22:25:09 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if !CHECK(VERSION_MINOR)
|
2018-08-09 18:06:22 +02:00
|
|
|
# error Compiler minor version did not match.
|
2015-04-27 22:25:09 +02:00
|
|
|
#endif
|
|
|
|
|
|
|
|
#if !CHECK(VERSION_PATCH)
|
2018-08-09 18:06:22 +02:00
|
|
|
# error Compiler patch version did not match.
|
2015-04-27 22:25:09 +02:00
|
|
|
#endif
|