1996-05-24 06:50:26 +08:00
|
|
|
|
1996-05-29 06:30:17 +08:00
|
|
|
/* Return the compiler identification, if possible. */
|
|
|
|
|
|
|
|
#include "Python.h"
|
1996-05-24 06:50:26 +08:00
|
|
|
|
|
|
|
#ifndef COMPILER
|
1996-05-29 06:30:17 +08:00
|
|
|
|
2017-10-06 12:15:14 +08:00
|
|
|
// Note the __clang__ conditional has to come before the __GNUC__ one because
|
|
|
|
// clang pretends to be GCC.
|
|
|
|
#if defined(__clang__)
|
|
|
|
#define COMPILER "\n[Clang " __clang_version__ "]"
|
|
|
|
#elif defined(__GNUC__)
|
2000-09-05 12:40:39 +08:00
|
|
|
#define COMPILER "\n[GCC " __VERSION__ "]"
|
2017-10-06 12:15:14 +08:00
|
|
|
// Generic fallbacks.
|
|
|
|
#elif defined(__cplusplus)
|
1995-08-04 12:20:48 +08:00
|
|
|
#define COMPILER "[C++]"
|
|
|
|
#else
|
|
|
|
#define COMPILER "[C]"
|
|
|
|
#endif
|
1996-05-29 06:30:17 +08:00
|
|
|
|
1996-05-24 06:50:26 +08:00
|
|
|
#endif /* !COMPILER */
|
1995-08-04 12:20:48 +08:00
|
|
|
|
1997-07-20 03:48:41 +08:00
|
|
|
const char *
|
2000-07-23 02:47:25 +08:00
|
|
|
Py_GetCompiler(void)
|
1995-08-04 12:20:48 +08:00
|
|
|
{
|
2017-10-05 15:09:01 +08:00
|
|
|
return COMPILER;
|
1995-08-04 12:20:48 +08:00
|
|
|
}
|