From 026ab6f4e50658b798be8d1ccf4f3005966e33ea Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Mon, 29 Aug 2022 14:55:46 +0200 Subject: Fix Py_INCREF() statistics in limited C API 3.10 (#96120) In the limited C API with a debug build, Py_INCREF() is implemented by calling _Py_IncRef() which calls Py_INCREF(). Only call _Py_INCREF_STAT_INC() once. --- Include/object.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Include/object.h b/Include/object.h index 21d3a75..75624fe 100644 --- a/Include/object.h +++ b/Include/object.h @@ -511,11 +511,11 @@ PyAPI_FUNC(void) _Py_DecRef(PyObject *); static inline void Py_INCREF(PyObject *op) { - _Py_INCREF_STAT_INC(); #if defined(Py_REF_DEBUG) && defined(Py_LIMITED_API) && Py_LIMITED_API+0 >= 0x030A0000 // Stable ABI for Python 3.10 built in debug mode. _Py_IncRef(op); #else + _Py_INCREF_STAT_INC(); // Non-limited C API and limited C API for Python 3.9 and older access // directly PyObject.ob_refcnt. #ifdef Py_REF_DEBUG -- cgit v0.12