https://github.com/python/cpython/commit/11c93d6df3c8cc6b533da3e85bded37102497ef5
commit: 11c93d6df3c8cc6b533da3e85bded37102497ef5
branch: main
author: Taeknology <[email protected]>
committer: encukou <[email protected]>
date: 2026-06-10T12:10:15+02:00
summary:

gh-149716: Document PySlot_DATA for Py_mod_gil and Py_mod_multiple_interpreters 
(GH-150053)

Add short code examples mirroring the existing Py_mod_abi example,
so it is clear which slot definition macro (PySlot_DATA, PySlot_INT64,
or PySlot_UINT64) to use for these two slots.

files:
M Doc/c-api/module.rst

diff --git a/Doc/c-api/module.rst b/Doc/c-api/module.rst
index 20fd66e35a0d4d..9f68abba66bc5d 100644
--- a/Doc/c-api/module.rst
+++ b/Doc/c-api/module.rst
@@ -247,6 +247,15 @@ Feature slots
    If ``Py_mod_multiple_interpreters`` is not specified, the import
    machinery defaults to ``Py_MOD_MULTIPLE_INTERPRETERS_SUPPORTED``.
 
+   For historical reasons, the values are declared as pointers (``void *``).
+   When using :c:type:`PySlot` arrays, use :c:macro:`PySlot_DATA` for
+   :c:macro:`!Py_mod_multiple_interpreters`:
+
+   .. code-block:: c
+
+      PySlot_DATA(Py_mod_multiple_interpreters,
+                  Py_MOD_PER_INTERPRETER_GIL_SUPPORTED)
+
    .. versionadded:: 3.12
 
 .. c:macro:: Py_mod_gil
@@ -272,6 +281,14 @@ Feature slots
    If ``Py_mod_gil`` is not specified, the import machinery defaults to
    ``Py_MOD_GIL_USED``.
 
+   For historical reasons, the values are declared as pointers (``void *``).
+   When using :c:type:`PySlot` arrays, use :c:macro:`PySlot_DATA` for
+   :c:macro:`!Py_mod_gil`:
+
+   .. code-block:: c
+
+      PySlot_DATA(Py_mod_gil, Py_MOD_GIL_NOT_USED)
+
    .. versionadded:: 3.13
 
 

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to