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