summaryrefslogtreecommitdiffstats
path: root/Doc/whatsnew
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2019-11-04 18:48:34 (GMT)
committerGitHub <noreply@github.com>2019-11-04 18:48:34 (GMT)
commitf4b1e3d7c64985f5d5b00f6cc9a1c146bbbfd613 (patch)
treeb42e4aaf30370f71b5622f8a41976ac71706d8e8 /Doc/whatsnew
parent6552563b3d5061816720a5a6c7d4ffd6ba35b98b (diff)
downloadcpython-f4b1e3d7c64985f5d5b00f6cc9a1c146bbbfd613.zip
cpython-f4b1e3d7c64985f5d5b00f6cc9a1c146bbbfd613.tar.gz
cpython-f4b1e3d7c64985f5d5b00f6cc9a1c146bbbfd613.tar.bz2
bpo-38644: Add Py_EnterRecursiveCall() to the limited API (GH-17046)
Provide Py_EnterRecursiveCall() and Py_LeaveRecursiveCall() as regular functions for the limited API. Previously, there were defined as macros, but these macros didn't work with the limited API which cannot access PyThreadState.recursion_depth field. Remove _Py_CheckRecursionLimit from the stable ABI. Add Include/cpython/ceval.h header file.
Diffstat (limited to 'Doc/whatsnew')
-rw-r--r--Doc/whatsnew/3.9.rst6
1 files changed, 6 insertions, 0 deletions
diff --git a/Doc/whatsnew/3.9.rst b/Doc/whatsnew/3.9.rst
index 7d7c502..3cac9c5 100644
--- a/Doc/whatsnew/3.9.rst
+++ b/Doc/whatsnew/3.9.rst
@@ -197,6 +197,12 @@ Optimizations
Build and C API Changes
=======================
+* Provide :c:func:`Py_EnterRecursiveCall` and :c:func:`Py_LeaveRecursiveCall`
+ as regular functions for the limited API. Previously, there were defined as
+ macros, but these macros didn't work with the limited API which cannot access
+ ``PyThreadState.recursion_depth`` field. Remove ``_Py_CheckRecursionLimit``
+ from the stable ABI.
+ (Contributed by Victor Stinner in :issue:`38644`.)
* Add a new public :c:func:`PyObject_CallNoArgs` function to the C API, which
calls a callable Python object without any arguments. It is the most efficient
way to call a callable Python object without any argument.