STINNER Victor <vstin...@redhat.com> added the comment:
> Drawbacks: Require a specific type can introduce compiler warnings if the > caller doesn't pass the proper type (PyObject* or PyVarObject*). > _Py_NewReference() and _Py_ForgetReference() seem to be properly used, but > not PyObject_INIT() and PyObject_INIT_VAR(). I worked around this issue by adding a macro to cast the argument and declare the static inline function with a different name. Example: static inline void _Py_INCREF(PyObject *op) { _Py_INC_REFTOTAL; op->ob_refcnt++; } #define Py_INCREF(op) _Py_INCREF(_PyObject_CAST(op)) ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue35059> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com