Files
sdk/pkg/front_end/parser_testcases/inline_class/extends_with.dart.expect
T
Jens Johansen fc67d31862 [parser] Listener calls should not be on the next (unrelated) token
When the parser sends events to the listener some events has a pair of
parameters, `beginToken` and `endToken`. Most of these are constructed
in such a way that the `beginToken` is the first token and the
`endToken` is the last token in that construct. This is for instance the
case with `endClassDeclaration`.
It was, however, not the case for `endMetadata` where `endToken` instead
was the next token *not* in the metadata.

In this CL I've found a changed the following to point to the last token
in the construct instead of the next token not in the construct and
renamed the parameter where it made sense:

* `endAssert` --- and renamed `semicolonToken` (which only pointed to
  a semicolon for statements) to `endToken`.
* `endAwaitExpression`
* `endConstLiteral` --- and renamed `token` to `endToken`
* `endConstructorReference`
* `endFieldInitializer` --- and renamed `token` to `endToken`
* `endForIn`
* `endForInBody` --- and renamed `token` to `endToken`
* `endForStatement`
* `endForStatementBody` --- and renamed `token` to `endToken`
* `endFunctionExpression` --- and renamed `token` to `endToken`
* `endInitializer` --- and renamed `token` to `endToken`
* `endInitializers`
* `endInvalidAwaitExpression`
* `endMetadata`
* `endSwitchCase`
* `endTopLevelDeclaration` --- and renamed `nextToken` to `endToken`
* `endWhileStatement`
* `endWhileStatementBody` --- and renamed `token` to `endToken`
* `handleNoConstructorReferenceContinuationAfterTypeArguments`

In the few places in listeners where these values were used I've mostly
updated to do e.g. `endToken.text!` to retain the current behavior.

Change-Id: I25495e160d1eec5c75bcf1313b512cd04bcb1533
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/364322
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
2024-04-26 06:59:23 +00:00

1042 lines
48 KiB
Plaintext

Problems reported:
parser/inline_class/extends_with:1:27: An extension type declaration can't have an 'extends' clause.
extension type ET1(int i) extends Foo {}
^^^^^^^
parser/inline_class/extends_with:2:27: An extension type declaration can't have a 'with' clause.
extension type ET2(int i) with Foo {}
^^^^
parser/inline_class/extends_with:3:27: An extension type declaration can't have a 'with' clause.
extension type ET3(int i) with Foo, Bar {}
^^^^
parser/inline_class/extends_with:4:27: An extension type declaration can't have an 'extends' clause.
extension type ET4(int i) extends Foo with Bar {}
^^^^^^^
parser/inline_class/extends_with:4:39: An extension type declaration can't have a 'with' clause.
extension type ET4(int i) extends Foo with Bar {}
^^^^
parser/inline_class/extends_with:5:27: An extension type declaration can't have an 'extends' clause.
extension type ET5(int i) extends Foo with Bar, Baz {}
^^^^^^^
parser/inline_class/extends_with:5:39: An extension type declaration can't have a 'with' clause.
extension type ET5(int i) extends Foo with Bar, Baz {}
^^^^
parser/inline_class/extends_with:6:27: An extension type declaration can't have an 'extends' clause.
extension type ET6(int i) extends Foo implements Bar {}
^^^^^^^
parser/inline_class/extends_with:7:27: An extension type declaration can't have a 'with' clause.
extension type ET7(int i) with Foo implements Bar {}
^^^^
parser/inline_class/extends_with:8:27: An extension type declaration can't have a 'with' clause.
extension type ET8(int i) with Foo, Bar implements Baz {}
^^^^
parser/inline_class/extends_with:9:27: An extension type declaration can't have an 'extends' clause.
extension type ET9(int i) extends Foo with Bar implements Baz {}
^^^^^^^
parser/inline_class/extends_with:9:39: An extension type declaration can't have a 'with' clause.
extension type ET9(int i) extends Foo with Bar implements Baz {}
^^^^
parser/inline_class/extends_with:10:28: An extension type declaration can't have an 'extends' clause.
extension type ET10(int i) extends Foo with Bar, Baz implements Boz {}
^^^^^^^
parser/inline_class/extends_with:10:40: An extension type declaration can't have a 'with' clause.
extension type ET10(int i) extends Foo with Bar, Baz implements Boz {}
^^^^
parser/inline_class/extends_with:11:43: An extension type declaration can't have an 'extends' clause.
extension type ET11(int i) implements Bar extends Foo {}
^^^^^^^
parser/inline_class/extends_with:12:43: An extension type declaration can't have a 'with' clause.
extension type ET12(int i) implements Bar with Foo {}
^^^^
parser/inline_class/extends_with:13:43: An extension type declaration can't have a 'with' clause.
extension type ET13(int i) implements Bar with Foo, Bar {}
^^^^
parser/inline_class/extends_with:14:43: An extension type declaration can't have an 'extends' clause.
extension type ET14(int i) implements Bar extends Foo with Bar {}
^^^^^^^
parser/inline_class/extends_with:14:55: An extension type declaration can't have a 'with' clause.
extension type ET14(int i) implements Bar extends Foo with Bar {}
^^^^
parser/inline_class/extends_with:15:43: An extension type declaration can't have an 'extends' clause.
extension type ET15(int i) implements Bar extends Foo with Bar, Baz {}
^^^^^^^
parser/inline_class/extends_with:15:55: An extension type declaration can't have a 'with' clause.
extension type ET15(int i) implements Bar extends Foo with Bar, Baz {}
^^^^
parser/inline_class/extends_with:16:43: An extension type declaration can't have an 'extends' clause.
extension type ET16(int i) implements Bar extends Foo implements Bar {}
^^^^^^^
parser/inline_class/extends_with:16:55: Each class definition can have at most one implements clause.
extension type ET16(int i) implements Bar extends Foo implements Bar {}
^^^^^^^^^^
parser/inline_class/extends_with:17:43: An extension type declaration can't have a 'with' clause.
extension type ET17(int i) implements Bar with Foo implements Bar {}
^^^^
parser/inline_class/extends_with:17:52: Each class definition can have at most one implements clause.
extension type ET17(int i) implements Bar with Foo implements Bar {}
^^^^^^^^^^
parser/inline_class/extends_with:18:43: An extension type declaration can't have a 'with' clause.
extension type ET18(int i) implements Bar with Foo, Bar implements Baz {}
^^^^
parser/inline_class/extends_with:18:57: Each class definition can have at most one implements clause.
extension type ET18(int i) implements Bar with Foo, Bar implements Baz {}
^^^^^^^^^^
parser/inline_class/extends_with:19:43: An extension type declaration can't have an 'extends' clause.
extension type ET19(int i) implements Bar extends Foo with Bar implements Baz {}
^^^^^^^
parser/inline_class/extends_with:19:55: An extension type declaration can't have a 'with' clause.
extension type ET19(int i) implements Bar extends Foo with Bar implements Baz {}
^^^^
parser/inline_class/extends_with:19:64: Each class definition can have at most one implements clause.
extension type ET19(int i) implements Bar extends Foo with Bar implements Baz {}
^^^^^^^^^^
parser/inline_class/extends_with:20:43: An extension type declaration can't have an 'extends' clause.
extension type ET20(int i) implements Bar extends Foo with Bar, Baz implements Boz {}
^^^^^^^
parser/inline_class/extends_with:20:55: An extension type declaration can't have a 'with' clause.
extension type ET20(int i) implements Bar extends Foo with Bar, Baz implements Boz {}
^^^^
parser/inline_class/extends_with:20:69: Each class definition can have at most one implements clause.
extension type ET20(int i) implements Bar extends Foo with Bar, Baz implements Boz {}
^^^^^^^^^^
parser/inline_class/extends_with:21:43: Each class definition can have at most one implements clause.
extension type ET21(int i) implements Bar implements Boz {}
^^^^^^^^^^
parser/inline_class/extends_with:22:28: An extension type declaration can't have an 'extends' clause.
extension type ET22(int i) extends Bar extends Boz {}
^^^^^^^
parser/inline_class/extends_with:22:40: An extension type declaration can't have an 'extends' clause.
extension type ET22(int i) extends Bar extends Boz {}
^^^^^^^
parser/inline_class/extends_with:23:28: An extension type declaration can't have an 'extends' clause.
extension type ET23(int i) extends Bar, Boz {}
^^^^^^^
beginCompilationUnit(extension)
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET1)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments({)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
handleClassNoWithClause()
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET2)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleNoType())
handleClassExtends(null, 1)
beginTypeList(Foo)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments({)
handleType(Foo, null)
endTypeList(1)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET3)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleNoType())
handleClassExtends(null, 1)
beginTypeList(Foo)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(,)
handleType(Foo, null)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments({)
handleType(Bar, null)
endTypeList(2)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET4)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(with)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
beginTypeList(Bar)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments({)
handleType(Bar, null)
endTypeList(1)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET5)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(with)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
beginTypeList(Bar)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(,)
handleType(Bar, null)
handleIdentifier(Baz, typeReference)
handleNoTypeArguments({)
handleType(Baz, null)
endTypeList(2)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET6)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(implements)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
handleClassNoWithClause()
handleIdentifier(Bar, typeReference)
handleNoTypeArguments({)
handleType(Bar, null)
handleImplements(implements, 1)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET7)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleNoType())
handleClassExtends(null, 1)
beginTypeList(Foo)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(implements)
handleType(Foo, null)
endTypeList(1)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments({)
handleType(Bar, null)
handleImplements(implements, 1)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET8)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleNoType())
handleClassExtends(null, 1)
beginTypeList(Foo)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(,)
handleType(Foo, null)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(implements)
handleType(Bar, null)
endTypeList(2)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleIdentifier(Baz, typeReference)
handleNoTypeArguments({)
handleType(Baz, null)
handleImplements(implements, 1)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET9)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(with)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
beginTypeList(Bar)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(implements)
handleType(Bar, null)
endTypeList(1)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleIdentifier(Baz, typeReference)
handleNoTypeArguments({)
handleType(Baz, null)
handleImplements(implements, 1)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET10)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(with)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
beginTypeList(Bar)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(,)
handleType(Bar, null)
handleIdentifier(Baz, typeReference)
handleNoTypeArguments(implements)
handleType(Baz, null)
endTypeList(2)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleIdentifier(Boz, typeReference)
handleNoTypeArguments({)
handleType(Boz, null)
handleImplements(implements, 1)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET11)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(extends)
handleType(Bar, null)
handleImplements(implements, 1)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments({)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
handleClassNoWithClause()
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET12)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(with)
handleType(Bar, null)
handleImplements(implements, 1)
handleNoType(Bar)
handleClassExtends(null, 1)
beginTypeList(Foo)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments({)
handleType(Foo, null)
endTypeList(1)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET13)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(with)
handleType(Bar, null)
handleImplements(implements, 1)
handleNoType(Bar)
handleClassExtends(null, 1)
beginTypeList(Foo)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(,)
handleType(Foo, null)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments({)
handleType(Bar, null)
endTypeList(2)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET14)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(extends)
handleType(Bar, null)
handleImplements(implements, 1)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(with)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
beginTypeList(Bar)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments({)
handleType(Bar, null)
endTypeList(1)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET15)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(extends)
handleType(Bar, null)
handleImplements(implements, 1)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(with)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
beginTypeList(Bar)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(,)
handleType(Bar, null)
handleIdentifier(Baz, typeReference)
handleNoTypeArguments({)
handleType(Baz, null)
endTypeList(2)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET16)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(extends)
handleType(Bar, null)
handleImplements(implements, 1)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(implements)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
handleClassNoWithClause()
handleIdentifier(Bar, typeReference)
handleNoTypeArguments({)
handleType(Bar, null)
handleImplements(implements, 1)
handleRecoverableError(MultipleImplements, implements, implements)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET17)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(with)
handleType(Bar, null)
handleImplements(implements, 1)
handleNoType(Bar)
handleClassExtends(null, 1)
beginTypeList(Foo)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(implements)
handleType(Foo, null)
endTypeList(1)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments({)
handleType(Bar, null)
handleImplements(implements, 1)
handleRecoverableError(MultipleImplements, implements, implements)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET18)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(with)
handleType(Bar, null)
handleImplements(implements, 1)
handleNoType(Bar)
handleClassExtends(null, 1)
beginTypeList(Foo)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(,)
handleType(Foo, null)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(implements)
handleType(Bar, null)
endTypeList(2)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleIdentifier(Baz, typeReference)
handleNoTypeArguments({)
handleType(Baz, null)
handleImplements(implements, 1)
handleRecoverableError(MultipleImplements, implements, implements)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET19)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(extends)
handleType(Bar, null)
handleImplements(implements, 1)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(with)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
beginTypeList(Bar)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(implements)
handleType(Bar, null)
endTypeList(1)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleIdentifier(Baz, typeReference)
handleNoTypeArguments({)
handleType(Baz, null)
handleImplements(implements, 1)
handleRecoverableError(MultipleImplements, implements, implements)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET20)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(extends)
handleType(Bar, null)
handleImplements(implements, 1)
handleIdentifier(Foo, typeReference)
handleNoTypeArguments(with)
handleType(Foo, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
beginTypeList(Bar)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(,)
handleType(Bar, null)
handleIdentifier(Baz, typeReference)
handleNoTypeArguments(implements)
handleType(Baz, null)
endTypeList(2)
handleClassWithClause(with)
handleRecoverableError(ExtensionTypeWith, with, with)
handleIdentifier(Boz, typeReference)
handleNoTypeArguments({)
handleType(Boz, null)
handleImplements(implements, 1)
handleRecoverableError(MultipleImplements, implements, implements)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET21)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(implements)
handleType(Bar, null)
handleImplements(implements, 1)
handleNoType(Bar)
handleClassExtends(null, 1)
handleClassNoWithClause()
handleIdentifier(Boz, typeReference)
handleNoTypeArguments({)
handleType(Boz, null)
handleImplements(implements, 1)
handleRecoverableError(MultipleImplements, implements, implements)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET22)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(extends)
handleType(Bar, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
handleClassNoWithClause()
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
handleIdentifier(Boz, typeReference)
handleNoTypeArguments({)
handleType(Boz, null)
handleClassExtends(extends, 1)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
handleClassNoWithClause()
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
beginMetadataStar(extension)
endMetadataStar(0)
beginExtensionDeclarationPrelude(extension)
handleNoTypeVariables(()
beginExtensionTypeDeclaration(null, extension, ET23)
beginPrimaryConstructor(()
beginFormalParameters((, MemberKind.PrimaryConstructor)
beginMetadataStar(int)
endMetadataStar(0)
beginFormalParameter(int, MemberKind.PrimaryConstructor, null, null, null)
handleIdentifier(int, typeReference)
handleNoTypeArguments(i)
handleType(int, null)
handleIdentifier(i, formalParameterDeclaration)
handleFormalParameterWithoutValue())
endFormalParameter(null, null, null, i, null, null, FormalParameterKind.requiredPositional, MemberKind.PrimaryConstructor)
endFormalParameters(1, (, ), MemberKind.PrimaryConstructor)
endPrimaryConstructor((, null, false)
handleImplements(null, 0)
handleIdentifier(Bar, typeReference)
handleNoTypeArguments(,)
handleType(Bar, null)
handleIdentifier(Boz, typeReference)
handleNoTypeArguments({)
handleType(Boz, null)
handleClassExtends(extends, 2)
handleRecoverableError(ExtensionTypeExtends, extends, extends)
handleClassNoWithClause()
handleImplements(null, 0)
handleRecoverDeclarationHeader(DeclarationHeaderKind.ExtensionType)
beginClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, {)
endClassOrMixinOrExtensionBody(DeclarationKind.ExtensionType, 0, {, })
endExtensionTypeDeclaration(extension, null, extension, type, })
endTopLevelDeclaration(})
endCompilationUnit(23, )