| Index: pkg/front_end/lib/src/fasta/parser/parser.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/parser/parser.dart b/pkg/front_end/lib/src/fasta/parser/parser.dart
|
| index 725cb2871e2cb57cb66975e27a5d62cb7e24e1e2..f903a8b597cdd4b9bd9acff7d4c602147693a562 100644
|
| --- a/pkg/front_end/lib/src/fasta/parser/parser.dart
|
| +++ b/pkg/front_end/lib/src/fasta/parser/parser.dart
|
| @@ -270,9 +270,16 @@ class Parser {
|
| return parseScript(token);
|
| }
|
| token = parseMetadataStar(token);
|
| - final String value = token.stringValue;
|
| - if ((identical(value, 'abstract') && optional('class', token.next)) ||
|
| - identical(value, 'class')) {
|
| + String value = token.stringValue;
|
| + if (identical(value, 'abstract')) {
|
| + if (optional('class', token.next)) {
|
| + return parseClassOrNamedMixinApplication(token);
|
| + }
|
| + reportRecoverableErrorWithToken(token, fasta.templateExtraneousModifier);
|
| + token = token.next;
|
| + value = token.stringValue;
|
| + }
|
| + if (identical(value, 'class')) {
|
| return parseClassOrNamedMixinApplication(token);
|
| } else if (identical(value, 'enum')) {
|
| return parseEnum(token);
|
|
|