@@ -239,7 +239,7 @@ PyAPI_FUNC(int) Py_Is(PyObject *x, PyObject *y);
239
239
#define Py_Is (x , y ) ((x) == (y))
240
240
241
241
#if defined(Py_GIL_DISABLED ) && !defined(Py_LIMITED_API )
242
- inline uintptr_t
242
+ inline PyAPI_FUNC ( uintptr_t )
243
243
_Py_ThreadId (void )
244
244
{
245
245
uintptr_t tid ;
@@ -285,7 +285,7 @@ _Py_ThreadId(void)
285
285
return tid ;
286
286
}
287
287
288
- inline Py_ALWAYS_INLINE int
288
+ inline Py_ALWAYS_INLINE PyAPI_FUNC ( int )
289
289
_Py_IsOwnedByCurrentThread (PyObject * ob )
290
290
{
291
291
return ob -> ob_tid == _Py_ThreadId ();
@@ -333,7 +333,7 @@ static inline Py_ssize_t Py_SIZE(PyObject *ob) {
333
333
#endif
334
334
335
335
#if !defined(Py_LIMITED_API ) || Py_LIMITED_API + 0 < 0x030d0000
336
- inline Py_ALWAYS_INLINE int _Py_IsImmortal (PyObject * op )
336
+ inline Py_ALWAYS_INLINE PyAPI_FUNC ( int ) _Py_IsImmortal (PyObject * op )
337
337
{
338
338
#if defined(Py_GIL_DISABLED )
339
339
return (op -> ob_ref_local == _Py_IMMORTAL_REFCNT_LOCAL );
@@ -360,7 +360,7 @@ static inline int Py_IS_TYPE(PyObject *ob, PyTypeObject *type) {
360
360
#if defined(Py_LIMITED_API ) && Py_LIMITED_API + 0 >= 0x030d0000
361
361
PyAPI_DATA (void ) Py_SET_REFCNT (PyObject * ob , Py_ssize_t refcnt );
362
362
#else
363
- inline void Py_SET_REFCNT (PyObject * ob , Py_ssize_t refcnt ) {
363
+ inline PyAPI_FUNC ( void ) Py_SET_REFCNT (PyObject * ob , Py_ssize_t refcnt ) {
364
364
// This immortal check is for code that is unaware of immortal objects.
365
365
// The runtime tracks these objects and we should avoid as much
366
366
// as possible having extensions inadvertently change the refcnt
0 commit comments