From: Rico Tzschichholz Date: Fri, 8 Mar 2019 17:46:02 +0000 (+0100) Subject: parser: Exclude trailing semicolon from source_reference of statements X-Git-Tag: 0.44.0~4 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=ea50b089a2a4c676a0157826d4fd483692bcddb9;p=thirdparty%2Fvala.git parser: Exclude trailing semicolon from source_reference of statements --- diff --git a/vala/valaparser.vala b/vala/valaparser.vala index 1a1320bb1..669c29d87 100644 --- a/vala/valaparser.vala +++ b/vala/valaparser.vala @@ -2028,15 +2028,17 @@ public class Vala.Parser : CodeVisitor { Statement parse_break_statement () throws ParseError { var begin = get_location (); expect (TokenType.BREAK); + var src = get_src (begin); expect (TokenType.SEMICOLON); - return new BreakStatement (get_src (begin)); + return new BreakStatement (src); } Statement parse_continue_statement () throws ParseError { var begin = get_location (); expect (TokenType.CONTINUE); + var src = get_src (begin); expect (TokenType.SEMICOLON); - return new ContinueStatement (get_src (begin)); + return new ContinueStatement (src); } Statement parse_return_statement () throws ParseError { @@ -2046,8 +2048,9 @@ public class Vala.Parser : CodeVisitor { if (current () != TokenType.SEMICOLON) { expr = parse_expression (); } + var src = get_src (begin); expect (TokenType.SEMICOLON); - return new ReturnStatement (expr, get_src (begin)); + return new ReturnStatement (expr, src); } Statement parse_yield_statement () throws ParseError { @@ -2062,16 +2065,18 @@ public class Vala.Parser : CodeVisitor { } return parse_expression_statement (); } + var src = get_src (begin); expect (TokenType.SEMICOLON); - return new YieldStatement (get_src (begin)); + return new YieldStatement (src); } Statement parse_throw_statement () throws ParseError { var begin = get_location (); expect (TokenType.THROW); var expr = parse_expression (); + var src = get_src (begin); expect (TokenType.SEMICOLON); - return new ThrowStatement (expr, get_src (begin)); + return new ThrowStatement (expr, src); } Statement parse_try_statement () throws ParseError { @@ -2138,16 +2143,18 @@ public class Vala.Parser : CodeVisitor { expect (TokenType.OPEN_PARENS); var expr = parse_expression (); expect (TokenType.CLOSE_PARENS); + var src = get_src (begin); expect (TokenType.SEMICOLON); - return new UnlockStatement (expr, get_src (begin)); + return new UnlockStatement (expr, src); } Statement parse_delete_statement () throws ParseError { var begin = get_location (); expect (TokenType.DELETE); var expr = parse_expression (); + var src = get_src (begin); expect (TokenType.SEMICOLON); - return new DeleteStatement (expr, get_src (begin)); + return new DeleteStatement (expr, src); } string parse_attribute_value () throws ParseError {