From: Jürg Billeter Date: Thu, 12 Feb 2009 13:37:49 +0000 (+0000) Subject: Fix else if parsing, fixes bug 562632 X-Git-Tag: 0.5.7~37 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=62086cde0ada111491e8f5ab9cb0d9813a998f0b;p=thirdparty%2Fvala.git Fix else if parsing, fixes bug 562632 2009-02-12 Jürg Billeter * vala/valagenieparser.vala: Fix else if parsing, fixes bug 562632 svn path=/trunk/; revision=2433 --- diff --git a/ChangeLog b/ChangeLog index 3c33cfa63..ab3d5bbc1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2009-02-12 Jürg Billeter + + * vala/valagenieparser.vala: + + Fix else if parsing, fixes bug 562632 + 2009-02-12 Ryan Lortie * gobject/valagasyncmodule.vala: diff --git a/vala/valagenieparser.vala b/vala/valagenieparser.vala index 9bbee34f2..e7602218e 100644 --- a/vala/valagenieparser.vala +++ b/vala/valagenieparser.vala @@ -1775,6 +1775,13 @@ public class Vala.Genie.Parser : CodeVisitor { var true_stmt = parse_embedded_statement (); Block false_stmt = null; if (accept (TokenType.ELSE)) { + // allow `else if' on the same line without `do' + if (!accept (TokenType.DO) && current () != TokenType.IF) { + expect (TokenType.EOL); + } else { + accept (TokenType.EOL); + } + false_stmt = parse_embedded_statement (); } return new IfStatement (condition, true_stmt, false_stmt, src);