summaryrefslogtreecommitdiffstats
path: root/Include/cpython/setobject.h
diff options
context:
space:
mode:
Diffstat (limited to 'Include/cpython/setobject.h')
-rw-r--r--Include/cpython/setobject.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/Include/cpython/setobject.h b/Include/cpython/setobject.h
index b4443a6..20fd63e 100644
--- a/Include/cpython/setobject.h
+++ b/Include/cpython/setobject.h
@@ -58,8 +58,13 @@ typedef struct {
PyObject *weakreflist; /* List of weak references */
} PySetObject;
-#define PySet_GET_SIZE(so) \
- (assert(PyAnySet_Check(so)), (((PySetObject *)(so))->used))
+#define _PySet_CAST(so) \
+ (assert(PyAnySet_Check(so)), _Py_CAST(PySetObject*, so))
+
+static inline Py_ssize_t PySet_GET_SIZE(PyObject *so) {
+ return _PySet_CAST(so)->used;
+}
+#define PySet_GET_SIZE(so) PySet_GET_SIZE(_PyObject_CAST(so))
PyAPI_DATA(PyObject *) _PySet_Dummy;