summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2023-10-11 22:06:20 (GMT)
committerGitHub <noreply@github.com>2023-10-11 22:06:20 (GMT)
commit88ecb190f3717f7f0d663d004fc4b63c7e7bce77 (patch)
tree0b30d871d9d2f66e2bddf83bd63cff82a543a896
parentb4e8049766a46a9e6548b18d7e9a0c9f573cd122 (diff)
downloadcpython-88ecb190f3717f7f0d663d004fc4b63c7e7bce77.zip
cpython-88ecb190f3717f7f0d663d004fc4b63c7e7bce77.tar.gz
cpython-88ecb190f3717f7f0d663d004fc4b63c7e7bce77.tar.bz2
gh-85283: _stat extension now uses the limited C API (#110711)
gh-85283: _stat extension uses the limited C API The _stat C extension is now built with the limited C API.
-rw-r--r--Doc/whatsnew/3.13.rst4
-rw-r--r--Misc/NEWS.d/next/Build/2023-08-29-15-05-09.gh-issue-85283.tlK7G7.rst2
-rw-r--r--Modules/_stat.c3
3 files changed, 9 insertions, 0 deletions
diff --git a/Doc/whatsnew/3.13.rst b/Doc/whatsnew/3.13.rst
index b0a0d89..dfce976 100644
--- a/Doc/whatsnew/3.13.rst
+++ b/Doc/whatsnew/3.13.rst
@@ -928,6 +928,10 @@ Build Changes
* Building CPython now requires a compiler with support for the C11 atomic
library, GCC built-in atomic functions, or MSVC interlocked intrinsics.
+* The ``_stat`` C extension is now built with the :ref:`limited C API
+ <limited-c-api>`.
+ (Contributed by Victor Stinner in :gh:`85283`.)
+
C API Changes
=============
diff --git a/Misc/NEWS.d/next/Build/2023-08-29-15-05-09.gh-issue-85283.tlK7G7.rst b/Misc/NEWS.d/next/Build/2023-08-29-15-05-09.gh-issue-85283.tlK7G7.rst
new file mode 100644
index 0000000..09b5661
--- /dev/null
+++ b/Misc/NEWS.d/next/Build/2023-08-29-15-05-09.gh-issue-85283.tlK7G7.rst
@@ -0,0 +1,2 @@
+The ``_stat`` C extension is now built with the :ref:`limited C API
+<limited-c-api>`. Patch by Victor Stinner.
diff --git a/Modules/_stat.c b/Modules/_stat.c
index 3fd951b..402fbba 100644
--- a/Modules/_stat.c
+++ b/Modules/_stat.c
@@ -11,6 +11,9 @@
*
*/
+// Need limited C API version 3.13 for PyModule_Add() on Windows
+#define Py_LIMITED_API 0x030d0000
+
#include "Python.h"
#ifdef HAVE_SYS_TYPES_H