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

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

Issue 324293002: Improve parser error recovery. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge
Patch Set: Addressed Johnni's comments 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/class_element_parser.dart
diff --git a/dart/sdk/lib/_internal/compiler/implementation/scanner/class_element_parser.dart b/dart/sdk/lib/_internal/compiler/implementation/scanner/class_element_parser.dart
index 4eeed62456597f72bc236fa67ce440920278b403..3d35ffedfa90912f0d237a17a2b7b73ff2f463a1 100644
--- a/dart/sdk/lib/_internal/compiler/implementation/scanner/class_element_parser.dart
+++ b/dart/sdk/lib/_internal/compiler/implementation/scanner/class_element_parser.dart
@@ -174,6 +174,7 @@ class MemberListener extends NodeListener {
}
void endFields(int count, Token beginToken, Token endToken) {
+ bool hasParseError = memberErrors.head;
super.endFields(count, beginToken, endToken);
VariableDefinitions variableDefinitions = popNode();
Modifiers modifiers = variableDefinitions.modifiers;
@@ -185,7 +186,8 @@ class MemberListener extends NodeListener {
}
buildFieldElements(modifiers, variableDefinitions.definitions,
enclosingElement,
- buildFieldElement, beginToken, endToken);
+ buildFieldElement, beginToken, endToken,
+ hasParseError);
}
void endInitializer(Token assignmentOperator) {

Powered by Google App Engine
This is Rietveld 408576698