https://github.com/python/cpython/commit/d5d4cbbd8f20921646a90bec27535c2f9a3e83b2 commit: d5d4cbbd8f20921646a90bec27535c2f9a3e83b2 branch: main author: Victor Stinner <vstin...@python.org> committer: vstinner <vstin...@python.org> date: 2025-02-26T21:35:56+01:00 summary:
gh-111178: Fix function signatures in namespaceobject.c (#130590) files: M Objects/namespaceobject.c diff --git a/Objects/namespaceobject.c b/Objects/namespaceobject.c index 4ef3bd92f5a569..a9de9fe13f9ce1 100644 --- a/Objects/namespaceobject.c +++ b/Objects/namespaceobject.c @@ -12,6 +12,8 @@ typedef struct { PyObject *ns_dict; } _PyNamespaceObject; +#define _PyNamespace_CAST(op) _Py_CAST(_PyNamespaceObject*, (op)) + static PyMemberDef namespace_members[] = { {"__dict__", _Py_T_OBJECT, offsetof(_PyNamespaceObject, ns_dict), Py_READONLY}, @@ -41,8 +43,9 @@ namespace_new(PyTypeObject *type, PyObject *args, PyObject *kwds) static int -namespace_init(_PyNamespaceObject *ns, PyObject *args, PyObject *kwds) +namespace_init(PyObject *op, PyObject *args, PyObject *kwds) { + _PyNamespaceObject *ns = _PyNamespace_CAST(op); PyObject *arg = NULL; if (!PyArg_UnpackTuple(args, _PyType_Name(Py_TYPE(ns)), 0, 1, &arg)) { return -1; @@ -76,8 +79,9 @@ namespace_init(_PyNamespaceObject *ns, PyObject *args, PyObject *kwds) static void -namespace_dealloc(_PyNamespaceObject *ns) +namespace_dealloc(PyObject *op) { + _PyNamespaceObject *ns = _PyNamespace_CAST(op); PyObject_GC_UnTrack(ns); Py_CLEAR(ns->ns_dict); Py_TYPE(ns)->tp_free((PyObject *)ns); @@ -169,16 +173,18 @@ namespace_repr(PyObject *ns) static int -namespace_traverse(_PyNamespaceObject *ns, visitproc visit, void *arg) +namespace_traverse(PyObject *op, visitproc visit, void *arg) { + _PyNamespaceObject *ns = _PyNamespace_CAST(op); Py_VISIT(ns->ns_dict); return 0; } static int -namespace_clear(_PyNamespaceObject *ns) +namespace_clear(PyObject *op) { + _PyNamespaceObject *ns = _PyNamespace_CAST(op); Py_CLEAR(ns->ns_dict); return 0; } @@ -258,12 +264,12 @@ PyTypeObject _PyNamespace_Type = { "types.SimpleNamespace", /* tp_name */ sizeof(_PyNamespaceObject), /* tp_basicsize */ 0, /* tp_itemsize */ - (destructor)namespace_dealloc, /* tp_dealloc */ + namespace_dealloc, /* tp_dealloc */ 0, /* tp_vectorcall_offset */ 0, /* tp_getattr */ 0, /* tp_setattr */ 0, /* tp_as_async */ - (reprfunc)namespace_repr, /* tp_repr */ + namespace_repr, /* tp_repr */ 0, /* tp_as_number */ 0, /* tp_as_sequence */ 0, /* tp_as_mapping */ @@ -276,8 +282,8 @@ PyTypeObject _PyNamespace_Type = { Py_TPFLAGS_DEFAULT | Py_TPFLAGS_HAVE_GC | Py_TPFLAGS_BASETYPE, /* tp_flags */ namespace_doc, /* tp_doc */ - (traverseproc)namespace_traverse, /* tp_traverse */ - (inquiry)namespace_clear, /* tp_clear */ + namespace_traverse, /* tp_traverse */ + namespace_clear, /* tp_clear */ namespace_richcompare, /* tp_richcompare */ 0, /* tp_weaklistoffset */ 0, /* tp_iter */ @@ -290,9 +296,9 @@ PyTypeObject _PyNamespace_Type = { 0, /* tp_descr_get */ 0, /* tp_descr_set */ offsetof(_PyNamespaceObject, ns_dict), /* tp_dictoffset */ - (initproc)namespace_init, /* tp_init */ + namespace_init, /* tp_init */ PyType_GenericAlloc, /* tp_alloc */ - (newfunc)namespace_new, /* tp_new */ + namespace_new, /* tp_new */ PyObject_GC_Del, /* tp_free */ }; _______________________________________________ Python-checkins mailing list -- python-checkins@python.org To unsubscribe send an email to python-checkins-le...@python.org https://mail.python.org/mailman3/lists/python-checkins.python.org/ Member address: arch...@mail-archive.com