+= assignments bug fix.

This commit is contained in:
Dave Halter
2015-11-01 13:21:41 +01:00
parent ee51b0a62f
commit dd6ade194a
2 changed files with 5 additions and 2 deletions

View File

@@ -164,7 +164,11 @@ class Evaluator(object):
t = self.eval_element(rhs)
left = precedence.calculate(self, left, operator, t)
types = left
del self.predefined_if_name_dict_dict[for_stmt]
if ordered:
# If there are no for entries, we cannot iterate and the
# types are defined by += entries. Therefore the for loop
# is never called.
del self.predefined_if_name_dict_dict[for_stmt]
else:
types = precedence.calculate(self, left, operator, types)
debug.dbg('eval_statement result %s', types)

View File

@@ -406,7 +406,6 @@ def ordered_elements_of_iterable(evaluator, iterable_type, all_values):
ordered = [literals_to_types(evaluator, all_values)]
break
else:
# Try
for i, types in enumerate(sequence.per_index_values()):
try:
ordered[i] |= types