Skip to content

Commit

Permalink
Docs: Disable links for _weakref and C stdlib functions
Browse files Browse the repository at this point in the history
Disable links for C functions [mcr]alloc and free
  • Loading branch information
erlend-aasland committed Jul 22, 2023
1 parent f8b7fe2 commit e8bff92
Show file tree
Hide file tree
Showing 2 changed files with 5 additions and 5 deletions.
6 changes: 3 additions & 3 deletions Doc/c-api/arg.rst
Original file line number Diff line number Diff line change
Expand Up @@ -477,7 +477,7 @@ API Functions
will be set if there was a failure.
This is an example of the use of this function, taken from the sources for the
:mod:`_weakref` helper module for weak references::
:mod:`!_weakref` helper module for weak references::
static PyObject *
weakref_ref(PyObject *self, PyObject *args)
Expand Down Expand Up @@ -518,9 +518,9 @@ Building values
When memory buffers are passed as parameters to supply data to build objects, as
for the ``s`` and ``s#`` formats, the required data is copied. Buffers provided
by the caller are never referenced by the objects created by
:c:func:`Py_BuildValue`. In other words, if your code invokes :c:func:`malloc`
:c:func:`Py_BuildValue`. In other words, if your code invokes :c:func:`!malloc`
and passes the allocated memory to :c:func:`Py_BuildValue`, your code is
responsible for calling :c:func:`free` for that memory once
responsible for calling :c:func:`!free` for that memory once
:c:func:`Py_BuildValue` returns.
In the following description, the quoted form is the format unit; the entry in
Expand Down
4 changes: 2 additions & 2 deletions Doc/c-api/memory.rst
Original file line number Diff line number Diff line change
Expand Up @@ -47,8 +47,8 @@ API functions listed in this document.
single: free()

To avoid memory corruption, extension writers should never try to operate on
Python objects with the functions exported by the C library: :c:func:`malloc`,
:c:func:`calloc`, :c:func:`realloc` and :c:func:`free`. This will result in mixed
Python objects with the functions exported by the C library: :c:func:`!malloc`,
:c:func:`!calloc`, :c:func:`!realloc` and :c:func:`!free`. This will result in mixed
calls between the C allocator and the Python memory manager with fatal
consequences, because they implement different algorithms and operate on
different heaps. However, one may safely allocate and release memory blocks
Expand Down

0 comments on commit e8bff92

Please sign in to comment.