Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(831)

Unified Diff: dart/sdk/lib/_internal/compiler/implementation/scanner/parser.dart

Issue 324293002: Improve parser error recovery. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Merged with r37359. Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: dart/sdk/lib/_internal/compiler/implementation/scanner/parser.dart
diff --git a/dart/sdk/lib/_internal/compiler/implementation/scanner/parser.dart b/dart/sdk/lib/_internal/compiler/implementation/scanner/parser.dart
index 34d0d653cf77319c2117a5bd84fbc13b152450e8..e6163a9fe8e287a38b1cc3c458312a6ecdb92c9b 100644
--- a/dart/sdk/lib/_internal/compiler/implementation/scanner/parser.dart
+++ b/dart/sdk/lib/_internal/compiler/implementation/scanner/parser.dart
@@ -825,13 +825,14 @@ class Parser {
token = parseVariableInitializerOpt(token);
++fieldCount;
}
- expectSemicolon(token);
+ Token semicolon = token;
+ token = expectSemicolon(token);
if (isTopLevel) {
- listener.endTopLevelFields(fieldCount, start, token);
+ listener.endTopLevelFields(fieldCount, start, semicolon);
} else {
- listener.endFields(fieldCount, start, token);
+ listener.endFields(fieldCount, start, semicolon);
}
- return token.next;
+ return token;
}
Token parseTopLevelMethod(Token start,

Powered by Google App Engine
This is Rietveld 408576698