summaryrefslogtreecommitdiff
path: root/Cython/Compiler/FlowControl.py
diff options
context:
space:
mode:
authorStefan Behnel <stefan_ml@behnel.de>2014-11-08 13:00:53 +0100
committerStefan Behnel <stefan_ml@behnel.de>2014-11-08 13:00:53 +0100
commit657a0066867f77051e96f345f15b344788bc9610 (patch)
tree70bddb8c3af5f5759ea5f05ec34817cd539b477f /Cython/Compiler/FlowControl.py
parent0cccf2ab9120acbce84ba43e64c6b483e1c5a40e (diff)
downloadcython-657a0066867f77051e96f345f15b344788bc9610.tar.gz
make item types of tuple/array unpacking inferable and institutionalise the IndexNode creation for the inference
Diffstat (limited to 'Cython/Compiler/FlowControl.py')
-rw-r--r--Cython/Compiler/FlowControl.py6
1 files changed, 3 insertions, 3 deletions
diff --git a/Cython/Compiler/FlowControl.py b/Cython/Compiler/FlowControl.py
index 03e2108be..7e1aa769b 100644
--- a/Cython/Compiler/FlowControl.py
+++ b/Cython/Compiler/FlowControl.py
@@ -776,9 +776,9 @@ class ControlFlowAnalysis(CythonTransform):
if entry is None: # TODO: This shouldn't happen...
return
self.flow.mark_assignment(lhs, rhs, entry)
- elif isinstance(lhs, ExprNodes.SequenceNode):
- for arg in lhs.args:
- self.mark_assignment(arg)
+ elif lhs.is_sequence_constructor:
+ for i, arg in enumerate(lhs.args):
+ self.mark_assignment(arg, rhs.inferable_item_node(i) if rhs else None)
else:
self._visit(lhs)