From 497af27e800b17013fd88d747fd5124c1b7069a7 Mon Sep 17 00:00:00 2001 From: Stefan Behnel Date: Sat, 25 Oct 2008 13:11:59 +0200 Subject: [PATCH] Py2.4 requires some more definitions for the set type --- Cython/Compiler/Builtin.py | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/Cython/Compiler/Builtin.py b/Cython/Compiler/Builtin.py index 60c2deaf..02b9f0a2 100644 --- a/Cython/Compiler/Builtin.py +++ b/Cython/Compiler/Builtin.py @@ -169,7 +169,14 @@ py23_set_utility_code = [""" ((ob)->ob_type == ((PyTypeObject*)&PySet_Type) || \ (ob)->ob_type == ((PyTypeObject*)&PyFrozenSet_Type)) -#define PySet_Pop(set) PyObject_CallMethod(set, "pop", NULL) +#define PySet_New(iterable) \ + PyObject_CallFunctionObjArgs((PyObject *)PySet_Type, iterable, NULL) +#define Pyx_PyFrozenSet_New(iterable) \ + PyObject_CallFunctionObjArgs((PyObject *)PyFrozenSet_Type, iterable, NULL) + +#define PySet_Size(anyset) PyObject_Size(anyset) +#define PySet_Contains(anyset, key) PySequence_Contains(anyset, key) +#define PySet_Pop(set) PyObject_CallMethod(set, "pop", NULL) static INLINE int PySet_Clear(PyObject *set) { PyObject *ret = PyObject_CallMethod(set, "clear", NULL); @@ -205,14 +212,6 @@ static PyTypeObject *PyFrozenSet_Type = NULL; #define PyFrozenSet_CheckExact(ob) ((ob)->ob_type == &PyFrozenSet_Type) -#define PySet_New(iterable) \ - PyObject_CallFunctionObjArgs((PyObject *)PySet_Type, iterable, NULL) -#define Pyx_PyFrozenSet_New(iterable) \ - PyObject_CallFunctionObjArgs((PyObject *)PyFrozenSet_Type, iterable, NULL) - -#define PySet_Size(anyset) PyObject_Size(anyset) -#define PySet_Contains(anyset, key) PySequence_Contains(anyset, key) - /* ---------------------------------------------------------------- */ static int __Pyx_Py23SetsImport(void) { -- 2.26.2