From fff037c308b98eb5e5591ec3a22159633be9ea17 Mon Sep 17 00:00:00 2001 From: Stefan Behnel Date: Tue, 20 Apr 2010 09:17:16 +0200 Subject: [PATCH] safety fix: why should the return type always be exactly PyObject if it is known to be bool? --- Cython/Compiler/ExprNodes.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Cython/Compiler/ExprNodes.py b/Cython/Compiler/ExprNodes.py index ec0c0f15..a3e717f0 100755 --- a/Cython/Compiler/ExprNodes.py +++ b/Cython/Compiler/ExprNodes.py @@ -5553,7 +5553,7 @@ class CmpNode(object): def generate_operation_code(self, code, result_code, operand1, op , operand2): - if self.type is PyrexTypes.py_object_type: + if self.type.is_pyobject: coerce_result = "__Pyx_PyBool_FromLong" else: coerce_result = "" @@ -5563,7 +5563,7 @@ class CmpNode(object): negation = "" if op == 'in' or op == 'not_in': code.globalstate.use_utility_code(contains_utility_code) - if self.type is PyrexTypes.py_object_type: + if self.type.is_pyobject: coerce_result = "__Pyx_PyBoolOrNull_FromLong" if op == 'not_in': negation = "__Pyx_NegateNonNeg" @@ -5577,7 +5577,7 @@ class CmpNode(object): method = "PyDict_Contains" else: method = "PySequence_Contains" - if self.type is PyrexTypes.py_object_type: + if self.type.is_pyobject: error_clause = code.error_goto_if_null got_ref = "__Pyx_XGOTREF(%s); " % result_code else: -- 2.26.2