bpo-35059: Add Py_STATIC_INLINE() macro (GH-10093)
* Add Py_STATIC_INLINE() macro to declare a "static inline" function.
If the compiler supports it, try to always inline the function even if no
optimization level was specified.
* Modify pydtrace.h to use Py_STATIC_INLINE() when WITH_DTRACE is
not defined.
* Add an unit test on Py_DECREF() to make sure that
_Py_NegativeRefcount() reports the correct filename.
diff --git a/Objects/object.c b/Objects/object.c
index 4597b12..8256071 100644
--- a/Objects/object.c
+++ b/Objects/object.c
@@ -200,14 +200,14 @@
#ifdef Py_REF_DEBUG
/* Log a fatal error; doesn't return. */
void
-_Py_NegativeRefcount(const char *fname, int lineno, PyObject *op)
+_Py_NegativeRefcount(const char *filename, int lineno, PyObject *op)
{
char buf[300];
PyOS_snprintf(buf, sizeof(buf),
"%s:%i object at %p has negative ref count "
"%" PY_FORMAT_SIZE_T "d",
- fname, lineno, op, op->ob_refcnt);
+ filename, lineno, op, op->ob_refcnt);
Py_FatalError(buf);
}