prevent InlinedDefNodeCallNode from being considered 'simple' by making CallNode...
authorStefan Behnel <stefan_ml@behnel.de>
Mon, 24 Dec 2012 07:34:40 +0000 (08:34 +0100)
committerStefan Behnel <stefan_ml@behnel.de>
Mon, 24 Dec 2012 07:34:40 +0000 (08:34 +0100)
Cython/Compiler/ExprNodes.py

index 90e0b2a..46189b6 100755 (executable)
@@ -3692,6 +3692,13 @@ class CallNode(ExprNode):
         # the case of function overloading.
         return self.function.type_dependencies(env)
 
+    def is_simple(self):
+        # C function calls could be considered simple, but they may
+        # have side-effects that may hit when multiple operations must
+        # be effected in order, e.g. when constructing the argument
+        # sequence for a function call or comparing values.
+        return False
+
     def may_be_none(self):
         if self.may_return_none is not None:
             return self.may_return_none
@@ -3857,13 +3864,6 @@ class SimpleCallNode(CallNode):
 
         return func_type
 
-    def is_simple(self):
-        # C function calls could be considered simple, but they may
-        # have side-effects that may hit when multiple operations must
-        # be effected in order, e.g. when constructing the argument
-        # sequence for a function call or comparing values.
-        return False
-
     def analyse_c_function_call(self, env):
         if self.function.type is error_type:
             self.type = error_type