| Index: pkg/front_end/lib/src/fasta/parser/class_member_parser.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/parser/class_member_parser.dart b/pkg/front_end/lib/src/fasta/parser/class_member_parser.dart
|
| index 1ab36b1920ecc0315a5b5e97df32ffd96c9894d1..5de363edd91d007f7d7aedba4a1a7c2dcfeb94d1 100644
|
| --- a/pkg/front_end/lib/src/fasta/parser/class_member_parser.dart
|
| +++ b/pkg/front_end/lib/src/fasta/parser/class_member_parser.dart
|
| @@ -6,21 +6,33 @@ library fasta.parser.class_member_parser;
|
|
|
| import '../../scanner/token.dart' show Token;
|
|
|
| +import '../fasta_codes.dart' show FastaMessage;
|
| +
|
| import 'listener.dart' show Listener;
|
|
|
| -import 'parser.dart' show Parser;
|
| +import 'parser.dart' show Assert, Parser;
|
|
|
| /// Parser similar to [TopLevelParser] but also parses class members (excluding
|
| /// their bodies).
|
| class ClassMemberParser extends Parser {
|
| ClassMemberParser(Listener listener) : super(listener);
|
|
|
| + @override
|
| Token parseExpression(Token token) => skipExpression(token);
|
|
|
| - Token parseRecoverExpression(Token token) {
|
| + @override
|
| + Token parseAssert(Token token, Assert kind) {
|
| + if (kind == Assert.Statement) {
|
| + return super.parseAssert(token, kind);
|
| + } else {
|
| + return skipExpression(token);
|
| + }
|
| + }
|
| +
|
| + Token parseRecoverExpression(Token token, FastaMessage message) {
|
| Token begin = token;
|
| token = skipExpression(token);
|
| - listener.handleRecoverExpression(begin);
|
| + listener.handleRecoverExpression(begin, message);
|
| return token;
|
| }
|
|
|
|
|