mirror of
https://github.com/ZDoom/raze-gles.git
synced 2025-02-15 08:01:38 +00:00
compat.h: Add some definitions for easy testing of language standard versions.
git-svn-id: https://svn.eduke32.com/eduke32@6114 1a8010ca-5511-0410-912e-c29ae57300e0
This commit is contained in:
parent
0c31245cd2
commit
1ebbd553bd
1 changed files with 28 additions and 1 deletions
|
@ -32,6 +32,33 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
////////// Language detection //////////
|
||||||
|
|
||||||
|
#if defined __STDC__
|
||||||
|
# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 201112L
|
||||||
|
# define CSTD 2011
|
||||||
|
# elif defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
|
||||||
|
# define CSTD 1999
|
||||||
|
# elif defined __STDC_VERSION__ && __STDC_VERSION__ >= 199409L
|
||||||
|
# define CSTD 1994
|
||||||
|
# else
|
||||||
|
# define CSTD 1989
|
||||||
|
# endif
|
||||||
|
#else
|
||||||
|
# define CSTD 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if defined __cplusplus && __cplusplus >= 201402L
|
||||||
|
# define CXXSTD 2014
|
||||||
|
#elif defined __cplusplus && __cplusplus >= 201103L
|
||||||
|
# define CXXSTD 2011
|
||||||
|
#elif defined __cplusplus && __cplusplus >= 199711L
|
||||||
|
# define CXXSTD 1998
|
||||||
|
#else
|
||||||
|
# define CXXSTD 0
|
||||||
|
#endif
|
||||||
|
|
||||||
|
|
||||||
////////// Language and compiler feature polyfills //////////
|
////////// Language and compiler feature polyfills //////////
|
||||||
|
|
||||||
#ifdef __cplusplus
|
#ifdef __cplusplus
|
||||||
|
@ -122,7 +149,7 @@
|
||||||
|
|
||||||
#if EDUKE32_GCC_PREREQ(2,0) || defined _MSC_VER
|
#if EDUKE32_GCC_PREREQ(2,0) || defined _MSC_VER
|
||||||
# define EDUKE32_FUNCTION __FUNCTION__
|
# define EDUKE32_FUNCTION __FUNCTION__
|
||||||
#elif (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L) || (defined __cplusplus && __cplusplus >= 201103L)
|
#elif CSTD >= 1999 || CXXSTD >= 2011
|
||||||
# define EDUKE32_FUNCTION __func__
|
# define EDUKE32_FUNCTION __func__
|
||||||
#else
|
#else
|
||||||
# define EDUKE32_FUNCTION "???"
|
# define EDUKE32_FUNCTION "???"
|
||||||
|
|
Loading…
Reference in a new issue