diff --git a/pep-0573.rst b/pep-0573.rst index 9cc9fb3e6..8b6d8012a 100644 --- a/pep-0573.rst +++ b/pep-0573.rst @@ -332,25 +332,6 @@ must be heap-allocated. On failure, exception is set and NULL is returned. -PyType_offsets --------------- - -Some extension types are using instances with ``__dict__`` or ``__weakref__`` -allocated. Currently, there is no way of passing offsets of these through -``PyType_Spec``. To allow this, a new structure and a spec slot are proposed. - -A new structure, ``PyType_offsets``, will have two members containing the -offsets of ``__dict__`` and ``__weakref__``:: - - typedef struct { - Py_ssize_t dict; - Py_ssize_t weaklist; - } PyType_offsets; - -The new slot, ``Py_offsets``, will be used to pass a ``PyType_offsets *`` -structure containing the mentioned data. - - Helpers ------- @@ -394,32 +375,21 @@ New types: * ``PyCMethodObject`` -New structures: - -* ``PyType_offsets`` - -Modified functions: - -* ``_PyMethodDef_RawFastCallDict`` now receives ``PyTypeObject *cls``. -* ``_PyMethodDef_RawFastCallKeywords`` now receives ``PyTypeObject *cls``. - Modified structures: -* _heaptypeobject - added ``ht_module`` and ``ht_moduleptr`` +* _heaptypeobject - added ``ht_module`` Other changes: * ``METH_METHOD`` call flag * ``defining_class`` converter in clinic -* ``Py_TPFLAGS_HEAP_IMMUTABLE`` flag -* ``Py_offsets`` type spec slot Backwards Compatibility ======================= Two new pointers are added to all heap types. -All other changes are adding new functions, structures and a type flag, +All other changes are adding new functions and structures, or changes to private implementation details. Implementation @@ -475,8 +445,8 @@ References Copyright ========= -This document has been placed in the public domain. - +This document is placed in the public domain or under the +CC0-1.0-Universal license, whichever is more permissive. ..