summaryrefslogtreecommitdiffstats
path: root/Modules
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-06-15 23:28:07 (GMT)
committerGitHub <noreply@github.com>2020-06-15 23:28:07 (GMT)
commit04fc4f2a46b2fd083639deb872c3a3037fdb47d6 (patch)
tree3fc5a585683e09748fb3113c34cfa42e8bf634b2 /Modules
parent7ab92d54b5d4440d84f6c02b4bc5a70103eff915 (diff)
downloadcpython-04fc4f2a46b2fd083639deb872c3a3037fdb47d6.zip
cpython-04fc4f2a46b2fd083639deb872c3a3037fdb47d6.tar.gz
cpython-04fc4f2a46b2fd083639deb872c3a3037fdb47d6.tar.bz2
bpo-40989: PyObject_INIT() becomes an alias to PyObject_Init() (GH-20901)
The PyObject_INIT() and PyObject_INIT_VAR() macros become aliases to, respectively, PyObject_Init() and PyObject_InitVar() functions. Rename _PyObject_INIT() and _PyObject_INIT_VAR() static inline functions to, respectively, _PyObject_Init() and _PyObject_InitVar(), and move them to pycore_object.h. Remove their return value: their return type becomes void. The _datetime module is now built with the Py_BUILD_CORE_MODULE macro defined. Remove an outdated comment on _Py_tracemalloc_config.
Diffstat (limited to 'Modules')
-rw-r--r--Modules/_datetimemodule.c31
-rw-r--r--Modules/gcmodule.c12
2 files changed, 21 insertions, 22 deletions
diff --git a/Modules/_datetimemodule.c b/Modules/_datetimemodule.c
index acdde83..74a54e7 100644
--- a/Modules/_datetimemodule.c
+++ b/Modules/_datetimemodule.c
@@ -8,6 +8,7 @@
#define _PY_DATETIME_IMPL
#include "Python.h"
+#include "pycore_object.h" // _PyObject_Init()
#include "datetime.h"
#include "structmember.h" // PyMemberDef
@@ -638,30 +639,24 @@ normalize_datetime(int *year, int *month, int *day,
static PyObject *
time_alloc(PyTypeObject *type, Py_ssize_t aware)
{
- PyObject *self;
-
- self = (PyObject *)
- PyObject_MALLOC(aware ?
- sizeof(PyDateTime_Time) :
- sizeof(_PyDateTime_BaseTime));
- if (self == NULL)
- return (PyObject *)PyErr_NoMemory();
- (void)PyObject_INIT(self, type);
+ size_t size = aware ? sizeof(PyDateTime_Time) : sizeof(_PyDateTime_BaseTime);
+ PyObject *self = (PyObject *)PyObject_Malloc(size);
+ if (self == NULL) {
+ return PyErr_NoMemory();
+ }
+ _PyObject_Init(self, type);
return self;
}
static PyObject *
datetime_alloc(PyTypeObject *type, Py_ssize_t aware)
{
- PyObject *self;
-
- self = (PyObject *)
- PyObject_MALLOC(aware ?
- sizeof(PyDateTime_DateTime) :
- sizeof(_PyDateTime_BaseDateTime));
- if (self == NULL)
- return (PyObject *)PyErr_NoMemory();
- (void)PyObject_INIT(self, type);
+ size_t size = aware ? sizeof(PyDateTime_DateTime) : sizeof(_PyDateTime_BaseDateTime);
+ PyObject *self = (PyObject *)PyObject_Malloc(size);
+ if (self == NULL) {
+ return PyErr_NoMemory();
+ }
+ _PyObject_Init(self, type);
return self;
}
diff --git a/Modules/gcmodule.c b/Modules/gcmodule.c
index 444db7b..110a48d 100644
--- a/Modules/gcmodule.c
+++ b/Modules/gcmodule.c
@@ -2263,8 +2263,10 @@ PyObject *
_PyObject_GC_New(PyTypeObject *tp)
{
PyObject *op = _PyObject_GC_Malloc(_PyObject_SIZE(tp));
- if (op != NULL)
- op = PyObject_INIT(op, tp);
+ if (op == NULL) {
+ return NULL;
+ }
+ _PyObject_Init(op, tp);
return op;
}
@@ -2280,8 +2282,10 @@ _PyObject_GC_NewVar(PyTypeObject *tp, Py_ssize_t nitems)
}
size = _PyObject_VAR_SIZE(tp, nitems);
op = (PyVarObject *) _PyObject_GC_Malloc(size);
- if (op != NULL)
- op = PyObject_INIT_VAR(op, tp, nitems);
+ if (op == NULL) {
+ return NULL;
+ }
+ _PyObject_InitVar(op, tp, nitems);
return op;
}