https://github.com/python/cpython/commit/fda6bd842a2b93a501526f1b830eb900d935ac73
commit: fda6bd842a2b93a501526f1b830eb900d935ac73
branch: main
author: Victor Stinner <[email protected]>
committer: vstinner <[email protected]>
date: 2024-08-01T14:12:33+02:00
summary:

Replace PyObject_Del with PyObject_Free (#122453)

PyObject_Del() is just a alias to PyObject_Free() kept for backward
compatibility. Use directly PyObject_Free() instead.

files:
M Doc/c-api/typeobj.rst
M Modules/_testcapi/gc.c
M Modules/_testcapimodule.c
M Objects/bytearrayobject.c
M Objects/bytesobject.c
M Objects/codeobject.c
M Objects/complexobject.c
M Objects/fileobject.c
M Objects/odictobject.c
M Objects/rangeobject.c
M Objects/typeobject.c
M Objects/unicodeobject.c
M Python/optimizer.c

diff --git a/Doc/c-api/typeobj.rst b/Doc/c-api/typeobj.rst
index 0091e084308245..b7b1418df513c6 100644
--- a/Doc/c-api/typeobj.rst
+++ b/Doc/c-api/typeobj.rst
@@ -650,7 +650,7 @@ and :c:data:`PyType_Type` effectively act as defaults.)
    (doesn't have the :c:macro:`Py_TPFLAGS_BASETYPE` flag bit set), it is
    permissible to call the object deallocator directly instead of via
    :c:member:`~PyTypeObject.tp_free`.  The object deallocator should be the 
one used to allocate the
-   instance; this is normally :c:func:`PyObject_Del` if the instance was 
allocated
+   instance; this is normally :c:func:`PyObject_Free` if the instance was 
allocated
    using :c:macro:`PyObject_New` or :c:macro:`PyObject_NewVar`, or
    :c:func:`PyObject_GC_Del` if the instance was allocated using
    :c:macro:`PyObject_GC_New` or :c:macro:`PyObject_GC_NewVar`.
@@ -1954,7 +1954,7 @@ and :c:data:`PyType_Type` effectively act as defaults.)
    match :c:func:`PyType_GenericAlloc` and the value of the
    :c:macro:`Py_TPFLAGS_HAVE_GC` flag bit.
 
-   For static subtypes, :c:data:`PyBaseObject_Type` uses 
:c:func:`PyObject_Del`.
+   For static subtypes, :c:data:`PyBaseObject_Type` uses 
:c:func:`PyObject_Free`.
 
 
 .. c:member:: inquiry PyTypeObject.tp_is_gc
diff --git a/Modules/_testcapi/gc.c b/Modules/_testcapi/gc.c
index b472a4185a98af..7e33e0d4861e84 100644
--- a/Modules/_testcapi/gc.c
+++ b/Modules/_testcapi/gc.c
@@ -72,7 +72,7 @@ without_gc(PyObject *Py_UNUSED(self), PyObject *obj)
     if (PyType_IS_GC(tp)) {
         // Don't try this at home, kids:
         tp->tp_flags -= Py_TPFLAGS_HAVE_GC;
-        tp->tp_free = PyObject_Del;
+        tp->tp_free = PyObject_Free;
         tp->tp_traverse = NULL;
         tp->tp_clear = NULL;
     }
diff --git a/Modules/_testcapimodule.c b/Modules/_testcapimodule.c
index 5ebcfef6143e02..4a371a5ce33ebe 100644
--- a/Modules/_testcapimodule.c
+++ b/Modules/_testcapimodule.c
@@ -289,7 +289,7 @@ static PyTypeObject _HashInheritanceTester_Type = {
     "hashinheritancetester",            /* Name of this type */
     sizeof(PyObject),           /* Basic object size */
     0,                          /* Item size for varobject */
-    (destructor)PyObject_Del, /* tp_dealloc */
+    (destructor)PyObject_Free,  /* tp_dealloc */
     0,                          /* tp_vectorcall_offset */
     0,                          /* tp_getattr */
     0,                          /* tp_setattr */
@@ -3587,7 +3587,7 @@ static PyTypeObject matmulType = {
     0,
     0,
     PyType_GenericNew,                  /* tp_new */
-    PyObject_Del,                       /* tp_free */
+    PyObject_Free,                      /* tp_free */
 };
 
 typedef struct {
@@ -3699,7 +3699,7 @@ static PyTypeObject awaitType = {
     0,
     0,
     awaitObject_new,                    /* tp_new */
-    PyObject_Del,                       /* tp_free */
+    PyObject_Free,                      /* tp_free */
 };
 
 
diff --git a/Objects/bytearrayobject.c b/Objects/bytearrayobject.c
index 80679f93cd4c13..a80e4670665a22 100644
--- a/Objects/bytearrayobject.c
+++ b/Objects/bytearrayobject.c
@@ -2426,7 +2426,7 @@ PyTypeObject PyByteArray_Type = {
     (initproc)bytearray___init__,       /* tp_init */
     PyType_GenericAlloc,                /* tp_alloc */
     PyType_GenericNew,                  /* tp_new */
-    PyObject_Del,                       /* tp_free */
+    PyObject_Free,                      /* tp_free */
 };
 
 /*********************** Bytearray Iterator ****************************/
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c
index 459df6ceacf3a8..e88b199d89f758 100644
--- a/Objects/bytesobject.c
+++ b/Objects/bytesobject.c
@@ -3066,7 +3066,7 @@ PyTypeObject PyBytes_Type = {
     0,                                          /* tp_init */
     bytes_alloc,                                /* tp_alloc */
     bytes_new,                                  /* tp_new */
-    PyObject_Del,                               /* tp_free */
+    PyObject_Free,                              /* tp_free */
 };
 
 void
diff --git a/Objects/codeobject.c b/Objects/codeobject.c
index d45ba5ed4a9c06..6423a4214bfa9c 100644
--- a/Objects/codeobject.c
+++ b/Objects/codeobject.c
@@ -1352,7 +1352,7 @@ PyTypeObject _PyLineIterator = {
     0,                                  /* tp_init */
     0,                                  /* tp_alloc */
     0,                                  /* tp_new */
-    PyObject_Del,                       /* tp_free */
+    PyObject_Free,                      /* tp_free */
 };
 
 static lineiterator *
@@ -1443,7 +1443,7 @@ PyTypeObject _PyPositionsIterator = {
     0,                                  /* tp_init */
     0,                                  /* tp_alloc */
     0,                                  /* tp_new */
-    PyObject_Del,                       /* tp_free */
+    PyObject_Free,                      /* tp_free */
 };
 
 static PyObject*
diff --git a/Objects/complexobject.c b/Objects/complexobject.c
index 7c8a6bd9dfcd3f..4a8dac6c53f529 100644
--- a/Objects/complexobject.c
+++ b/Objects/complexobject.c
@@ -1247,5 +1247,5 @@ PyTypeObject PyComplex_Type = {
     0,                                          /* tp_init */
     PyType_GenericAlloc,                        /* tp_alloc */
     actual_complex_new,                         /* tp_new */
-    PyObject_Del,                               /* tp_free */
+    PyObject_Free,                              /* tp_free */
 };
diff --git a/Objects/fileobject.c b/Objects/fileobject.c
index bae49d367b65ee..c377d1bb28b56f 100644
--- a/Objects/fileobject.c
+++ b/Objects/fileobject.c
@@ -462,7 +462,7 @@ PyTypeObject PyStdPrinter_Type = {
     0,                                          /* tp_init */
     PyType_GenericAlloc,                        /* tp_alloc */
     0,                                          /* tp_new */
-    PyObject_Del,                               /* tp_free */
+    PyObject_Free,                              /* tp_free */
 };
 
 
diff --git a/Objects/odictobject.c b/Objects/odictobject.c
index 30277aa0c23883..a9b801e70c9810 100644
--- a/Objects/odictobject.c
+++ b/Objects/odictobject.c
@@ -276,7 +276,7 @@ tp_dictoffset     (__dict__)       -                   -
 tp_init           __init__         object_init         dict_init
 tp_alloc          -                PyType_GenericAlloc (repeated)
 tp_new            __new__          object_new          dict_new
-tp_free           -                PyObject_Del        PyObject_GC_Del
+tp_free           -                PyObject_Free       PyObject_GC_Del
 ================= ================ =================== ================
 
 Relevant Methods
diff --git a/Objects/rangeobject.c b/Objects/rangeobject.c
index 9727b4f47b53a1..1318ce0319d438 100644
--- a/Objects/rangeobject.c
+++ b/Objects/rangeobject.c
@@ -899,7 +899,7 @@ PyTypeObject PyRangeIter_Type = {
         sizeof(_PyRangeIterObject),             /* tp_basicsize */
         0,                                      /* tp_itemsize */
         /* methods */
-        (destructor)PyObject_Del,               /* tp_dealloc */
+        (destructor)PyObject_Free,              /* tp_dealloc */
         0,                                      /* tp_vectorcall_offset */
         0,                                      /* tp_getattr */
         0,                                      /* tp_setattr */
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index 5b0a466f913495..a2d82e65b6ad9f 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -7456,7 +7456,7 @@ PyTypeObject PyBaseObject_Type = {
     object_init,                                /* tp_init */
     PyType_GenericAlloc,                        /* tp_alloc */
     object_new,                                 /* tp_new */
-    PyObject_Del,                               /* tp_free */
+    PyObject_Free,                              /* tp_free */
 };
 
 
@@ -8180,7 +8180,7 @@ type_ready_inherit(PyTypeObject *type)
 
     /* Sanity check for tp_free. */
     if (_PyType_IS_GC(type) && (type->tp_flags & Py_TPFLAGS_BASETYPE) &&
-        (type->tp_free == NULL || type->tp_free == PyObject_Del))
+        (type->tp_free == NULL || type->tp_free == PyObject_Free))
     {
         /* This base class needs to call tp_free, but doesn't have
          * one, or its tp_free is for non-gc'ed objects.
diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c
index ffb879a68745b1..12578812a762f6 100644
--- a/Objects/unicodeobject.c
+++ b/Objects/unicodeobject.c
@@ -15265,7 +15265,7 @@ PyTypeObject PyUnicode_Type = {
     0,                            /* tp_init */
     0,                            /* tp_alloc */
     unicode_new,                  /* tp_new */
-    PyObject_Del,                 /* tp_free */
+    PyObject_Free,                /* tp_free */
     .tp_vectorcall = unicode_vectorcall,
 };
 
diff --git a/Python/optimizer.c b/Python/optimizer.c
index ce8a36575cde1d..9d0381357f2123 100644
--- a/Python/optimizer.c
+++ b/Python/optimizer.c
@@ -1374,7 +1374,7 @@ PyTypeObject _PyCounterOptimizer_Type = {
     .tp_itemsize = 0,
     .tp_flags = Py_TPFLAGS_DEFAULT | Py_TPFLAGS_DISALLOW_INSTANTIATION,
     .tp_methods = counter_optimizer_methods,
-    .tp_dealloc = (destructor)PyObject_Del,
+    .tp_dealloc = (destructor)PyObject_Free,
 };
 
 PyObject *

_______________________________________________
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