diff options
author | Peter Powell <petpow@saberuk.com> | 2013-05-21 02:34:10 +0100 |
---|---|---|
committer | Peter Powell <petpow@saberuk.com> | 2013-05-21 02:34:10 +0100 |
commit | b40f197f20b2decac76dfa145f0bf99f0a0be612 (patch) | |
tree | 0a9ceab6dd059da24b0e6be33370c189af3ce7c1 /include/compat.h | |
parent | 3ce33ee0e6bc0b8fbe2a564a37e02d2e56510b06 (diff) |
Add support for detecting C++11 variadic templates.
Diffstat (limited to 'include/compat.h')
-rw-r--r-- | include/compat.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/include/compat.h b/include/compat.h index 299b32a88..41ae1bbaa 100644 --- a/include/compat.h +++ b/include/compat.h @@ -72,6 +72,24 @@ #endif /** + * These macros enable the detection of the C++11 variadic templates in + * compilers which support them. + */ +#if __cplusplus >= 201103L +# define HAS_CXX11_VARIADIC_TEMPLATES +#elif defined __clang__ +# if __has_feature(cxx_variadic_templates) +# define HAS_CXX11_VARIADIC_TEMPLATES +# endif +#elif (__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4) +# if defined __GXX_EXPERIMENTAL_CXX0X__ +# define HAS_CXX11_VARIADIC_TEMPLATES +# endif +#elif _MSC_VER >= 1700 +# define HAS_CXX11_VARIADIC_TEMPLATES +#endif + +/** * This macro allows methods to be marked as deprecated. To use this, wrap the * method declaration in the header file with the macro. */ |