]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
gh-98586: Add What's New entry and update docs (#99056)
authorWenzel Jakob <wenzel.jakob@epfl.ch>
Sun, 6 Nov 2022 22:54:55 +0000 (23:54 +0100)
committerGitHub <noreply@github.com>
Sun, 6 Nov 2022 22:54:55 +0000 (23:54 +0100)
Co-authored-by: C.A.M. Gerlach <CAM.Gerlach@Gerlach.CAM>
Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
Doc/c-api/call.rst
Doc/whatsnew/3.12.rst
Misc/NEWS.d/next/Core and Builtins/2022-10-24-10-30-30.gh-issue-98586.Tha5Iy.rst

index 6fb2e15196103d4271ee0e88b674f01e1511e447..4dc66e318cd12eef1737d2cf8ce676f9673e94c5 100644 (file)
@@ -93,7 +93,7 @@ This is a pointer to a function with the following signature:
    and they must be unique.
    If there are no keyword arguments, then *kwnames* can instead be *NULL*.
 
-.. c:macro:: PY_VECTORCALL_ARGUMENTS_OFFSET
+.. data:: PY_VECTORCALL_ARGUMENTS_OFFSET
 
    If this flag is set in a vectorcall *nargsf* argument, the callee is allowed
    to temporarily change ``args[-1]``. In other words, *args* points to
index fb28d6758d3c5faff88a6643f34f94aac1b5c207..53c72e957d64ebb77fa4aa8f790ec821862cbbc8 100644 (file)
@@ -677,6 +677,18 @@ New Features
   ``__dict__`` and weakrefs with less bookkeeping,
   using less memory and with faster access.
 
+* API for performing calls using
+  :ref:`the vectorcall protocol <vectorcall>` was added to the
+  :ref:`Limited API <stable>`:
+
+  * :c:func:`PyObject_Vectorcall`
+  * :c:func:`PyObject_VectorcallMethod`
+  * :const:`PY_VECTORCALL_ARGUMENTS_OFFSET`
+
+  This means that both the incoming and outgoing ends of the vector call
+  protocol are now available in the :ref:`Limited API <stable>`. (Contributed
+  by Wenzel Jakob in :gh:`98586`.)
+
 * Added two new public functions,
   :c:func:`PyEval_SetProfileAllThreads` and
   :c:func:`PyEval_SetTraceAllThreads`, that allow to set tracing and profiling
index 5d7b0c8924965764b708a51fc187e8a411cc8758..6a1ae3568a1704b2a56caf78d3f919c7541d25f5 100644 (file)
@@ -1,6 +1,6 @@
 Added the methods :c:func:`PyObject_Vectorcall` and
 :c:func:`PyObject_VectorcallMethod` to the :ref:`Limited API <stable>` along
-with the auxiliary macro constant :c:macro:`PY_VECTORCALL_ARGUMENTS_OFFSET`.
+with the auxiliary macro constant :const:`PY_VECTORCALL_ARGUMENTS_OFFSET`.
 
 The availability of these functions enables more efficient :PEP:`590` vector
 calls from binary extension modules that avoid argument boxing/unboxing