Go to the documentation of this file.
29 #ifndef AURORA_CONFIG_HPP
30 #define AURORA_CONFIG_HPP
34 #define AURORA_VERSION_MAJOR 1
35 #define AURORA_VERSION_MINOR 0
39 #define AURORA_FAKE_DOC(real, fake) real
40 #define AURORA_IMPL_DEF(...) __VA_ARGS__
46 #define AURORA_UNREACHABLE __assume(false)
47 #elif defined(__GNUC__) || defined(__clang__)
48 #define AURORA_UNREACHABLE __builtin_unreachable()
56 #error At least Visual Studio 2010 is required.
58 #elif defined(__clang__)
59 #if 100*__clang_major__ + __clang_minor__ < 301
60 #error At least Clang 3.1 is required.
62 #elif defined(__GNUC__)
63 #if 100*__GNUC__ + __GNUC_MINOR__ < 406
64 #error At least g++ 4.6 is required.
70 #if defined(_MSC_VER) && _MSC_VER >= 1800
71 #define AURORA_HAS_VARIADIC_TEMPLATES
72 #elif defined(__clang__)
73 #if __has_feature(cxx_variadic_templates)
74 #define AURORA_HAS_VARIADIC_TEMPLATES
76 #elif defined(__GNUG__) && (defined(__VARIADIC_TEMPLATES) || __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4 && defined(__GXX_EXPERIMENTAL_CXX0X__)))
77 #define AURORA_HAS_VARIADIC_TEMPLATES
80 #endif // AURORA_CONFIG_HPP