| 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 7580511ad0e7d1d44dadacb5129acc57205adbaa..80dd6fa415e4b7a3e3f1732b4148ac7759b06e9d 100644
|
| --- a/pkg/analyzer/lib/src/fasta/ast_builder.dart
|
| +++ b/pkg/analyzer/lib/src/fasta/ast_builder.dart
|
| @@ -1138,6 +1138,7 @@ class AstBuilder extends ScopeListener {
|
|
|
| @override
|
| void beginCompilationUnit(Token token) {
|
| + super.beginCompilationUnit(token);
|
| push(token);
|
| }
|
|
|
| @@ -1896,15 +1897,20 @@ class AstBuilder extends ScopeListener {
|
| ParserErrorCode.EXPECTED_STRING_LITERAL, charOffset, 1);
|
| return;
|
| case "UNEXPECTED_TOKEN":
|
| - var text = arguments['string'];
|
| + String text = arguments['string'];
|
| if (text == null) {
|
| Token token = arguments['token'];
|
| if (token != null) {
|
| text = token.lexeme;
|
| }
|
| }
|
| - errorReporter?.reportErrorForOffset(
|
| - ParserErrorCode.UNEXPECTED_TOKEN, charOffset, 1, [text]);
|
| + if (text == ';') {
|
| + errorReporter?.reportErrorForOffset(
|
| + ParserErrorCode.EXPECTED_TOKEN, charOffset, text.length, [text]);
|
| + } else {
|
| + errorReporter?.reportErrorForOffset(
|
| + ParserErrorCode.UNEXPECTED_TOKEN, charOffset, 1, [text]);
|
| + }
|
| return;
|
| default:
|
| // fall through
|
|
|