From 67e7c96962880aabc7e80e180ea4f5bcc2c4ee84 Mon Sep 17 00:00:00 2001 From: Konstantin Shcheglov Date: Wed, 22 Feb 2023 17:03:38 +0000 Subject: [PATCH] Fix parser to use correct begin token, to get documentation comments from it. Change-Id: I9505353c9c6c00082e588aced34e8151c7ab22b7 Bug: https://github.com/dart-lang/sdk/issues/51447 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/284441 Reviewed-by: Johnni Winther Reviewed-by: Brian Wilkerson Commit-Queue: Konstantin Shcheglov --- .../lib/src/parser/parser_impl.dart | 11 ++- pkg/analyzer/lib/src/fasta/ast_builder.dart | 8 +- .../test/src/fasta/ast_builder_test.dart | 83 ++++++++++++++++++- .../src/summary/resolved_ast_printer.dart | 8 +- .../augmentation/augment_super.dart.expect | 8 +- .../augment_super.dart.intertwined.expect | 12 +-- .../top_level_declarations.dart.expect | 14 ++-- ...level_declarations.dart.intertwined.expect | 20 ++--- .../augmentation/top_level_errors.dart.expect | 14 ++-- .../top_level_errors.dart.intertwined.expect | 20 ++--- .../base/base_class_declaration.dart.expect | 14 ++-- ..._class_declaration.dart.intertwined.expect | 20 ++--- .../final/final_class_declaration.dart.expect | 14 ++-- ..._class_declaration.dart.intertwined.expect | 20 ++--- .../interface_class_declaration.dart.expect | 14 ++-- ..._class_declaration.dart.intertwined.expect | 20 ++--- .../mixin/mixin_class.dart.expect | 14 ++-- .../mixin/mixin_class.dart.intertwined.expect | 20 ++--- .../inline_class/inline_class.dart.expect | 14 ++-- .../inline_class.dart.intertwined.expect | 20 ++--- .../macros/macro_class.dart.expect | 14 ++-- .../macro_class.dart.intertwined.expect | 20 ++--- .../sealed_class/sealed_class.dart.expect | 14 ++-- .../sealed_class.dart.intertwined.expect | 20 ++--- ...ss_declaration.dart.textual_outline.expect | 6 +- ...ss_declaration.dart.textual_outline.expect | 6 +- ...ss_declaration.dart.textual_outline.expect | 6 +- ...ss_declaration.dart.textual_outline.expect | 6 +- ...ve_constructor.dart.textual_outline.expect | 27 ++---- ...ass_not_object.dart.textual_outline.expect | 18 ++-- .../external.dart.textual_outline.expect | 3 +- .../external.dart.textual_outline.expect | 3 +- ...ss_declaration.dart.textual_outline.expect | 6 +- ...ss_declaration.dart.textual_outline.expect | 6 +- ...ss_declaration.dart.textual_outline.expect | 6 +- ...ss_declaration.dart.textual_outline.expect | 6 +- .../macro_class.dart.textual_outline.expect | 6 +- ...ss_declaration.dart.textual_outline.expect | 6 +- ...ss_declaration.dart.textual_outline.expect | 6 +- .../annotations.dart.textual_outline.expect | 3 +- ...tructor_access.dart.textual_outline.expect | 6 +- ...tructor_bodies.dart.textual_outline.expect | 6 +- ...mal_parameters.dart.textual_outline.expect | 6 +- .../constructors.dart.textual_outline.expect | 6 +- .../external.dart.textual_outline.expect | 3 +- .../field_access.dart.textual_outline.expect | 18 ++-- .../initializers.dart.textual_outline.expect | 18 ++-- ...ss_declaration.dart.textual_outline.expect | 9 +- ...mber_not_found.dart.textual_outline.expect | 3 +- .../method_access.dart.textual_outline.expect | 3 +- .../procedures.dart.textual_outline.expect | 6 +- ...representation.dart.textual_outline.expect | 12 +-- .../macro_class.dart.textual_outline.expect | 6 +- ...ttern_matching.dart.textual_outline.expect | 3 +- ...ss_declaration.dart.textual_outline.expect | 6 +- 55 files changed, 343 insertions(+), 324 deletions(-) diff --git a/pkg/_fe_analyzer_shared/lib/src/parser/parser_impl.dart b/pkg/_fe_analyzer_shared/lib/src/parser/parser_impl.dart index 8378c59e76c..ac91660eb66 100644 --- a/pkg/_fe_analyzer_shared/lib/src/parser/parser_impl.dart +++ b/pkg/_fe_analyzer_shared/lib/src/parser/parser_impl.dart @@ -2544,7 +2544,16 @@ class Parser { Token? mixinToken, Token classKeyword) { assert(optional('class', classKeyword)); - Token begin = abstractToken ?? classKeyword; + Token begin = abstractToken ?? + macroToken ?? + inlineToken ?? + sealedToken ?? + baseToken ?? + interfaceToken ?? + finalToken ?? + augmentToken ?? + mixinToken ?? + classKeyword; listener.beginClassOrMixinOrNamedMixinApplicationPrelude(begin); Token name = ensureIdentifier( classKeyword, IdentifierContext.classOrMixinOrExtensionDeclaration); diff --git a/pkg/analyzer/lib/src/fasta/ast_builder.dart b/pkg/analyzer/lib/src/fasta/ast_builder.dart index f6b47d9f9b7..9420fa7d3ae 100644 --- a/pkg/analyzer/lib/src/fasta/ast_builder.dart +++ b/pkg/analyzer/lib/src/fasta/ast_builder.dart @@ -4755,7 +4755,13 @@ class AstBuilder extends StackListener { var typeParameters = pop() as TypeParameterListImpl?; var name = pop() as SimpleIdentifierImpl; var metadata = pop() as List?; - var comment = _findComment(metadata, mixinKeyword); + + final begin = sealedKeyword ?? + baseKeyword ?? + interfaceKeyword ?? + finalKeyword ?? + mixinKeyword; + var comment = _findComment(metadata, begin); _classLikeBuilder = _MixinDeclarationBuilder( comment: comment, diff --git a/pkg/analyzer/test/src/fasta/ast_builder_test.dart b/pkg/analyzer/test/src/fasta/ast_builder_test.dart index d4e1b2d51d1..027944a2f03 100644 --- a/pkg/analyzer/test/src/fasta/ast_builder_test.dart +++ b/pkg/analyzer/test/src/fasta/ast_builder_test.dart @@ -5,11 +5,13 @@ import 'package:analyzer/src/dart/error/syntactic_errors.dart'; import 'package:test_reflective_loader/test_reflective_loader.dart'; +import '../dart/resolution/node_text_expectations.dart'; import '../diagnostics/parser_diagnostics.dart'; main() { defineReflectiveSuite(() { defineReflectiveTests(AstBuilderTest); + defineReflectiveTests(UpdateNodeTextExpectations); }); } @@ -17,15 +19,19 @@ main() { class AstBuilderTest extends ParserDiagnosticsTest { void test_class_abstract_sealed() { var parseResult = parseStringWithErrors(r''' +/// text abstract sealed class A {} '''); parseResult.assertErrors([ - error(ParserErrorCode.ABSTRACT_SEALED_CLASS, 9, 6), + error(ParserErrorCode.ABSTRACT_SEALED_CLASS, 18, 6), ]); var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text abstractKeyword: abstract sealedKeyword: sealed classKeyword: class @@ -37,6 +43,7 @@ ClassDeclaration void test_class_augment() { var parseResult = parseStringWithErrors(r''' +/// text augment class A {} '''); parseResult.assertNoErrors(); @@ -44,6 +51,9 @@ augment class A {} var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text augmentKeyword: augment classKeyword: class name: A @@ -54,6 +64,7 @@ ClassDeclaration void test_class_base() { var parseResult = parseStringWithErrors(r''' +/// text base class A {} '''); parseResult.assertNoErrors(); @@ -61,6 +72,9 @@ base class A {} var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text baseKeyword: base classKeyword: class name: A @@ -269,6 +283,7 @@ ClassDeclaration void test_class_final() { var parseResult = parseStringWithErrors(r''' +/// text final class A {} '''); parseResult.assertNoErrors(); @@ -276,6 +291,9 @@ final class A {} var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text finalKeyword: final classKeyword: class name: A @@ -316,6 +334,7 @@ ClassDeclaration void test_class_inline() { var parseResult = parseStringWithErrors(r''' +/// text inline class A {} '''); parseResult.assertNoErrors(); @@ -323,6 +342,9 @@ inline class A {} var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text inlineKeyword: inline classKeyword: class name: A @@ -333,6 +355,7 @@ ClassDeclaration void test_class_interface() { var parseResult = parseStringWithErrors(r''' +/// text interface class A {} '''); parseResult.assertNoErrors(); @@ -340,6 +363,9 @@ interface class A {} var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text interfaceKeyword: interface classKeyword: class name: A @@ -350,6 +376,7 @@ ClassDeclaration void test_class_macro() { var parseResult = parseStringWithErrors(r''' +/// text macro class A {} '''); parseResult.assertNoErrors(); @@ -357,6 +384,9 @@ macro class A {} var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text macroKeyword: macro classKeyword: class name: A @@ -367,6 +397,7 @@ ClassDeclaration void test_class_mixin() { var parseResult = parseStringWithErrors(r''' +/// text mixin class A {} '''); parseResult.assertNoErrors(); @@ -374,6 +405,9 @@ mixin class A {} var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text mixinKeyword: mixin classKeyword: class name: A @@ -384,6 +418,7 @@ ClassDeclaration void test_class_sealed() { var parseResult = parseStringWithErrors(r''' +/// text sealed class A {} '''); parseResult.assertNoErrors(); @@ -391,6 +426,9 @@ sealed class A {} var node = parseResult.findNode.classDeclaration('class A {}'); assertParsedNodeText(node, r''' ClassDeclaration + documentationComment: Comment + tokens + /// text sealedKeyword: sealed classKeyword: class name: A @@ -401,10 +439,11 @@ ClassDeclaration void test_class_sealed_abstract() { var parseResult = parseStringWithErrors(r''' +/// text sealed abstract class A {} '''); parseResult.assertErrors([ - error(ParserErrorCode.ABSTRACT_SEALED_CLASS, 0, 6), + error(ParserErrorCode.ABSTRACT_SEALED_CLASS, 9, 6), ]); var node = parseResult.findNode.classDeclaration('class A {}'); @@ -449,6 +488,7 @@ ClassDeclaration void test_classAlias_macro() { var parseResult = parseStringWithErrors(r''' mixin M {} +/// text macro class A = Object with M; '''); parseResult.assertNoErrors(); @@ -456,6 +496,9 @@ macro class A = Object with M; var node = parseResult.findNode.classTypeAlias('class A'); assertParsedNodeText(node, r''' ClassTypeAlias + documentationComment: Comment + tokens + /// text typedefKeyword: class name: A equals: = @@ -476,6 +519,7 @@ ClassTypeAlias void test_classAlias_mixin() { var parseResult = parseStringWithErrors(r''' mixin M {} +/// text mixin class A = Object with M; '''); parseResult.assertNoErrors(); @@ -483,6 +527,9 @@ mixin class A = Object with M; var node = parseResult.findNode.classTypeAlias('class A'); assertParsedNodeText(node, r''' ClassTypeAlias + documentationComment: Comment + tokens + /// text typedefKeyword: class name: A equals: = @@ -528,6 +575,7 @@ ClassTypeAlias void test_classTypeAlias_base() { var parseResult = parseStringWithErrors(r''' mixin M {} +/// text base class A = Object with M; '''); parseResult.assertNoErrors(); @@ -535,6 +583,9 @@ base class A = Object with M; var node = parseResult.findNode.classTypeAlias('class A'); assertParsedNodeText(node, r''' ClassTypeAlias + documentationComment: Comment + tokens + /// text typedefKeyword: class name: A equals: = @@ -555,6 +606,7 @@ ClassTypeAlias void test_classTypeAlias_final() { var parseResult = parseStringWithErrors(r''' mixin M {} +/// text final class A = Object with M; '''); parseResult.assertNoErrors(); @@ -562,6 +614,9 @@ final class A = Object with M; var node = parseResult.findNode.classTypeAlias('class A'); assertParsedNodeText(node, r''' ClassTypeAlias + documentationComment: Comment + tokens + /// text typedefKeyword: class name: A equals: = @@ -622,6 +677,7 @@ ClassTypeAlias void test_classTypeAlias_interface() { var parseResult = parseStringWithErrors(r''' mixin M {} +/// text interface class A = Object with M; '''); parseResult.assertNoErrors(); @@ -629,6 +685,9 @@ interface class A = Object with M; var node = parseResult.findNode.classTypeAlias('class A'); assertParsedNodeText(node, r''' ClassTypeAlias + documentationComment: Comment + tokens + /// text typedefKeyword: class name: A equals: = @@ -649,6 +708,7 @@ ClassTypeAlias void test_classTypeAlias_sealed() { var parseResult = parseStringWithErrors(r''' mixin M {} +/// text sealed class A = Object with M; '''); parseResult.assertNoErrors(); @@ -656,6 +716,9 @@ sealed class A = Object with M; var node = parseResult.findNode.classTypeAlias('class A'); assertParsedNodeText(node, r''' ClassTypeAlias + documentationComment: Comment + tokens + /// text typedefKeyword: class name: A equals: = @@ -1088,6 +1151,7 @@ LibraryDirective void test_mixin_base() { var parseResult = parseStringWithErrors(r''' +/// text base mixin M {} '''); parseResult.assertNoErrors(); @@ -1095,6 +1159,9 @@ base mixin M {} final node = parseResult.findNode.mixinDeclaration('mixin M'); assertParsedNodeText(node, r''' MixinDeclaration + documentationComment: Comment + tokens + /// text baseKeyword: base mixinKeyword: mixin name: M @@ -1105,6 +1172,7 @@ MixinDeclaration void test_mixin_final() { var parseResult = parseStringWithErrors(r''' +/// text final mixin M {} '''); parseResult.assertNoErrors(); @@ -1112,6 +1180,9 @@ final mixin M {} final node = parseResult.findNode.mixinDeclaration('mixin M'); assertParsedNodeText(node, r''' MixinDeclaration + documentationComment: Comment + tokens + /// text finalKeyword: final mixinKeyword: mixin name: M @@ -1159,6 +1230,7 @@ MixinDeclaration void test_mixin_interface() { var parseResult = parseStringWithErrors(r''' +/// text interface mixin M {} '''); parseResult.assertNoErrors(); @@ -1166,6 +1238,9 @@ interface mixin M {} final node = parseResult.findNode.mixinDeclaration('mixin M'); assertParsedNodeText(node, r''' MixinDeclaration + documentationComment: Comment + tokens + /// text interfaceKeyword: interface mixinKeyword: mixin name: M @@ -1206,6 +1281,7 @@ MixinDeclaration void test_mixin_sealed() { var parseResult = parseStringWithErrors(r''' +/// text sealed mixin M {} '''); parseResult.assertNoErrors(); @@ -1213,6 +1289,9 @@ sealed mixin M {} final node = parseResult.findNode.mixinDeclaration('mixin M'); assertParsedNodeText(node, r''' MixinDeclaration + documentationComment: Comment + tokens + /// text sealedKeyword: sealed mixinKeyword: mixin name: M diff --git a/pkg/analyzer/test/src/summary/resolved_ast_printer.dart b/pkg/analyzer/test/src/summary/resolved_ast_printer.dart index 4b742e34dda..50bd0dcf8f2 100644 --- a/pkg/analyzer/test/src/summary/resolved_ast_printer.dart +++ b/pkg/analyzer/test/src/summary/resolved_ast_printer.dart @@ -2042,9 +2042,11 @@ Expected parent: (${parent.runtimeType}) $parent _withIndent(() { for (var token in tokens) { _writelnWithIndent(token.lexeme); - _withIndent(() { - _writeOffset('offset', token.offset); - }); + if (_withOffsets) { + _withIndent(() { + _writeOffset('offset', token.offset); + }); + } } }); } diff --git a/pkg/front_end/parser_testcases/augmentation/augment_super.dart.expect b/pkg/front_end/parser_testcases/augmentation/augment_super.dart.expect index c72e8833d67..a345263dbaa 100644 --- a/pkg/front_end/parser_testcases/augmentation/augment_super.dart.expect +++ b/pkg/front_end/parser_testcases/augmentation/augment_super.dart.expect @@ -182,15 +182,15 @@ beginCompilationUnit(augment) endTopLevelDeclaration(augment) beginMetadataStar(augment) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(augment) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, null, null, null, null, null, augment, null, Class) + beginClassDeclaration(augment, null, null, null, null, null, null, null, augment, null, Class) handleNoType(Class) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(augment, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) beginMetadataStar(augment) endMetadataStar(0) @@ -343,6 +343,6 @@ beginCompilationUnit(augment) endClassMethod(null, void, (, null, }) endMember() endClassOrMixinOrExtensionBody(DeclarationKind.Class, 5, {, }) - endClassDeclaration(class, }) + endClassDeclaration(augment, }) endTopLevelDeclaration() endCompilationUnit(6, ) diff --git a/pkg/front_end/parser_testcases/augmentation/augment_super.dart.intertwined.expect b/pkg/front_end/parser_testcases/augmentation/augment_super.dart.intertwined.expect index 8ef6e338b1a..fdabe3e12b0 100644 --- a/pkg/front_end/parser_testcases/augmentation/augment_super.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/augmentation/augment_super.dart.intertwined.expect @@ -413,13 +413,13 @@ parseUnit(augment) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, class, null, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, null, null, augment, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(augment) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, null, null, null, null, null, augment, null, Class) - parseClass(Class, class, class, Class) - parseClassHeaderOpt(Class, class, class) + listener: beginClassDeclaration(augment, null, null, null, null, null, null, null, augment, null, Class) + parseClass(Class, augment, class, Class) + parseClassHeaderOpt(Class, augment, class) parseClassExtendsOpt(Class) listener: handleNoType(Class) listener: handleClassExtends(null, 1) @@ -427,7 +427,7 @@ parseUnit(augment) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(Class) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(augment, class, null) parseClassOrMixinOrExtensionBody(Class, DeclarationKind.Class, Class) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, augment) @@ -820,7 +820,7 @@ parseUnit(augment) listener: endMember() notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 5, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(augment, }) listener: endTopLevelDeclaration() reportAllErrorTokens(augment) listener: endCompilationUnit(6, ) diff --git a/pkg/front_end/parser_testcases/augmentation/top_level_declarations.dart.expect b/pkg/front_end/parser_testcases/augmentation/top_level_declarations.dart.expect index d74f9540195..169fb025077 100644 --- a/pkg/front_end/parser_testcases/augmentation/top_level_declarations.dart.expect +++ b/pkg/front_end/parser_testcases/augmentation/top_level_declarations.dart.expect @@ -170,18 +170,18 @@ beginCompilationUnit(augment) endTopLevelDeclaration(augment) beginMetadataStar(augment) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(augment) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, null, null, null, null, null, augment, null, Class) + beginClassDeclaration(augment, null, null, null, null, null, null, null, augment, null, Class) handleNoType(Class) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(augment, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(augment, }) endTopLevelDeclaration(augment) beginMetadataStar(augment) endMetadataStar(0) @@ -200,10 +200,10 @@ beginCompilationUnit(augment) endTopLevelDeclaration(augment) beginMetadataStar(augment) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(augment) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, null, null, null, null, null, null, augment, null, Class) + beginNamedMixinApplication(augment, null, null, null, null, null, null, null, augment, null, Class) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -213,7 +213,7 @@ beginCompilationUnit(augment) handleType(Mixin, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(augment, class, =, null, ;) endTopLevelDeclaration(augment) beginMetadataStar(augment) endMetadataStar(0) diff --git a/pkg/front_end/parser_testcases/augmentation/top_level_declarations.dart.intertwined.expect b/pkg/front_end/parser_testcases/augmentation/top_level_declarations.dart.intertwined.expect index 400d7c0a8d0..506a656f5b7 100644 --- a/pkg/front_end/parser_testcases/augmentation/top_level_declarations.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/augmentation/top_level_declarations.dart.intertwined.expect @@ -326,13 +326,13 @@ parseUnit(augment) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(;, class, null, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, null, null, augment, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(augment) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, null, null, null, null, null, augment, null, Class) - parseClass(Class, class, class, Class) - parseClassHeaderOpt(Class, class, class) + listener: beginClassDeclaration(augment, null, null, null, null, null, null, null, augment, null, Class) + parseClass(Class, augment, class, Class) + parseClassHeaderOpt(Class, augment, class) parseClassExtendsOpt(Class) listener: handleNoType(Class) listener: handleClassExtends(null, 1) @@ -340,12 +340,12 @@ parseUnit(augment) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(Class) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(augment, class, null) parseClassOrMixinOrExtensionBody(Class, DeclarationKind.Class, Class) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(augment, }) listener: endTopLevelDeclaration(augment) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -380,12 +380,12 @@ parseUnit(augment) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, class, null, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, null, null, augment, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(augment) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, null, null, null, null, null, null, augment, null, Class) - parseNamedMixinApplication(Class, class, class) + listener: beginNamedMixinApplication(augment, null, null, null, null, null, null, null, augment, null, Class) + parseNamedMixinApplication(Class, augment, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -398,7 +398,7 @@ parseUnit(augment) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(Mixin) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(augment, class, =, null, ;) listener: endTopLevelDeclaration(augment) parseTopLevelDeclarationImpl(;, Instance of 'DirectiveContext') parseMetadataStar(;) diff --git a/pkg/front_end/parser_testcases/augmentation/top_level_errors.dart.expect b/pkg/front_end/parser_testcases/augmentation/top_level_errors.dart.expect index 9e9f2f01d8a..21e6f86f6f8 100644 --- a/pkg/front_end/parser_testcases/augmentation/top_level_errors.dart.expect +++ b/pkg/front_end/parser_testcases/augmentation/top_level_errors.dart.expect @@ -488,18 +488,18 @@ beginCompilationUnit(augment) beginMetadataStar(augment) endMetadataStar(0) handleRecoverableError(Message[DuplicatedModifier, The modifier 'augment' was already specified., Try removing all but one occurrence of the modifier., {lexeme: augment}], augment, augment) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(augment) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, null, null, null, null, null, augment, null, Class) + beginClassDeclaration(augment, null, null, null, null, null, null, null, augment, null, Class) handleNoType(Class) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(augment, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(augment, }) endTopLevelDeclaration(abstract) beginMetadataStar(abstract) endMetadataStar(0) @@ -520,10 +520,10 @@ beginCompilationUnit(augment) beginMetadataStar(augment) endMetadataStar(0) handleRecoverableError(Message[DuplicatedModifier, The modifier 'augment' was already specified., Try removing all but one occurrence of the modifier., {lexeme: augment}], augment, augment) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(augment) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, null, null, null, null, null, null, augment, null, Class) + beginNamedMixinApplication(augment, null, null, null, null, null, null, null, augment, null, Class) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -533,7 +533,7 @@ beginCompilationUnit(augment) handleType(Mixin, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(augment, class, =, null, ;) endTopLevelDeclaration(abstract) beginMetadataStar(abstract) endMetadataStar(0) diff --git a/pkg/front_end/parser_testcases/augmentation/top_level_errors.dart.intertwined.expect b/pkg/front_end/parser_testcases/augmentation/top_level_errors.dart.intertwined.expect index 1ce5168e752..f2128a8bea3 100644 --- a/pkg/front_end/parser_testcases/augmentation/top_level_errors.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/augmentation/top_level_errors.dart.intertwined.expect @@ -694,13 +694,13 @@ parseUnit(augment) reportRecoverableErrorWithToken(augment, Instance of 'Template<(Token) => Message>') listener: handleRecoverableError(Message[DuplicatedModifier, The modifier 'augment' was already specified., Try removing all but one occurrence of the modifier., {lexeme: augment}], augment, augment) parseClassOrNamedMixinApplication(null, null, null, null, null, null, null, augment, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(augment) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, null, null, null, null, null, augment, null, Class) - parseClass(Class, class, class, Class) - parseClassHeaderOpt(Class, class, class) + listener: beginClassDeclaration(augment, null, null, null, null, null, null, null, augment, null, Class) + parseClass(Class, augment, class, Class) + parseClassHeaderOpt(Class, augment, class) parseClassExtendsOpt(Class) listener: handleNoType(Class) listener: handleClassExtends(null, 1) @@ -708,12 +708,12 @@ parseUnit(augment) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(Class) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(augment, class, null) parseClassOrMixinOrExtensionBody(Class, DeclarationKind.Class, Class) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(augment, }) listener: endTopLevelDeclaration(abstract) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -752,12 +752,12 @@ parseUnit(augment) reportRecoverableErrorWithToken(augment, Instance of 'Template<(Token) => Message>') listener: handleRecoverableError(Message[DuplicatedModifier, The modifier 'augment' was already specified., Try removing all but one occurrence of the modifier., {lexeme: augment}], augment, augment) parseClassOrNamedMixinApplication(null, null, null, null, null, null, null, augment, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(augment) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, null, null, null, null, null, null, augment, null, Class) - parseNamedMixinApplication(Class, class, class) + listener: beginNamedMixinApplication(augment, null, null, null, null, null, null, null, augment, null, Class) + parseNamedMixinApplication(Class, augment, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -770,7 +770,7 @@ parseUnit(augment) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(Mixin) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(augment, class, =, null, ;) listener: endTopLevelDeclaration(abstract) parseTopLevelDeclarationImpl(;, Instance of 'DirectiveContext') parseMetadataStar(;) diff --git a/pkg/front_end/parser_testcases/class_modifiers/base/base_class_declaration.dart.expect b/pkg/front_end/parser_testcases/class_modifiers/base/base_class_declaration.dart.expect index 70254505ed2..07410c27248 100644 --- a/pkg/front_end/parser_testcases/class_modifiers/base/base_class_declaration.dart.expect +++ b/pkg/front_end/parser_testcases/class_modifiers/base/base_class_declaration.dart.expect @@ -1,18 +1,18 @@ beginCompilationUnit(base) beginMetadataStar(base) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(base) handleIdentifier(A, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, null, null, base, null, null, null, null, A) + beginClassDeclaration(base, null, null, null, null, base, null, null, null, null, A) handleNoType(A) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(base, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(base, }) endTopLevelDeclaration(abstract) beginMetadataStar(abstract) endMetadataStar(0) @@ -44,10 +44,10 @@ beginCompilationUnit(base) endTopLevelDeclaration(base) beginMetadataStar(base) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(base) handleIdentifier(C, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, null, null, null, base, null, null, null, null, C) + beginNamedMixinApplication(base, null, null, null, null, base, null, null, null, null, C) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -57,6 +57,6 @@ beginCompilationUnit(base) handleType(M, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(base, class, =, null, ;) endTopLevelDeclaration() endCompilationUnit(4, ) diff --git a/pkg/front_end/parser_testcases/class_modifiers/base/base_class_declaration.dart.intertwined.expect b/pkg/front_end/parser_testcases/class_modifiers/base/base_class_declaration.dart.intertwined.expect index cfa201fc649..9b126ddbdd2 100644 --- a/pkg/front_end/parser_testcases/class_modifiers/base/base_class_declaration.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/class_modifiers/base/base_class_declaration.dart.intertwined.expect @@ -8,13 +8,13 @@ parseUnit(base) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(, class, null, null, null, base, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, base, null, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(base) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(A, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, null, null, base, null, null, null, null, A) - parseClass(A, class, class, A) - parseClassHeaderOpt(A, class, class) + listener: beginClassDeclaration(base, null, null, null, null, base, null, null, null, null, A) + parseClass(A, base, class, A) + parseClassHeaderOpt(A, base, class) parseClassExtendsOpt(A) listener: handleNoType(A) listener: handleClassExtends(null, 1) @@ -22,12 +22,12 @@ parseUnit(base) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(A) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(base, class, null) parseClassOrMixinOrExtensionBody(A, DeclarationKind.Class, A) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(base, }) listener: endTopLevelDeclaration(abstract) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -85,12 +85,12 @@ parseUnit(base) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, class, null, null, null, base, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, base, null, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(base) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(C, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, null, null, null, base, null, null, null, null, C) - parseNamedMixinApplication(C, class, class) + listener: beginNamedMixinApplication(base, null, null, null, null, base, null, null, null, null, C) + parseNamedMixinApplication(C, base, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -103,7 +103,7 @@ parseUnit(base) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(M) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(base, class, =, null, ;) listener: endTopLevelDeclaration() reportAllErrorTokens(base) listener: endCompilationUnit(4, ) diff --git a/pkg/front_end/parser_testcases/class_modifiers/final/final_class_declaration.dart.expect b/pkg/front_end/parser_testcases/class_modifiers/final/final_class_declaration.dart.expect index 2980ed33e7a..c7ab69eaf1d 100644 --- a/pkg/front_end/parser_testcases/class_modifiers/final/final_class_declaration.dart.expect +++ b/pkg/front_end/parser_testcases/class_modifiers/final/final_class_declaration.dart.expect @@ -1,18 +1,18 @@ beginCompilationUnit(final) beginMetadataStar(final) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(final) handleIdentifier(A, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, null, null, null, null, final, null, null, A) + beginClassDeclaration(final, null, null, null, null, null, null, final, null, null, A) handleNoType(A) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(final, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(final, }) endTopLevelDeclaration(abstract) beginMetadataStar(abstract) endMetadataStar(0) @@ -44,10 +44,10 @@ beginCompilationUnit(final) endTopLevelDeclaration(final) beginMetadataStar(final) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(final) handleIdentifier(C, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, null, null, null, null, null, final, null, null, C) + beginNamedMixinApplication(final, null, null, null, null, null, null, final, null, null, C) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -57,6 +57,6 @@ beginCompilationUnit(final) handleType(M, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(final, class, =, null, ;) endTopLevelDeclaration() endCompilationUnit(4, ) diff --git a/pkg/front_end/parser_testcases/class_modifiers/final/final_class_declaration.dart.intertwined.expect b/pkg/front_end/parser_testcases/class_modifiers/final/final_class_declaration.dart.intertwined.expect index 230e6da1b83..6c8bc81172b 100644 --- a/pkg/front_end/parser_testcases/class_modifiers/final/final_class_declaration.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/class_modifiers/final/final_class_declaration.dart.intertwined.expect @@ -8,13 +8,13 @@ parseUnit(final) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(, class, null, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, null, final, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(final) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(A, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, null, null, null, null, final, null, null, A) - parseClass(A, class, class, A) - parseClassHeaderOpt(A, class, class) + listener: beginClassDeclaration(final, null, null, null, null, null, null, final, null, null, A) + parseClass(A, final, class, A) + parseClassHeaderOpt(A, final, class) parseClassExtendsOpt(A) listener: handleNoType(A) listener: handleClassExtends(null, 1) @@ -22,12 +22,12 @@ parseUnit(final) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(A) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(final, class, null) parseClassOrMixinOrExtensionBody(A, DeclarationKind.Class, A) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(final, }) listener: endTopLevelDeclaration(abstract) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -85,12 +85,12 @@ parseUnit(final) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, class, null, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, null, final, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(final) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(C, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, null, null, null, null, null, final, null, null, C) - parseNamedMixinApplication(C, class, class) + listener: beginNamedMixinApplication(final, null, null, null, null, null, null, final, null, null, C) + parseNamedMixinApplication(C, final, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -103,7 +103,7 @@ parseUnit(final) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(M) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(final, class, =, null, ;) listener: endTopLevelDeclaration() reportAllErrorTokens(final) listener: endCompilationUnit(4, ) diff --git a/pkg/front_end/parser_testcases/class_modifiers/interface/interface_class_declaration.dart.expect b/pkg/front_end/parser_testcases/class_modifiers/interface/interface_class_declaration.dart.expect index 7c9e4701114..f9c96a25ef4 100644 --- a/pkg/front_end/parser_testcases/class_modifiers/interface/interface_class_declaration.dart.expect +++ b/pkg/front_end/parser_testcases/class_modifiers/interface/interface_class_declaration.dart.expect @@ -1,18 +1,18 @@ beginCompilationUnit(interface) beginMetadataStar(interface) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(interface) handleIdentifier(A, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, null, null, null, interface, null, null, null, A) + beginClassDeclaration(interface, null, null, null, null, null, interface, null, null, null, A) handleNoType(A) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(interface, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(interface, }) endTopLevelDeclaration(abstract) beginMetadataStar(abstract) endMetadataStar(0) @@ -44,10 +44,10 @@ beginCompilationUnit(interface) endTopLevelDeclaration(interface) beginMetadataStar(interface) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(interface) handleIdentifier(C, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, null, null, null, null, interface, null, null, null, C) + beginNamedMixinApplication(interface, null, null, null, null, null, interface, null, null, null, C) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -57,6 +57,6 @@ beginCompilationUnit(interface) handleType(M, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(interface, class, =, null, ;) endTopLevelDeclaration() endCompilationUnit(4, ) diff --git a/pkg/front_end/parser_testcases/class_modifiers/interface/interface_class_declaration.dart.intertwined.expect b/pkg/front_end/parser_testcases/class_modifiers/interface/interface_class_declaration.dart.intertwined.expect index 89009425506..bf23d5f68d7 100644 --- a/pkg/front_end/parser_testcases/class_modifiers/interface/interface_class_declaration.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/class_modifiers/interface/interface_class_declaration.dart.intertwined.expect @@ -8,13 +8,13 @@ parseUnit(interface) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(, class, null, null, null, null, interface, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, interface, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(interface) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(A, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, null, null, null, interface, null, null, null, A) - parseClass(A, class, class, A) - parseClassHeaderOpt(A, class, class) + listener: beginClassDeclaration(interface, null, null, null, null, null, interface, null, null, null, A) + parseClass(A, interface, class, A) + parseClassHeaderOpt(A, interface, class) parseClassExtendsOpt(A) listener: handleNoType(A) listener: handleClassExtends(null, 1) @@ -22,12 +22,12 @@ parseUnit(interface) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(A) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(interface, class, null) parseClassOrMixinOrExtensionBody(A, DeclarationKind.Class, A) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(interface, }) listener: endTopLevelDeclaration(abstract) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -85,12 +85,12 @@ parseUnit(interface) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, class, null, null, null, null, interface, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, interface, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(interface) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(C, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, null, null, null, null, interface, null, null, null, C) - parseNamedMixinApplication(C, class, class) + listener: beginNamedMixinApplication(interface, null, null, null, null, null, interface, null, null, null, C) + parseNamedMixinApplication(C, interface, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -103,7 +103,7 @@ parseUnit(interface) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(M) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(interface, class, =, null, ;) listener: endTopLevelDeclaration() reportAllErrorTokens(interface) listener: endCompilationUnit(4, ) diff --git a/pkg/front_end/parser_testcases/class_modifiers/mixin/mixin_class.dart.expect b/pkg/front_end/parser_testcases/class_modifiers/mixin/mixin_class.dart.expect index 80e66a2c62a..93701719480 100644 --- a/pkg/front_end/parser_testcases/class_modifiers/mixin/mixin_class.dart.expect +++ b/pkg/front_end/parser_testcases/class_modifiers/mixin/mixin_class.dart.expect @@ -1,18 +1,18 @@ beginCompilationUnit(mixin) beginMetadataStar(mixin) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(mixin) handleIdentifier(A, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, null, null, null, null, null, null, mixin, A) + beginClassDeclaration(mixin, null, null, null, null, null, null, null, null, mixin, A) handleNoType(A) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(mixin, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(mixin, }) endTopLevelDeclaration(abstract) beginMetadataStar(abstract) endMetadataStar(0) @@ -44,10 +44,10 @@ beginCompilationUnit(mixin) endTopLevelDeclaration(mixin) beginMetadataStar(mixin) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(mixin) handleIdentifier(C, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, null, null, null, null, null, null, null, mixin, C) + beginNamedMixinApplication(mixin, null, null, null, null, null, null, null, null, mixin, C) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -57,6 +57,6 @@ beginCompilationUnit(mixin) handleType(M, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(mixin, class, =, null, ;) endTopLevelDeclaration() endCompilationUnit(4, ) diff --git a/pkg/front_end/parser_testcases/class_modifiers/mixin/mixin_class.dart.intertwined.expect b/pkg/front_end/parser_testcases/class_modifiers/mixin/mixin_class.dart.intertwined.expect index e637ce5cdbe..291f96e4049 100644 --- a/pkg/front_end/parser_testcases/class_modifiers/mixin/mixin_class.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/class_modifiers/mixin/mixin_class.dart.intertwined.expect @@ -8,13 +8,13 @@ parseUnit(mixin) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(, mixin, null, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, null, null, null, mixin, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(mixin) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(A, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, null, null, null, null, null, null, mixin, A) - parseClass(A, class, class, A) - parseClassHeaderOpt(A, class, class) + listener: beginClassDeclaration(mixin, null, null, null, null, null, null, null, null, mixin, A) + parseClass(A, mixin, class, A) + parseClassHeaderOpt(A, mixin, class) parseClassExtendsOpt(A) listener: handleNoType(A) listener: handleClassExtends(null, 1) @@ -22,12 +22,12 @@ parseUnit(mixin) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(A) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(mixin, class, null) parseClassOrMixinOrExtensionBody(A, DeclarationKind.Class, A) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(mixin, }) listener: endTopLevelDeclaration(abstract) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -85,12 +85,12 @@ parseUnit(mixin) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, mixin, null, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, null, null, null, null, null, mixin, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(mixin) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(C, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, null, null, null, null, null, null, null, mixin, C) - parseNamedMixinApplication(C, class, class) + listener: beginNamedMixinApplication(mixin, null, null, null, null, null, null, null, null, mixin, C) + parseNamedMixinApplication(C, mixin, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -103,7 +103,7 @@ parseUnit(mixin) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(M) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(mixin, class, =, null, ;) listener: endTopLevelDeclaration() reportAllErrorTokens(mixin) listener: endCompilationUnit(4, ) diff --git a/pkg/front_end/parser_testcases/inline_class/inline_class.dart.expect b/pkg/front_end/parser_testcases/inline_class/inline_class.dart.expect index baa4013f98b..b79815ac9db 100644 --- a/pkg/front_end/parser_testcases/inline_class/inline_class.dart.expect +++ b/pkg/front_end/parser_testcases/inline_class/inline_class.dart.expect @@ -1,25 +1,25 @@ beginCompilationUnit(inline) beginMetadataStar(inline) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(inline) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, inline, null, null, null, null, null, null, Class) + beginClassDeclaration(inline, null, null, inline, null, null, null, null, null, null, Class) handleNoType(Class) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(inline, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(inline, }) endTopLevelDeclaration(inline) beginMetadataStar(inline) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(inline) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, null, inline, null, null, null, null, null, null, Class) + beginNamedMixinApplication(inline, null, null, inline, null, null, null, null, null, null, Class) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -29,6 +29,6 @@ beginCompilationUnit(inline) handleType(Mixin, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(inline, class, =, null, ;) endTopLevelDeclaration() endCompilationUnit(2, ) diff --git a/pkg/front_end/parser_testcases/inline_class/inline_class.dart.intertwined.expect b/pkg/front_end/parser_testcases/inline_class/inline_class.dart.intertwined.expect index 796f2e04aae..de579f32589 100644 --- a/pkg/front_end/parser_testcases/inline_class/inline_class.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/inline_class/inline_class.dart.intertwined.expect @@ -8,13 +8,13 @@ parseUnit(inline) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(, class, null, inline, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, inline, null, null, null, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(inline) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, inline, null, null, null, null, null, null, Class) - parseClass(Class, class, class, Class) - parseClassHeaderOpt(Class, class, class) + listener: beginClassDeclaration(inline, null, null, inline, null, null, null, null, null, null, Class) + parseClass(Class, inline, class, Class) + parseClassHeaderOpt(Class, inline, class) parseClassExtendsOpt(Class) listener: handleNoType(Class) listener: handleClassExtends(null, 1) @@ -22,12 +22,12 @@ parseUnit(inline) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(Class) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(inline, class, null) parseClassOrMixinOrExtensionBody(Class, DeclarationKind.Class, Class) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(inline, }) listener: endTopLevelDeclaration(inline) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -35,12 +35,12 @@ parseUnit(inline) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, class, null, inline, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, inline, null, null, null, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(inline) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, null, inline, null, null, null, null, null, null, Class) - parseNamedMixinApplication(Class, class, class) + listener: beginNamedMixinApplication(inline, null, null, inline, null, null, null, null, null, null, Class) + parseNamedMixinApplication(Class, inline, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -53,7 +53,7 @@ parseUnit(inline) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(Mixin) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(inline, class, =, null, ;) listener: endTopLevelDeclaration() reportAllErrorTokens(inline) listener: endCompilationUnit(2, ) diff --git a/pkg/front_end/parser_testcases/macros/macro_class.dart.expect b/pkg/front_end/parser_testcases/macros/macro_class.dart.expect index 7e560c1cd7e..f5f10cbdce6 100644 --- a/pkg/front_end/parser_testcases/macros/macro_class.dart.expect +++ b/pkg/front_end/parser_testcases/macros/macro_class.dart.expect @@ -1,18 +1,18 @@ beginCompilationUnit(macro) beginMetadataStar(macro) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(macro) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, macro, null, null, null, null, null, null, null, Class) + beginClassDeclaration(macro, null, macro, null, null, null, null, null, null, null, Class) handleNoType(Class) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(macro, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(macro, }) endTopLevelDeclaration(abstract) beginMetadataStar(abstract) endMetadataStar(0) @@ -31,10 +31,10 @@ beginCompilationUnit(macro) endTopLevelDeclaration(macro) beginMetadataStar(macro) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(macro) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, macro, null, null, null, null, null, null, null, Class) + beginNamedMixinApplication(macro, null, macro, null, null, null, null, null, null, null, Class) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -44,7 +44,7 @@ beginCompilationUnit(macro) handleType(Mixin, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(macro, class, =, null, ;) endTopLevelDeclaration(abstract) beginMetadataStar(abstract) endMetadataStar(0) diff --git a/pkg/front_end/parser_testcases/macros/macro_class.dart.intertwined.expect b/pkg/front_end/parser_testcases/macros/macro_class.dart.intertwined.expect index f81525d8f6a..3f25f093b4c 100644 --- a/pkg/front_end/parser_testcases/macros/macro_class.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/macros/macro_class.dart.intertwined.expect @@ -8,13 +8,13 @@ parseUnit(macro) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(, class, macro, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, macro, null, null, null, null, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(macro) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, macro, null, null, null, null, null, null, null, Class) - parseClass(Class, class, class, Class) - parseClassHeaderOpt(Class, class, class) + listener: beginClassDeclaration(macro, null, macro, null, null, null, null, null, null, null, Class) + parseClass(Class, macro, class, Class) + parseClassHeaderOpt(Class, macro, class) parseClassExtendsOpt(Class) listener: handleNoType(Class) listener: handleClassExtends(null, 1) @@ -22,12 +22,12 @@ parseUnit(macro) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(Class) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(macro, class, null) parseClassOrMixinOrExtensionBody(Class, DeclarationKind.Class, Class) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(macro, }) listener: endTopLevelDeclaration(abstract) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -62,12 +62,12 @@ parseUnit(macro) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, class, macro, null, null, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, macro, null, null, null, null, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(macro) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, macro, null, null, null, null, null, null, null, Class) - parseNamedMixinApplication(Class, class, class) + listener: beginNamedMixinApplication(macro, null, macro, null, null, null, null, null, null, null, Class) + parseNamedMixinApplication(Class, macro, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -80,7 +80,7 @@ parseUnit(macro) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(Mixin) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(macro, class, =, null, ;) listener: endTopLevelDeclaration(abstract) parseTopLevelDeclarationImpl(;, Instance of 'DirectiveContext') parseMetadataStar(;) diff --git a/pkg/front_end/parser_testcases/sealed_class/sealed_class.dart.expect b/pkg/front_end/parser_testcases/sealed_class/sealed_class.dart.expect index acd6c207d13..2320f3f9eb2 100644 --- a/pkg/front_end/parser_testcases/sealed_class/sealed_class.dart.expect +++ b/pkg/front_end/parser_testcases/sealed_class/sealed_class.dart.expect @@ -1,18 +1,18 @@ beginCompilationUnit(sealed) beginMetadataStar(sealed) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(sealed) handleIdentifier(Class, classOrMixinDeclaration) handleNoTypeVariables({) - beginClassDeclaration(class, null, null, null, sealed, null, null, null, null, null, Class) + beginClassDeclaration(sealed, null, null, null, sealed, null, null, null, null, null, Class) handleNoType(Class) handleClassExtends(null, 1) handleClassNoWithClause() handleImplements(null, 0) - handleClassHeader(class, class, null) + handleClassHeader(sealed, class, null) beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - endClassDeclaration(class, }) + endClassDeclaration(sealed, }) endTopLevelDeclaration(mixin) beginMetadataStar(mixin) endMetadataStar(0) @@ -29,10 +29,10 @@ beginCompilationUnit(sealed) endTopLevelDeclaration(sealed) beginMetadataStar(sealed) endMetadataStar(0) - beginClassOrMixinOrNamedMixinApplicationPrelude(class) + beginClassOrMixinOrNamedMixinApplicationPrelude(sealed) handleIdentifier(A, classOrMixinDeclaration) handleNoTypeVariables(=) - beginNamedMixinApplication(class, null, null, null, sealed, null, null, null, null, null, A) + beginNamedMixinApplication(sealed, null, null, null, sealed, null, null, null, null, null, A) handleIdentifier(Object, typeReference) handleNoTypeArguments(with) handleType(Object, null) @@ -42,6 +42,6 @@ beginCompilationUnit(sealed) handleType(M, null) endTypeList(1) handleNamedMixinApplicationWithClause(with) - endNamedMixinApplication(class, class, =, null, ;) + endNamedMixinApplication(sealed, class, =, null, ;) endTopLevelDeclaration() endCompilationUnit(3, ) diff --git a/pkg/front_end/parser_testcases/sealed_class/sealed_class.dart.intertwined.expect b/pkg/front_end/parser_testcases/sealed_class/sealed_class.dart.intertwined.expect index 53c196d137c..7a214bf22eb 100644 --- a/pkg/front_end/parser_testcases/sealed_class/sealed_class.dart.intertwined.expect +++ b/pkg/front_end/parser_testcases/sealed_class/sealed_class.dart.intertwined.expect @@ -8,13 +8,13 @@ parseUnit(sealed) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(, class, null, null, sealed, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, sealed, null, null, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(sealed) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(Class, classOrMixinDeclaration) listener: handleNoTypeVariables({) - listener: beginClassDeclaration(class, null, null, null, sealed, null, null, null, null, null, Class) - parseClass(Class, class, class, Class) - parseClassHeaderOpt(Class, class, class) + listener: beginClassDeclaration(sealed, null, null, null, sealed, null, null, null, null, null, Class) + parseClass(Class, sealed, class, Class) + parseClassHeaderOpt(Class, sealed, class) parseClassExtendsOpt(Class) listener: handleNoType(Class) listener: handleClassExtends(null, 1) @@ -22,12 +22,12 @@ parseUnit(sealed) listener: handleClassNoWithClause() parseClassOrMixinOrEnumImplementsOpt(Class) listener: handleImplements(null, 0) - listener: handleClassHeader(class, class, null) + listener: handleClassHeader(sealed, class, null) parseClassOrMixinOrExtensionBody(Class, DeclarationKind.Class, Class) listener: beginClassOrMixinOrExtensionBody(DeclarationKind.Class, {) notEofOrValue(}, }) listener: endClassOrMixinOrExtensionBody(DeclarationKind.Class, 0, {, }) - listener: endClassDeclaration(class, }) + listener: endClassDeclaration(sealed, }) listener: endTopLevelDeclaration(mixin) parseTopLevelDeclarationImpl(}, Instance of 'DirectiveContext') parseMetadataStar(}) @@ -58,12 +58,12 @@ parseUnit(sealed) listener: endMetadataStar(0) parseTopLevelKeywordDeclaration(}, class, null, null, sealed, null, null, Instance of 'DirectiveContext') parseClassOrNamedMixinApplication(null, null, null, sealed, null, null, null, null, null, class) - listener: beginClassOrMixinOrNamedMixinApplicationPrelude(class) + listener: beginClassOrMixinOrNamedMixinApplicationPrelude(sealed) ensureIdentifier(class, classOrMixinDeclaration) listener: handleIdentifier(A, classOrMixinDeclaration) listener: handleNoTypeVariables(=) - listener: beginNamedMixinApplication(class, null, null, null, sealed, null, null, null, null, null, A) - parseNamedMixinApplication(A, class, class) + listener: beginNamedMixinApplication(sealed, null, null, null, sealed, null, null, null, null, null, A) + parseNamedMixinApplication(A, sealed, class) listener: handleIdentifier(Object, typeReference) listener: handleNoTypeArguments(with) listener: handleType(Object, null) @@ -76,7 +76,7 @@ parseUnit(sealed) listener: endTypeList(1) listener: handleNamedMixinApplicationWithClause(with) ensureSemicolon(M) - listener: endNamedMixinApplication(class, class, =, null, ;) + listener: endNamedMixinApplication(sealed, class, =, null, ;) listener: endTopLevelDeclaration() reportAllErrorTokens(sealed) listener: endCompilationUnit(3, ) diff --git a/pkg/front_end/testcases/class_modifiers/base/base_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/class_modifiers/base/base_class_declaration.dart.textual_outline.expect index b2c6bd7fe80..2cc0c148851 100644 --- a/pkg/front_end/testcases/class_modifiers/base/base_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/class_modifiers/base/base_class_declaration.dart.textual_outline.expect @@ -1,7 +1,5 @@ -base -class A {} +base class A {} abstract base class B {} base mixin M {} -base -class C = Object with M; +base class C = Object with M; diff --git a/pkg/front_end/testcases/class_modifiers/final/final_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/class_modifiers/final/final_class_declaration.dart.textual_outline.expect index ba8be478155..04658a45519 100644 --- a/pkg/front_end/testcases/class_modifiers/final/final_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/class_modifiers/final/final_class_declaration.dart.textual_outline.expect @@ -1,7 +1,5 @@ -final -class A {} +final class A {} abstract final class B {} final mixin M {} -final -class C = Object with M; +final class C = Object with M; diff --git a/pkg/front_end/testcases/class_modifiers/interface/interface_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/class_modifiers/interface/interface_class_declaration.dart.textual_outline.expect index 82228a0e424..4459d3714df 100644 --- a/pkg/front_end/testcases/class_modifiers/interface/interface_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/class_modifiers/interface/interface_class_declaration.dart.textual_outline.expect @@ -1,7 +1,5 @@ -interface -class A {} +interface class A {} abstract interface class B {} interface mixin M {} -interface -class C = Object with M; +interface class C = Object with M; diff --git a/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_declaration.dart.textual_outline.expect index 0b8c2e41fb0..b6d6cbaa7d9 100644 --- a/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_declaration.dart.textual_outline.expect @@ -1,9 +1,7 @@ -mixin -class A {} +mixin class A {} abstract mixin class B {} mixin M {} -mixin -class C = Object with M; +mixin class C = Object with M; class AWith with A {} class BWith with B {} class CWith with C {} diff --git a/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_generative_constructor.dart.textual_outline.expect b/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_generative_constructor.dart.textual_outline.expect index e7c5a81982d..f077398c539 100644 --- a/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_generative_constructor.dart.textual_outline.expect +++ b/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_generative_constructor.dart.textual_outline.expect @@ -1,45 +1,36 @@ -mixin -class ErrorMixinClass { +mixin class ErrorMixinClass { final int foo; ErrorMixinClass(this.foo); } -mixin -class ErrorMixinClassNamed { +mixin class ErrorMixinClassNamed { final int foo; ErrorMixinClassNamed.named(this.foo); } -mixin -class ErrorMixinClassRedirect { +mixin class ErrorMixinClassRedirect { int foo = 0; ErrorMixinClassRedirect.named(int f) {} ErrorMixinClassRedirect.x(int f) : this.named(f); } -mixin -class ErrorMixinClassExternal { +mixin class ErrorMixinClassExternal { external ErrorMixinClassExternal(); } -mixin -class ErrorMixinClassSuper { +mixin class ErrorMixinClassSuper { ErrorMixinClassSuper(): super(); } -mixin -class ErrorMixinClassBody { +mixin class ErrorMixinClassBody { ErrorMixinClassBody() {} } -mixin -class MixinClassConstructor { +mixin class MixinClassConstructor { int foo = 0; MixinClassConstructor(); MixinClassConstructor.named(); } -mixin -class ConstMixinClassConstructor { +mixin class ConstMixinClassConstructor { final int foo = 0; const ConstMixinClassConstructor(); const ConstMixinClassConstructor.named(); } -mixin -class MixinClassFactory { +mixin class MixinClassFactory { int foo = 0; MixinClassFactory(); MixinClassFactory.named(); diff --git a/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_superclass_not_object.dart.textual_outline.expect b/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_superclass_not_object.dart.textual_outline.expect index affe9097855..afa61cfc417 100644 --- a/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_superclass_not_object.dart.textual_outline.expect +++ b/pkg/front_end/testcases/class_modifiers/mixin/mixin_class_superclass_not_object.dart.textual_outline.expect @@ -1,12 +1,6 @@ -mixin -class NotObject {} -mixin -class AlsoNotObject {} -mixin -class A extends NotObject {} -mixin -class B extends Object with NotObject {} -mixin -class C = Object with NotObject; -mixin -class D = Object with AlsoNotObject, NotObject; +mixin class NotObject {} +mixin class AlsoNotObject {} +mixin class A extends NotObject {} +mixin class B extends Object with NotObject {} +mixin class C = Object with NotObject; +mixin class D = Object with AlsoNotObject, NotObject; diff --git a/pkg/front_end/testcases/dart2js/inline_class/external.dart.textual_outline.expect b/pkg/front_end/testcases/dart2js/inline_class/external.dart.textual_outline.expect index 1d47122b3c9..022e92ff230 100644 --- a/pkg/front_end/testcases/dart2js/inline_class/external.dart.textual_outline.expect +++ b/pkg/front_end/testcases/dart2js/inline_class/external.dart.textual_outline.expect @@ -3,8 +3,7 @@ library static_interop; import 'package:js/js.dart'; abstract class A {} @JS() -inline -class B { +inline class B { final A a; external B(A a); external B.named(int i); diff --git a/pkg/front_end/testcases/dartdevc/inline_class/external.dart.textual_outline.expect b/pkg/front_end/testcases/dartdevc/inline_class/external.dart.textual_outline.expect index 1d47122b3c9..022e92ff230 100644 --- a/pkg/front_end/testcases/dartdevc/inline_class/external.dart.textual_outline.expect +++ b/pkg/front_end/testcases/dartdevc/inline_class/external.dart.textual_outline.expect @@ -3,8 +3,7 @@ library static_interop; import 'package:js/js.dart'; abstract class A {} @JS() -inline -class B { +inline class B { final A a; external B(A a); external B.named(int i); diff --git a/pkg/front_end/testcases/general/base_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/general/base_class_declaration.dart.textual_outline.expect index 2c7f5d6ec93..49436e4b342 100644 --- a/pkg/front_end/testcases/general/base_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/base_class_declaration.dart.textual_outline.expect @@ -1,8 +1,6 @@ // @dart = 2.18 -base -class A {} +base class A {} abstract base class B {} base mixin M {} -base -class C = Object with M; +base class C = Object with M; diff --git a/pkg/front_end/testcases/general/final_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/general/final_class_declaration.dart.textual_outline.expect index 08584db82e0..f7a9ed45906 100644 --- a/pkg/front_end/testcases/general/final_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/final_class_declaration.dart.textual_outline.expect @@ -1,8 +1,6 @@ // @dart = 2.19 -final -class A {} +final class A {} abstract final class B {} final mixin M {} -final -class C = Object with M; +final class C = Object with M; diff --git a/pkg/front_end/testcases/general/inline_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/general/inline_class_declaration.dart.textual_outline.expect index cf9a32e5336..194fc6662fa 100644 --- a/pkg/front_end/testcases/general/inline_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/inline_class_declaration.dart.textual_outline.expect @@ -1,6 +1,4 @@ // @dart = 2.18 mixin Mixin {} -inline -class Class1 {} -inline -class Class2 = Object with Mixin; +inline class Class1 {} +inline class Class2 = Object with Mixin; diff --git a/pkg/front_end/testcases/general/interface_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/general/interface_class_declaration.dart.textual_outline.expect index 11f80bd6cad..b7be3e955c6 100644 --- a/pkg/front_end/testcases/general/interface_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/interface_class_declaration.dart.textual_outline.expect @@ -1,8 +1,6 @@ // @dart = 2.18 -interface -class A {} +interface class A {} abstract interface class B {} interface mixin M {} -interface -class C = Object with M; +interface class C = Object with M; diff --git a/pkg/front_end/testcases/general/macro_class.dart.textual_outline.expect b/pkg/front_end/testcases/general/macro_class.dart.textual_outline.expect index d33df1dc0c5..03ad38d15fe 100644 --- a/pkg/front_end/testcases/general/macro_class.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/macro_class.dart.textual_outline.expect @@ -1,9 +1,7 @@ class Super {} mixin Mixin {} -macro -class Class1 {} +macro class Class1 {} abstract macro class Class2 {} -macro -class Class3 = Super with Mixin; +macro class Class3 = Super with Mixin; abstract macro class Class4 = Super with Mixin; main() {} diff --git a/pkg/front_end/testcases/general/mixin_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/general/mixin_class_declaration.dart.textual_outline.expect index 9f2fcbf499e..ce18449f0e6 100644 --- a/pkg/front_end/testcases/general/mixin_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/mixin_class_declaration.dart.textual_outline.expect @@ -1,6 +1,4 @@ -mixin -class A {} +mixin class A {} abstract mixin class B {} mixin M {} -mixin -class C = Object with M; +mixin class C = Object with M; diff --git a/pkg/front_end/testcases/general/sealed_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/general/sealed_class_declaration.dart.textual_outline.expect index 20d4c9614bc..d4a95f943f9 100644 --- a/pkg/front_end/testcases/general/sealed_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/general/sealed_class_declaration.dart.textual_outline.expect @@ -1,8 +1,6 @@ // @dart = 2.18 -sealed -class A {} +sealed class A {} sealed mixin M {} mixin MM {} -sealed -class B = Object with MM; +sealed class B = Object with MM; diff --git a/pkg/front_end/testcases/inline_class/annotations.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/annotations.dart.textual_outline.expect index b8081262174..79c17066910 100644 --- a/pkg/front_end/testcases/inline_class/annotations.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/annotations.dart.textual_outline.expect @@ -1,6 +1,5 @@ @Deprecated('') -inline -class A { +inline class A { @Deprecated('') final int i; @Deprecated('') diff --git a/pkg/front_end/testcases/inline_class/constructor_access.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/constructor_access.dart.textual_outline.expect index 01b82ba2364..d1c40de1e2b 100644 --- a/pkg/front_end/testcases/inline_class/constructor_access.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/constructor_access.dart.textual_outline.expect @@ -1,11 +1,9 @@ -inline -class Class { +inline class Class { final int it; Class(this.it); Class.named(int it) : this.it = it + 1; } -inline -class GenericClass { +inline class GenericClass { final T it; GenericClass(this.it); } diff --git a/pkg/front_end/testcases/inline_class/constructor_bodies.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/constructor_bodies.dart.textual_outline.expect index f31b5352db4..dc0a084e759 100644 --- a/pkg/front_end/testcases/inline_class/constructor_bodies.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/constructor_bodies.dart.textual_outline.expect @@ -1,5 +1,4 @@ -inline -class Class1 { +inline class Class1 { final int it; Class1(this.it); Class1.named1(this.it, int additional); @@ -9,8 +8,7 @@ class Class1 { Class1.named5(int additional, int it) : this.it = it {} Class1.named6(String text) : it = text.length; } -inline -class Class2 { +inline class Class2 { final T it; Class2(this.it); Class2.named1(this.it, int additional); diff --git a/pkg/front_end/testcases/inline_class/constructor_formal_parameters.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/constructor_formal_parameters.dart.textual_outline.expect index 43972867822..a3892c9ede4 100644 --- a/pkg/front_end/testcases/inline_class/constructor_formal_parameters.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/constructor_formal_parameters.dart.textual_outline.expect @@ -1,11 +1,9 @@ -inline -class I { +inline class I { final int it; I(int x, [int? y]) : it = x + (y ?? 42); void m(String s, [int i = 1]) {} } -inline -class I2 { +inline class I2 { final int it; I2(int x, {int? y}) : it = x + (y ?? 87); void m(String s, {int i = 1}) {} diff --git a/pkg/front_end/testcases/inline_class/constructors.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/constructors.dart.textual_outline.expect index 9c71cf0e897..8bc0eaffbc7 100644 --- a/pkg/front_end/testcases/inline_class/constructors.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/constructors.dart.textual_outline.expect @@ -1,10 +1,8 @@ -inline -class Class1 { +inline class Class1 { final int field; Class1(this.field); } -inline -class Class2 { +inline class Class2 { final int field; Class2(this.field); } diff --git a/pkg/front_end/testcases/inline_class/external.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/external.dart.textual_outline.expect index ede85d18529..213dba17050 100644 --- a/pkg/front_end/testcases/inline_class/external.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/external.dart.textual_outline.expect @@ -1,6 +1,5 @@ abstract class A {} -inline -class B { +inline class B { final A a; external B(A a); external B.named(int i); diff --git a/pkg/front_end/testcases/inline_class/field_access.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/field_access.dart.textual_outline.expect index b86a11dd6ec..8f116b982b3 100644 --- a/pkg/front_end/testcases/inline_class/field_access.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/field_access.dart.textual_outline.expect @@ -2,38 +2,32 @@ import 'field_access_lib.dart'; extension on dynamic { void set it(value) {} } -inline -class InlineClass { +inline class InlineClass { final int it; InlineClass(this.it); void test() {} } -inline -class GenericInlineClass { +inline class GenericInlineClass { final T it; GenericInlineClass(this.it); void test(T t) {} } -inline -class FunctionInlineClass { +inline class FunctionInlineClass { final T Function() it; FunctionInlineClass(this.it); void test(T Function() t) {} } -inline -class GenericFunctionInlineClass { +inline class GenericFunctionInlineClass { final T Function() it; GenericFunctionInlineClass(this.it); void test() {} } -inline -class DynamicInlineClass { +inline class DynamicInlineClass { final dynamic it; DynamicInlineClass(this.it); void test() {} } -inline -class ErroneousInlineClass { +inline class ErroneousInlineClass { final int a; final String b; ErroneousInlineClass(this.a, this.b); diff --git a/pkg/front_end/testcases/inline_class/initializers.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/initializers.dart.textual_outline.expect index 029ff7bc683..48a9dbb1d55 100644 --- a/pkg/front_end/testcases/inline_class/initializers.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/initializers.dart.textual_outline.expect @@ -1,29 +1,23 @@ -inline -class Class1 { +inline class Class1 { final int field; Class1(this.field); } -inline -class Class2 { +inline class Class2 { final int field; Class2(int field) : this.field = field; } -inline -class Class3 { +inline class Class3 { final int field; } -inline -class Class4 { +inline class Class4 { final int field; Class4(this.field, this.nonexisting); } -inline -class Class5 { +inline class Class5 { final int field; Class5(this.field) : this.field = 42; } -inline -class Class6 { +inline class Class6 { final int field; Class6(this.field) : this.nonexisting = 42; } diff --git a/pkg/front_end/testcases/inline_class/inline_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/inline_class_declaration.dart.textual_outline.expect index 21f7b4b0e9d..9e1f7e2b07b 100644 --- a/pkg/front_end/testcases/inline_class/inline_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/inline_class_declaration.dart.textual_outline.expect @@ -1,13 +1,10 @@ mixin Mixin {} -inline -class Class1 { +inline class Class1 { final int it; Class1(this.it); } -inline -class Class2 = Object with Mixin; -inline -class Class3 { +inline class Class2 = Object with Mixin; +inline class Class3 { final List it; Class3(this.it); } diff --git a/pkg/front_end/testcases/inline_class/member_not_found.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/member_not_found.dart.textual_outline.expect index 0a9e3bc7f29..e2c28cee8ec 100644 --- a/pkg/front_end/testcases/inline_class/member_not_found.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/member_not_found.dart.textual_outline.expect @@ -1,5 +1,4 @@ -inline -class A { +inline class A { int value; A.name1(this.value); } diff --git a/pkg/front_end/testcases/inline_class/method_access.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/method_access.dart.textual_outline.expect index 6c2073cd970..e07b1c0debe 100644 --- a/pkg/front_end/testcases/inline_class/method_access.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/method_access.dart.textual_outline.expect @@ -2,8 +2,7 @@ extension on Object { int get setter => 42; void set getter(int value) {} } -inline -class InlineClass { +inline class InlineClass { final int it; InlineClass(this.it); test() {} diff --git a/pkg/front_end/testcases/inline_class/procedures.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/procedures.dart.textual_outline.expect index 5f6d9bc6bee..039e9ea1d3d 100644 --- a/pkg/front_end/testcases/inline_class/procedures.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/procedures.dart.textual_outline.expect @@ -1,5 +1,4 @@ -inline -class Class { +inline class Class { final int it; void instanceMethod() {} int get instanceGetter => 42; @@ -8,8 +7,7 @@ class Class { static void staticMethod() {} static S genericStaticMethod(S s) => s; } -inline -class GenericClass { +inline class GenericClass { final T it; void instanceMethod() {} T get instanceGetter => throw ''; diff --git a/pkg/front_end/testcases/inline_class/representation.dart.textual_outline.expect b/pkg/front_end/testcases/inline_class/representation.dart.textual_outline.expect index 121b62765cf..b12c6a0cf59 100644 --- a/pkg/front_end/testcases/inline_class/representation.dart.textual_outline.expect +++ b/pkg/front_end/testcases/inline_class/representation.dart.textual_outline.expect @@ -1,19 +1,15 @@ -inline -class Missing {} -inline -class Static { +inline class Missing {} +inline class Static { static int staticField = 42; final bool instanceField; Static(this.instanceField); } -inline -class Multiple { +inline class Multiple { final bool instanceField1; final int instanceField2; Multiple(this.instanceField1); } -inline -class Duplicate { +inline class Duplicate { final bool instanceField; final int instanceField; Duplicate(this.instanceField); diff --git a/pkg/front_end/testcases/macros/macro_class.dart.textual_outline.expect b/pkg/front_end/testcases/macros/macro_class.dart.textual_outline.expect index d33df1dc0c5..03ad38d15fe 100644 --- a/pkg/front_end/testcases/macros/macro_class.dart.textual_outline.expect +++ b/pkg/front_end/testcases/macros/macro_class.dart.textual_outline.expect @@ -1,9 +1,7 @@ class Super {} mixin Mixin {} -macro -class Class1 {} +macro class Class1 {} abstract macro class Class2 {} -macro -class Class3 = Super with Mixin; +macro class Class3 = Super with Mixin; abstract macro class Class4 = Super with Mixin; main() {} diff --git a/pkg/front_end/testcases/patterns/pattern_matching.dart.textual_outline.expect b/pkg/front_end/testcases/patterns/pattern_matching.dart.textual_outline.expect index 61967649fe0..21787e1ab1c 100644 --- a/pkg/front_end/testcases/patterns/pattern_matching.dart.textual_outline.expect +++ b/pkg/front_end/testcases/patterns/pattern_matching.dart.textual_outline.expect @@ -1,6 +1,5 @@ import 'dart:math' as math; -sealed -class Shape { +sealed class Shape { double calculateArea(); } class Square implements Shape { diff --git a/pkg/front_end/testcases/sealed_class/sealed_class_declaration.dart.textual_outline.expect b/pkg/front_end/testcases/sealed_class/sealed_class_declaration.dart.textual_outline.expect index 1641056395d..592166b8704 100644 --- a/pkg/front_end/testcases/sealed_class/sealed_class_declaration.dart.textual_outline.expect +++ b/pkg/front_end/testcases/sealed_class/sealed_class_declaration.dart.textual_outline.expect @@ -1,5 +1,3 @@ -sealed -class A {} +sealed class A {} mixin M {} -sealed -class B = Object with M; +sealed class B = Object with M;