From 64e5d0dc923c299a2b378bef9410ebc99ad8468a Mon Sep 17 00:00:00 2001 From: Sei Lisa Date: Sun, 27 Jul 2014 22:03:31 +0200 Subject: [PATCH] Check that it's a variable definition before collapsing or giving warning. --- lslopt/lsloptimizer.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/lslopt/lsloptimizer.py b/lslopt/lsloptimizer.py index 59b387d..1b20b1e 100644 --- a/lslopt/lsloptimizer.py +++ b/lslopt/lsloptimizer.py @@ -367,9 +367,10 @@ class optimizer(object): self.Fold(entry[2][event][2], False) elif type(entry[2]) == tuple: self.Fold(entry[2]) # global - val = entry[2] - # Unfold constant - if val[0] == 'EXPR' and val[2][0] == CONSTANT: - symtab[0][name] = entry[:2] + (val[2][2],) + entry[3:] - else: - warning(u'WARNING: Expression does not collapse to a single constant.') + if len(entry) == 3: + val = entry[2] + # Unfold constant + if val[0] == 'EXPR' and val[2][0] == CONSTANT: + symtab[0][name] = entry[:2] + (val[2][2],) + entry[3:] + else: + warning(u'WARNING: Expression does not collapse to a single constant.')