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