From 7a4a6d221eb44b64e85bb4623ff1e88099aa628b Mon Sep 17 00:00:00 2001 From: Sei Lisa Date: Fri, 8 Aug 2014 00:52:23 +0200 Subject: [PATCH] Fix field assignment. Add regression test. --- lslopt/lslparse.py | 1 + testparser.py | 1 + 2 files changed, 2 insertions(+) diff --git a/lslopt/lslparse.py b/lslopt/lslparse.py index 00a0e93..bcc9faa 100644 --- a/lslopt/lslparse.py +++ b/lslopt/lslparse.py @@ -669,6 +669,7 @@ class parser(object): lvalue = {'nt':'FLD', 't':'float', 'ch':[lvalue], 'fld':self.tok[1]} self.NextToken() tok0 = self.tok[0] + typ = 'float' if tok0 in ('++', '--'): self.NextToken() diff --git a/testparser.py b/testparser.py index 4cf03ff..5816ce8 100644 --- a/testparser.py +++ b/testparser.py @@ -231,6 +231,7 @@ class Test02_Parser(UnitTestCase): self.assertRaises(EParseCodePathWithoutRet, self.parser.parse, '''key f() { if (1) ; else if (2) return ""; else return ""; }''') self.parser.parse('f(){if(1) {state default;}if (1) if (1) state default; else state default;}default{timer(){}}') + self.parser.parse('default{timer(){vector v;v.x=0;}}') def tearDown(self):