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.
This commit is contained in:
Victor Stinner 2020-06-16 01:28:07 +02:00 committed by GitHub
parent 7ab92d54b5
commit 04fc4f2a46
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
17 changed files with 113 additions and 117 deletions

View file

@ -139,23 +139,23 @@ Py_DecRef(PyObject *o)
PyObject *
PyObject_Init(PyObject *op, PyTypeObject *tp)
{
/* Any changes should be reflected in PyObject_INIT() macro */
if (op == NULL) {
return PyErr_NoMemory();
}
return PyObject_INIT(op, tp);
_PyObject_Init(op, tp);
return op;
}
PyVarObject *
PyObject_InitVar(PyVarObject *op, PyTypeObject *tp, Py_ssize_t size)
{
/* Any changes should be reflected in PyObject_INIT_VAR() macro */
if (op == NULL) {
return (PyVarObject *) PyErr_NoMemory();
}
return PyObject_INIT_VAR(op, tp, size);
_PyObject_InitVar(op, tp, size);
return op;
}
PyObject *
@ -165,7 +165,7 @@ _PyObject_New(PyTypeObject *tp)
if (op == NULL) {
return PyErr_NoMemory();
}
PyObject_INIT(op, tp);
_PyObject_Init(op, tp);
return op;
}
@ -175,9 +175,11 @@ _PyObject_NewVar(PyTypeObject *tp, Py_ssize_t nitems)
PyVarObject *op;
const size_t size = _PyObject_VAR_SIZE(tp, nitems);
op = (PyVarObject *) PyObject_MALLOC(size);
if (op == NULL)
if (op == NULL) {
return (PyVarObject *)PyErr_NoMemory();
return PyObject_INIT_VAR(op, tp, nitems);
}
_PyObject_InitVar(op, tp, nitems);
return op;
}
void