Detect GNU compiler version with its id (#6251)

Decode decimal digits from

  __GNUC__
  __GNUC_MINOR__
  __GNUC_PATCHLEVEL__

to compute version components.  See documentation at

  http://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html
  http://predef.sourceforge.net/precomp.html
This commit is contained in:
Brad King 2011-12-06 11:56:43 -05:00
parent fa7141f5ad
commit a66285583d
2 changed files with 10 additions and 0 deletions

View File

@ -53,6 +53,11 @@
#elif defined(__GNUC__) #elif defined(__GNUC__)
# define COMPILER_ID "GNU" # define COMPILER_ID "GNU"
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
# if defined(__GNUC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif defined(_MSC_VER) #elif defined(_MSC_VER)
# define COMPILER_ID "MSVC" # define COMPILER_ID "MSVC"

View File

@ -55,6 +55,11 @@
#elif defined(__GNUC__) #elif defined(__GNUC__)
# define COMPILER_ID "GNU" # define COMPILER_ID "GNU"
# define COMPILER_VERSION_MAJOR DEC(__GNUC__)
# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__)
# if defined(__GNUC_PATCHLEVEL__)
# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__)
# endif
#elif defined(_MSC_VER) #elif defined(_MSC_VER)
# define COMPILER_ID "MSVC" # define COMPILER_ID "MSVC"