diff options
author | Jussi Pakkanen <jpakkane@gmail.com> | 2014-05-26 22:56:12 +0300 |
---|---|---|
committer | Jussi Pakkanen <jpakkane@gmail.com> | 2014-05-26 22:56:12 +0300 |
commit | 17ba9bccd0e32fb85df924dc7d2b87b6ec0691c0 (patch) | |
tree | 167b32fbc318cb977b302518cb1790e8a40c0961 /mparser.py | |
parent | 371e747ca455851ae4597e0071abc90f040ae448 (diff) | |
download | meson-17ba9bccd0e32fb85df924dc7d2b87b6ec0691c0.zip meson-17ba9bccd0e32fb85df924dc7d2b87b6ec0691c0.tar.gz meson-17ba9bccd0e32fb85df924dc7d2b87b6ec0691c0.tar.bz2 |
Parse function and method calls properly.
Diffstat (limited to 'mparser.py')
-rw-r--r-- | mparser.py | 8 |
1 files changed, 4 insertions, 4 deletions
@@ -343,15 +343,15 @@ class Parser: def e6(self): left = self.e7() - if self.accept('dot'): - return self.method_call(left) - elif self.accept('lparen'): + if self.accept('lparen'): args = self.args() self.expect('rparen') if not isinstance(left, IdNode): raise ParseException('Function call must be applied to plain id', left.lineno, left.colno) - return FunctionNode(left.lineno, left.colno, left.value, args) + left = FunctionNode(left.lineno, left.colno, left.value, args) + while self.accept('dot'): + left = self.method_call(left) return left def e7(self): |