[vala/0.40] parser: Restrict source_reference for catch/lock expression to its header
- From: Rico Tzschichholz <ricotz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala/0.40] parser: Restrict source_reference for catch/lock expression to its header
- Date: Tue, 9 Apr 2019 13:48:31 +0000 (UTC)
commit 5af0830b33ce8498e194bce413d86b89067ca98b
Author: Rico Tzschichholz <ricotz ubuntu com>
Date: Fri Mar 8 18:46:02 2019 +0100
parser: Restrict source_reference for catch/lock expression to its header
vala/valaparser.vala | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
---
diff --git a/vala/valaparser.vala b/vala/valaparser.vala
index 44936e0b2..802e5f4f8 100644
--- a/vala/valaparser.vala
+++ b/vala/valaparser.vala
@@ -2108,8 +2108,9 @@ public class Vala.Parser : CodeVisitor {
}
void parse_catch_clauses (List<CatchClause> catch_clauses) throws ParseError {
- while (accept (TokenType.CATCH)) {
+ while (current () == TokenType.CATCH) {
var begin = get_location ();
+ expect (TokenType.CATCH);
DataType type = null;
string id = null;
if (accept (TokenType.OPEN_PARENS)) {
@@ -2117,8 +2118,9 @@ public class Vala.Parser : CodeVisitor {
id = parse_identifier ();
expect (TokenType.CLOSE_PARENS);
}
+ var src = get_src (begin);
var block = parse_block ();
- catch_clauses.add (new CatchClause (type, id, block, get_src (begin)));
+ catch_clauses.add (new CatchClause (type, id, block, src));
}
}
@@ -2134,8 +2136,9 @@ public class Vala.Parser : CodeVisitor {
expect (TokenType.OPEN_PARENS);
var expr = parse_expression ();
expect (TokenType.CLOSE_PARENS);
+ var src = get_src (begin);
var stmt = parse_embedded_statement ("lock", false);
- return new LockStatement (expr, stmt, get_src (begin));
+ return new LockStatement (expr, stmt, src);
}
Statement parse_delete_statement () throws ParseError {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]