summaryrefslogtreecommitdiffstats
path: root/Python/gc.c
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2024-06-17 08:34:29 (GMT)
committerGitHub <noreply@github.com>2024-06-17 08:34:29 (GMT)
commitc2d5df5787b1f7fbd2583811c66c34a417593cad (patch)
tree37f5db44a7629824d9cfed62fbbe3fd7cf865f2b /Python/gc.c
parent3df2022931f77c5cadb3f51b371be6ae17587ede (diff)
downloadcpython-c2d5df5787b1f7fbd2583811c66c34a417593cad.zip
cpython-c2d5df5787b1f7fbd2583811c66c34a417593cad.tar.gz
cpython-c2d5df5787b1f7fbd2583811c66c34a417593cad.tar.bz2
gh-83754: Use the Py_TYPE() macro (#120599)
Don't access directly PyObject.ob_type, but use the Py_TYPE() macro instead.
Diffstat (limited to 'Python/gc.c')
-rw-r--r--Python/gc.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/Python/gc.c b/Python/gc.c
index b87697e..38a0da9 100644
--- a/Python/gc.c
+++ b/Python/gc.c
@@ -2083,7 +2083,7 @@ PyVarObject *
_PyObject_GC_Resize(PyVarObject *op, Py_ssize_t nitems)
{
const size_t basicsize = _PyObject_VAR_SIZE(Py_TYPE(op), nitems);
- const size_t presize = _PyType_PreHeaderSize(((PyObject *)op)->ob_type);
+ const size_t presize = _PyType_PreHeaderSize(Py_TYPE(op));
_PyObject_ASSERT((PyObject *)op, !_PyObject_GC_IS_TRACKED(op));
if (basicsize > (size_t)PY_SSIZE_T_MAX - presize) {
return (PyVarObject *)PyErr_NoMemory();
@@ -2101,7 +2101,7 @@ _PyObject_GC_Resize(PyVarObject *op, Py_ssize_t nitems)
void
PyObject_GC_Del(void *op)
{
- size_t presize = _PyType_PreHeaderSize(((PyObject *)op)->ob_type);
+ size_t presize = _PyType_PreHeaderSize(Py_TYPE(op));
PyGC_Head *g = AS_GC(op);
if (_PyObject_GC_IS_TRACKED(op)) {
gc_list_remove(g);
@@ -2109,7 +2109,7 @@ PyObject_GC_Del(void *op)
PyObject *exc = PyErr_GetRaisedException();
if (PyErr_WarnExplicitFormat(PyExc_ResourceWarning, "gc", 0,
"gc", NULL, "Object of type %s is not untracked before destruction",
- ((PyObject*)op)->ob_type->tp_name)) {
+ Py_TYPE(op)->tp_name)) {
PyErr_WriteUnraisable(NULL);
}
PyErr_SetRaisedException(exc);