From 30d1c51ac97a93f68015a0c646bd130140b69a98 Mon Sep 17 00:00:00 2001
From: Neal Norwitz <nnorwitz@gmail.com>
Date: Sun, 19 Aug 2007 22:48:23 +0000
Subject: Remove _PyObject_Del

---
 Doc/c-api/newtypes.rst  | 5 +----
 Doc/data/refcounts.dat  | 3 ---
 Include/objimpl.h       | 3 ---
 Misc/NEWS               | 2 +-
 Modules/_randommodule.c | 2 +-
 Modules/bz2module.c     | 6 +++---
 Objects/typeobject.c    | 2 +-
 PC/os2emx/python25.def  | 1 -
 8 files changed, 7 insertions(+), 17 deletions(-)

diff --git a/Doc/c-api/newtypes.rst b/Doc/c-api/newtypes.rst
index 5933f99..f8694bf 100644
--- a/Doc/c-api/newtypes.rst
+++ b/Doc/c-api/newtypes.rst
@@ -23,9 +23,6 @@ Allocating Objects on the Heap
 .. cfunction:: PyVarObject* _PyObject_NewVar(PyTypeObject *type, Py_ssize_t size)
 
 
-.. cfunction:: void _PyObject_Del(PyObject *op)
-
-
 .. cfunction:: PyObject* PyObject_Init(PyObject *op, PyTypeObject *type)
 
    Initialize a newly-allocated object *op* with its type and initial reference.
@@ -1331,7 +1328,7 @@ The next fields, up to and including :attr:`tp_weaklist`, only exist if the
 
       void tp_free(void *)
 
-   The only initializer that is compatible with both versions is ``_PyObject_Del``,
+   The only initializer that is compatible with both versions is ``PyObject_Free``,
    whose definition has suitably adapted in Python 2.3.
 
    This field is inherited by static subtypes, but not by dynamic subtypes
diff --git a/Doc/data/refcounts.dat b/Doc/data/refcounts.dat
index 5cb0b7a..4555301 100644
--- a/Doc/data/refcounts.dat
+++ b/Doc/data/refcounts.dat
@@ -1705,9 +1705,6 @@ _PyImport_FixupExtension:char*:::
 
 _PyImport_Init:void:::
 
-_PyObject_Del:void:::
-_PyObject_Del:PyObject*:op:0:
-
 _PyObject_New:PyObject*::+1:
 _PyObject_New:PyTypeObject*:type:0:
 
diff --git a/Include/objimpl.h b/Include/objimpl.h
index 6e30ded..3f867e3 100644
--- a/Include/objimpl.h
+++ b/Include/objimpl.h
@@ -131,9 +131,6 @@ PyAPI_FUNC(void) _PyObject_DebugMallocStats(void);
 #define PyObject_Del		PyObject_Free
 #define PyObject_DEL		PyObject_FREE
 
-/* for source compatibility with 2.2 */
-#define _PyObject_Del		PyObject_Free
-
 /*
  * Generic object allocator interface
  * ==================================
diff --git a/Misc/NEWS b/Misc/NEWS
index f00c4c7..5852fb5 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -232,7 +232,7 @@ C API
   nb_divide, nb_inplace_divide
 
 - Removed these macros:
-  staticforward, statichere, PyArg_GetInt, PyArg_NoArgs
+  staticforward, statichere, PyArg_GetInt, PyArg_NoArgs, _PyObject_Del
 
 - Removed these typedefs:
   intargfunc, intintargfunc, intobjargproc, intintobjargproc,
diff --git a/Modules/_randommodule.c b/Modules/_randommodule.c
index 25adc2e..95b7ade 100644
--- a/Modules/_randommodule.c
+++ b/Modules/_randommodule.c
@@ -557,7 +557,7 @@ static PyTypeObject Random_Type = {
 	0,				/*tp_init*/
 	0,				/*tp_alloc*/
 	random_new,			/*tp_new*/
-	_PyObject_Del,			/*tp_free*/
+	PyObject_Free,			/*tp_free*/
 	0,				/*tp_is_gc*/
 };
 
diff --git a/Modules/bz2module.c b/Modules/bz2module.c
index 954c914..c913c3f 100644
--- a/Modules/bz2module.c
+++ b/Modules/bz2module.c
@@ -1336,7 +1336,7 @@ static PyTypeObject BZ2File_Type = {
         (initproc)BZ2File_init, /*tp_init*/
         PyType_GenericAlloc,    /*tp_alloc*/
         PyType_GenericNew,      /*tp_new*/
-      	_PyObject_Del,          /*tp_free*/
+      	PyObject_Free,          /*tp_free*/
         0,                      /*tp_is_gc*/
 };
 
@@ -1612,7 +1612,7 @@ static PyTypeObject BZ2Comp_Type = {
         (initproc)BZ2Comp_init, /*tp_init*/
         PyType_GenericAlloc,    /*tp_alloc*/
         PyType_GenericNew,      /*tp_new*/
-      	_PyObject_Del,          /*tp_free*/
+      	PyObject_Free,          /*tp_free*/
         0,                      /*tp_is_gc*/
 };
 
@@ -1836,7 +1836,7 @@ static PyTypeObject BZ2Decomp_Type = {
         (initproc)BZ2Decomp_init, /*tp_init*/
         PyType_GenericAlloc,    /*tp_alloc*/
         PyType_GenericNew,      /*tp_new*/
-      	_PyObject_Del,          /*tp_free*/
+      	PyObject_Free,          /*tp_free*/
         0,                      /*tp_is_gc*/
 };
 
diff --git a/Objects/typeobject.c b/Objects/typeobject.c
index f042f4a..222207c 100644
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -3302,7 +3302,7 @@ inherit_slots(PyTypeObject *type, PyTypeObject *base)
 		}
 		else if ((type->tp_flags & Py_TPFLAGS_HAVE_GC) &&
 			 type->tp_free == NULL &&
-			 base->tp_free == _PyObject_Del) {
+			 base->tp_free == PyObject_Free) {
 			/* A bit of magic to plug in the correct default
 			 * tp_free function when a derived class adds gc,
 			 * didn't define tp_free, and the base uses the
diff --git a/PC/os2emx/python25.def b/PC/os2emx/python25.def
index 6aa2e62..c7dddf5 100644
--- a/PC/os2emx/python25.def
+++ b/PC/os2emx/python25.def
@@ -456,7 +456,6 @@ EXPORTS
   "PyObject_InitVar"
   "_PyObject_New"
   "_PyObject_NewVar"
-  "_PyObject_Del"
   "_Py_ReadyTypes"
   "_Py_SwappedOp"
   "_Py_NotImplementedStruct"
-- 
cgit v0.12

