Mercurial > cpython-lru_cache-weakref
annotate Python/getcompiler.c @ 53931:9ef683d41c9b legacy-trunk
Issue 5954, PyFrame_GetLineNumber:
Most uses of PyCode_Addr2Line
(http://www.google.com/codesearch?q=PyCode_Addr2Line) are just trying to get
the line number of a specified frame, but there's no way to do that directly.
Forcing people to go through the code object makes them know more about the
guts of the interpreter than they should need.
The remaining uses of PyCode_Addr2Line seem to be getting the line from a
traceback (for example,
http://www.google.com/codesearch/p?hl=en#u_9_nDrchrw/pygame-1.7.1release/src/base.c&q=PyCode_Addr2Line),
which is replaced by the tb_lineno field. So we may be able to deprecate
PyCode_Addr2Line entirely for external use.
| author | Jeffrey Yasskin <jyasskin@gmail.com> |
|---|---|
| date | Fri, 08 May 2009 22:23:21 +0000 |
| parents | 4306107b1395 |
| children |
| rev | line source |
|---|---|
| 3589 | 1 |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
2 /* Return the compiler identification, if possible. */ |
|
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
3 |
|
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
4 #include "Python.h" |
| 3589 | 5 |
| 6 #ifndef COMPILER | |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
7 |
| 2896 | 8 #ifdef __GNUC__ |
|
14410
4306107b1395
The GCC version is loooooooooong; put it on a new line.
Guido van Rossum <guido@python.org>
parents:
14375
diff
changeset
|
9 #define COMPILER "\n[GCC " __VERSION__ "]" |
| 2896 | 10 #endif |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
11 |
| 3589 | 12 #endif /* !COMPILER */ |
| 2896 | 13 |
| 14 #ifndef COMPILER | |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
15 |
| 2896 | 16 #ifdef __cplusplus |
| 17 #define COMPILER "[C++]" | |
| 18 #else | |
| 19 #define COMPILER "[C]" | |
| 20 #endif | |
|
3621
f158edccc72c
grand renaming; added copyright to some files
Guido van Rossum <guido@python.org>
parents:
3589
diff
changeset
|
21 |
| 3589 | 22 #endif /* !COMPILER */ |
| 2896 | 23 |
|
5860
728a083242a2
Make it return a _const_ char*.
Guido van Rossum <guido@python.org>
parents:
4503
diff
changeset
|
24 const char * |
|
13658
f79434ee41fa
Mass ANSIfication of function definitions. Doesn't cover all 'extern'
Thomas Wouters <thomas@python.org>
parents:
13256
diff
changeset
|
25 Py_GetCompiler(void) |
| 2896 | 26 { |
| 27 return COMPILER; | |
| 28 } |
