| library; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/regress/issue_59870_02.dart:12:32: Error: The class 'Function' can't be implemented outside of its library because it's a final class. |
| // mixin MAiBC on A implements B, Function { } |
| // ^ |
| // |
| // pkg/front_end/testcases/regress/issue_59870_02.dart:13:20: Error: The class 'Function' can't be used as a mixin superclass constraint outside of its library because it's a final class. |
| // mixin MBCiIJ on B, Function implements I, J { } |
| // ^ |
| // |
| // pkg/front_end/testcases/regress/issue_59870_02.dart:13:7: Error: The mixin 'MBCiIJ' must be 'base' because the supertype 'Function' is 'final'. |
| // Try adding 'base' to the mixin. |
| // mixin MBCiIJ on B, Function implements I, J { } |
| // ^ |
| // |
| // pkg/front_end/testcases/regress/issue_59870_02.dart:15:7: Error: The type 'CAaMAiBCaMBCiIJ_2' must be 'base', 'final' or 'sealed' because the supertype 'Function' is 'final'. |
| // Try adding 'base', 'final', or 'sealed' to the type. |
| // class CAaMAiBCaMBCiIJ_2 extends CAaMAiBC with MBCiIJ {} |
| // ^ |
| // |
| // pkg/front_end/testcases/regress/issue_59870_02.dart:15:7: Error: 'CAaMAiBC' doesn't implement '_MBCiIJ&B&Function' so it can't be used with 'MBCiIJ'. |
| // - 'CAaMAiBC' is from 'pkg/front_end/testcases/regress/issue_59870_02.dart'. |
| // - 'B with Function' is from 'pkg/front_end/testcases/regress/issue_59870_02.dart'. |
| // - 'MBCiIJ' is from 'pkg/front_end/testcases/regress/issue_59870_02.dart'. |
| // class CAaMAiBCaMBCiIJ_2 extends CAaMAiBC with MBCiIJ {} |
| // ^ |
| // |
| import self as self; |
| import "dart:core" as core; |
| |
| abstract class A extends core::Object { |
| synthetic constructor •() → self::A |
| : super core::Object::•() |
| ; |
| } |
| class B extends core::Object implements self::A { |
| synthetic constructor •() → self::B |
| : super core::Object::•() |
| ; |
| } |
| abstract class I extends core::Object { |
| synthetic constructor •() → self::I |
| : super core::Object::•() |
| ; |
| } |
| abstract class J extends core::Object { |
| synthetic constructor •() → self::J |
| : super core::Object::•() |
| ; |
| } |
| abstract class MAiBC extends self::A implements self::B /*isMixinDeclaration*/ { |
| } |
| abstract class MBCiIJ extends self::_MBCiIJ&B&Function implements self::I, self::J /*isMixinDeclaration*/ { |
| } |
| class CAaMAiBC = self::A with self::MAiBC { |
| synthetic constructor •() → self::CAaMAiBC |
| : super self::A::•() |
| ; |
| } |
| class CAaMAiBCaMBCiIJ_2 extends self::_CAaMAiBCaMBCiIJ_2&CAaMAiBC&MBCiIJ { |
| synthetic constructor •() → self::CAaMAiBCaMBCiIJ_2 |
| : super self::_CAaMAiBCaMBCiIJ_2&CAaMAiBC&MBCiIJ::•() |
| ; |
| } |
| abstract class _MBCiIJ&B&Function extends core::Object implements self::B /*isAnonymousMixin*/ { |
| synthetic constructor •() → self::_MBCiIJ&B&Function |
| : super core::Object::•() |
| ; |
| } |
| abstract class _CAaMAiBCaMBCiIJ_2&CAaMAiBC&MBCiIJ = self::CAaMAiBC with self::MBCiIJ /*isAnonymousMixin*/ { |
| synthetic constructor •() → self::_CAaMAiBCaMBCiIJ_2&CAaMAiBC&MBCiIJ |
| : super self::CAaMAiBC::•() |
| ; |
| } |