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

Unified Diff: pkg/analyzer/lib/src/fasta/ast_builder.dart

Issue 2999303002: map fasta error codes to analyzer (Closed)
Patch Set: rebase Created 3 years, 4 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: pkg/analyzer/lib/src/fasta/ast_builder.dart
diff --git a/pkg/analyzer/lib/src/fasta/ast_builder.dart b/pkg/analyzer/lib/src/fasta/ast_builder.dart
index 6425a7ebfb9c4b0af48f8e45f6df0836d6273029..c6f57cea7b1b7bb065b097aada8bc69c5879a607 100644
--- a/pkg/analyzer/lib/src/fasta/ast_builder.dart
+++ b/pkg/analyzer/lib/src/fasta/ast_builder.dart
@@ -1906,6 +1906,18 @@ class AstBuilder extends ScopeListener {
void addCompileTimeError(Message message, int charOffset) {
Code code = message.code;
Map<String, dynamic> arguments = message.arguments;
+
+ String stringOrTokenLexeme() {
+ var text = arguments['string'];
+ if (text == null) {
+ Token token = arguments['token'];
+ if (token != null) {
+ text = token.lexeme;
+ }
+ }
+ return text;
+ }
+
switch (code.analyzerCode) {
case "EXPECTED_TYPE_NAME":
errorReporter?.reportErrorForOffset(
@@ -1923,20 +1935,19 @@ class AstBuilder extends ScopeListener {
errorReporter?.reportErrorForOffset(
ParserErrorCode.EXPECTED_STRING_LITERAL, charOffset, 1);
return;
+ case "EXTRANEOUS_MODIFIER":
+ String text = stringOrTokenLexeme();
+ errorReporter?.reportErrorForOffset(ParserErrorCode.EXTRANEOUS_MODIFIER,
+ charOffset, text.length, [text]);
+ return;
case "UNEXPECTED_TOKEN":
- String text = arguments['string'];
- if (text == null) {
- Token token = arguments['token'];
- if (token != null) {
- text = token.lexeme;
- }
- }
+ String text = stringOrTokenLexeme();
if (text == ';') {
errorReporter?.reportErrorForOffset(
ParserErrorCode.EXPECTED_TOKEN, charOffset, text.length, [text]);
} else {
- errorReporter?.reportErrorForOffset(
- ParserErrorCode.UNEXPECTED_TOKEN, charOffset, 1, [text]);
+ errorReporter?.reportErrorForOffset(ParserErrorCode.UNEXPECTED_TOKEN,
+ charOffset, text.length, [text]);
}
return;
default:
« no previous file with comments | « pkg/analyzer/lib/src/dart/error/syntactic_errors.dart ('k') | pkg/analyzer/test/generated/parser_fasta_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698