cpython/Objects
Pablo Galindo 98eee94421
bpo-43950: Add code.co_positions (PEP 657) (GH-26955)
This PR is part of PEP 657 and augments the compiler to emit ending
line numbers as well as starting and ending columns from the AST
into compiled code objects. This allows bytecodes to be correlated
to the exact source code ranges that generated them.

This information is made available through the following public APIs:

* The `co_positions` method on code objects.
* The C API function `PyCode_Addr2Location`.

Co-authored-by: Batuhan Taskaya <isidentical@gmail.com>
Co-authored-by: Ammar Askar <ammar@ammaraskar.com>
2021-07-02 15:10:11 +01:00
..
clinic bpo-43950: Add code.co_positions (PEP 657) (GH-26955) 2021-07-02 15:10:11 +01:00
stringlib Remove effbot urls (GH-26308) 2021-05-22 14:09:54 +02:00
abstract.c bpo-31861: Add aiter and anext to builtins (#23847) 2021-03-23 15:47:21 -07:00
accu.c bpo-35081: Move accu.h to Include/internal/pycore_accu.h (GH-10271) 2018-11-01 02:30:36 +01:00
boolobject.c bpo-41870: Avoid the test when nargs=0 (GH-22462) 2020-10-01 13:50:40 +09:00
bytearrayobject.c bpo-42128: Structural Pattern Matching (PEP 634) (GH-22917) 2021-02-26 14:51:55 -08:00
bytes_methods.c bpo-43179: Generalise alignment for optimised string routines (GH-24624) 2021-03-31 12:12:39 +02:00
bytesobject.c bpo-42128: Structural Pattern Matching (PEP 634) (GH-22917) 2021-02-26 14:51:55 -08:00
call.c bpo-42990: Further refactoring of PyEval_ functions. (GH-24368) 2021-02-01 10:42:03 +00:00
capsule.c bpo-42519: Replace PyObject_MALLOC() with PyObject_Malloc() (GH-23587) 2020-12-01 10:37:39 +01:00
cellobject.c bpo-40268: Remove unused pycore_pymem.h includes (GH-19531) 2020-04-15 02:57:50 +02:00
classobject.c bpo-40268: Remove unused pycore_pymem.h includes (GH-19531) 2020-04-15 02:57:50 +02:00
codeobject.c bpo-43950: Add code.co_positions (PEP 657) (GH-26955) 2021-07-02 15:10:11 +01:00
complexobject.c bpo-43475: Fix worst case collision behavior for NaN instances (GH-25493) 2021-04-22 08:34:57 -07:00
descrobject.c bpo-43977: Use tp_flags for collection matching (GH-25723) 2021-04-30 09:50:28 +01:00
dictnotes.txt
dictobject.c bpo-44531: Add _PyType_AllocNoTrack() function (GH-26947) 2021-07-01 02:30:46 +02:00
enumobject.c bpo-42536: GC track recycled tuples (GH-23623) 2020-12-04 19:45:57 -08:00
exception_handling_notes.txt bpo-40222: "Zero cost" exception handling (GH-25729) 2021-05-07 15:19:19 +01:00
exceptions.c bpo-44029: Remove Py_UNICODE APIs (GH-25881) 2021-05-07 15:58:29 +09:00
fileobject.c bpo-43916: PyStdPrinter_Type uses Py_TPFLAGS_DISALLOW_INSTANTIATION (GH-25749) 2021-04-30 14:56:27 +02:00
floatobject.c bpo-43475: Fix worst case collision behavior for NaN instances (GH-25493) 2021-04-22 08:34:57 -07:00
frameobject.c bpo-43693: Turn localspluskinds into an object (GH-26749) 2021-06-21 13:53:04 -07:00
funcobject.c bpo-43693: Clean up the PyCodeObject fields. (GH-26364) 2021-05-26 20:15:40 +01:00
genericaliasobject.c bpo-41559: Change PEP 612 implementation to pure Python (#25449) 2021-04-28 08:38:14 -07:00
genobject.c bpo-44032: Move data stack to thread from FrameObject. (GH-26076) 2021-05-21 10:57:35 +01:00
interpreteridobject.c bpo-43962: Fix _PyInterpreterState_IDIncref() (GH-25683) 2021-04-28 13:40:44 +02:00
iterobject.c bpo-43751: Fix anext() bug where it erroneously returned None (GH-25238) 2021-04-11 05:51:35 +01:00
listobject.c bpo-43977: Use tp_flags for collection matching (GH-25723) 2021-04-30 09:50:28 +01:00
listsort.txt Fixes in sorting descriptions (GH-18317) 2020-02-03 08:47:20 -08:00
lnotab_notes.txt Fix typo in lnotab_notes.txt (GH-26711) 2021-06-14 11:49:05 -03:00
longobject.c Fix a potential reference-counting bug in long_pow (GH-26690) 2021-06-13 08:19:29 +01:00
memoryobject.c bpo-43977: Use tp_flags for collection matching (GH-25723) 2021-04-30 09:50:28 +01:00
methodobject.c bpo-42015: Reorder dereferencing calls in meth_dealloc, to make sure m_self is kept alive long enough (GH-22670) 2020-10-13 00:06:19 +03:00
moduleobject.c bpo-43770: Cleanup PyModuleDef_Init() (GH-26879) 2021-06-23 15:40:27 +02:00
namespaceobject.c bpo-39075: types.SimpleNamespace no longer sorts attributes in its repr (GH-19430) 2020-05-15 18:27:54 -07:00
object.c bpo-43770: Cleanup _PyObject_GetMethod() (GH-26946) 2021-07-01 03:11:59 +02:00
obmalloc.c bpo-44032: Move data stack to thread from FrameObject. (GH-26076) 2021-05-21 10:57:35 +01:00
odictobject.c bpo-44337: Port LOAD_ATTR to PEP 659 adaptive interpreter (GH-26595) 2021-06-10 08:46:01 +01:00
picklebufobject.c bpo-36785: PEP 574 implementation (GH-7076) 2019-05-26 17:10:09 +02:00
rangeobject.c bpo-43977: Use tp_flags for collection matching (GH-25723) 2021-04-30 09:50:28 +01:00
README Issue #18093: Factor out the programs that embed the runtime 2014-07-25 21:52:14 +10:00
setobject.c bpo-43198: Revert 3dd2157 that removed freeslot tracking. (#25010) 2021-03-24 15:33:27 -07:00
sliceobject.c bpo-43268: Pass interp rather than tstate to internal functions (GH-24580) 2021-02-19 15:10:45 +01:00
structseq.c bpo-43916: Move the _PyStructSequence_InitType function to the internal API (GH-25854) 2021-05-03 15:50:24 +01:00
tupleobject.c bpo-44531: Add _PyType_AllocNoTrack() function (GH-26947) 2021-07-01 02:30:46 +02:00
typeobject.c bpo-44531: Add _PyType_AllocNoTrack() function (GH-26947) 2021-07-01 02:30:46 +02:00
typeslots.inc bpo-41073: PyType_GetSlot() can now accept static types. (GH-21931) 2020-11-10 12:53:46 -08:00
typeslots.py bpo-41073: PyType_GetSlot() can now accept static types. (GH-21931) 2020-11-10 12:53:46 -08:00
unicodectype.c Removed unintentional trailing spaces in non-external and non-generated C files. 2015-03-18 21:53:15 +02:00
unicodeobject.c bpo-44110: Improve string's __getitem__ error message (GH-26042) 2021-06-27 15:04:57 +03:00
unicodetype_db.h closes bpo-39926: Update Unicode to 13.0.0. (GH-18910) 2020-03-10 20:41:34 -07:00
unionobject.c bpo-44483: Fix crash in union object with bad `__module__` (GH-26848) 2021-06-22 16:54:44 +03:00
weakrefobject.c bpo-44523: Remove the pass-through for hash() in weakref proxy objects (GH-26950) 2021-06-29 23:58:45 +01:00

Source files for various builtin objects