https://github.com/python/cpython/commit/4605a197bd84da1a232bd835d8e8e654f2fef220
commit: 4605a197bd84da1a232bd835d8e8e654f2fef220
branch: main
author: Victor Stinner <[email protected]>
committer: encukou <[email protected]>
date: 2024-04-19T10:41:37+02:00
summary:

gh-117518: Clarify PyTuple_GetItem() borrowed reference in the doc (GH-117920)

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

diff --git a/Doc/c-api/tuple.rst b/Doc/c-api/tuple.rst
index b3710560ebe7ac..0d68a360f347f8 100644
--- a/Doc/c-api/tuple.rst
+++ b/Doc/c-api/tuple.rst
@@ -59,6 +59,12 @@ Tuple Objects
    Return the object at position *pos* in the tuple pointed to by *p*.  If 
*pos* is
    negative or out of bounds, return ``NULL`` and set an :exc:`IndexError` 
exception.
 
+   The returned reference is borrowed from the tuple *p*
+   (that is: it is only valid as long as you hold a reference to *p*).
+   To get a :term:`strong reference`, use
+   :c:func:`Py_NewRef(PyTuple_GetItem(...)) <Py_NewRef>`
+   or :c:func:`PySequence_GetItem`.
+
 
 .. c:function:: PyObject* PyTuple_GET_ITEM(PyObject *p, Py_ssize_t pos)
 

_______________________________________________
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