Use Py_SET_SIZE() and Py_SET_REFCNT() on Python 3.9.0a4 and newer (GH-3639)
* Add __Pyx_SET_SIZE() function: use Py_SET_SIZE() on Python 3.9.0a4 and newer, or use Py_SIZE() as an l-value on older Python versions. Py_SIZE() must not be used as an l-value anymore in Python 3.9: Py_SET_SIZE() must be used instead: * https://bugs.python.org/issue39573 * https://docs.python.org/dev/c-api/structures.html#c.Py_SET_SIZE * Add __Pyx_SET_REFCNT() function: use Py_SET_REFCNT() on Python 3.9.0a4 and newer, or use Py_REFCNT() as an l-value on older Python versions. Py_REFCNT() must not be used as an l-value anymore in Python 3.9: Py_SET_REFCNT() must be used instead: * https://bugs.python.org/issue39573 * https://docs.python.org/dev/c-api/structures.html#c.Py_SET_REFCNT Use it in ModuleNode.generate_usr_dealloc_call(): * Replace ++Py_REFCNT(o) with __Pyx_SET_REFCNT(o, Py_REFCNT(o) + 1) * Replace --Py_REFCNT(o) with __Pyx_SET_REFCNT(o, Py_REFCNT(o) - 1)
Showing
Please register or sign in to comment