fix temp deallocation in PrimaryCmpNode
authorStefan Behnel <scoder@users.berlios.de>
Wed, 3 Dec 2008 21:39:44 +0000 (22:39 +0100)
committerStefan Behnel <scoder@users.berlios.de>
Wed, 3 Dec 2008 21:39:44 +0000 (22:39 +0100)
Cython/Compiler/ExprNodes.py

index f3f4a396d0f722eb39e300a5abd1ed747fd7c098..38796add27576bde0113a1198a6a164b5e83a1ec 100644 (file)
@@ -4457,9 +4457,9 @@ class PrimaryCmpNode(NewTempExprNode, CmpNode):
                 self.cascade.generate_evaluation_code(code,
                     self.result(), self.operand2)
             self.operand1.generate_disposal_code(code)
+            self.operand1.free_temps(code)
             self.operand2.generate_disposal_code(code)
-        self.operand1.free_temps(code)
-        self.operand2.free_temps(code)
+            self.operand2.free_temps(code)
 
     def generate_subexpr_disposal_code(self, code):
         #  If this is called, it is a non-cascaded cmp,