| library; |
| // |
| // Problems in library: |
| // |
| // pkg/front_end/testcases/no_such_method_forwarders/access_no_nsm.dart:9:7: Error: The non-abstract class 'SubClass2' is missing implementations for these members: |
| // - SuperClass.accessibleMethod |
| // Try to either |
| // - provide an implementation, |
| // - inherit an implementation from a superclass or mixin, |
| // - mark the class as abstract, or |
| // - provide a 'noSuchMethod' implementation. |
| // |
| // class SubClass2 implements SuperClass {} |
| // ^^^^^^^^^ |
| // pkg/front_end/testcases/no_such_method_forwarders/access_no_nsm_lib.dart:9:8: Context: 'SuperClass.accessibleMethod' is defined here. |
| // void accessibleMethod() {} |
| // ^^^^^^^^^^^^^^^^ |
| // |
| // pkg/front_end/testcases/no_such_method_forwarders/access_no_nsm.dart:15:7: Error: The non-abstract class 'SubSubClass2' is missing implementations for these members: |
| // - SuperClass.accessibleMethod |
| // Try to either |
| // - provide an implementation, |
| // - inherit an implementation from a superclass or mixin, |
| // - mark the class as abstract, or |
| // - provide a 'noSuchMethod' implementation. |
| // |
| // class SubSubClass2 extends SubClass2 {} |
| // ^^^^^^^^^^^^ |
| // pkg/front_end/testcases/no_such_method_forwarders/access_no_nsm_lib.dart:9:8: Context: 'SuperClass.accessibleMethod' is defined here. |
| // void accessibleMethod() {} |
| // ^^^^^^^^^^^^^^^^ |
| // |
| // pkg/front_end/testcases/no_such_method_forwarders/access_no_nsm.dart:27:7: Error: The non-abstract class 'SubAbstractSubClass2' is missing implementations for these members: |
| // - SuperClass.accessibleMethod |
| // Try to either |
| // - provide an implementation, |
| // - inherit an implementation from a superclass or mixin, |
| // - mark the class as abstract, or |
| // - provide a 'noSuchMethod' implementation. |
| // |
| // class SubAbstractSubClass2 extends AbstractSubClass2 {} |
| // ^^^^^^^^^^^^^^^^^^^^ |
| // pkg/front_end/testcases/no_such_method_forwarders/access_no_nsm_lib.dart:9:8: Context: 'SuperClass.accessibleMethod' is defined here. |
| // void accessibleMethod() {} |
| // ^^^^^^^^^^^^^^^^ |
| // |
| import self as self; |
| import "access_no_nsm_lib.dart" as acc; |
| import "dart:core" as core; |
| |
| import "org-dartlang-testcase:///access_no_nsm_lib.dart"; |
| |
| class SubClass1 extends acc::SuperClass { |
| synthetic constructor •() → self::SubClass1 |
| : super acc::SuperClass::•() |
| ; |
| } |
| class SubClass2 extends core::Object implements acc::SuperClass { |
| synthetic constructor •() → self::SubClass2 |
| : super core::Object::•() |
| ; |
| no-such-method-forwarder method _inaccessibleMethod1() → void |
| return throw{for-error-handling} core::NoSuchMethodError::withInvocation(this, new core::_InvocationMirror::_withType(#C1, 0, #C2, #C3, core::Map::unmodifiable<core::Symbol, dynamic>(#C4))); |
| } |
| abstract class _SubClass3&Object&SuperClass = core::Object with acc::SuperClass /*isAnonymousMixin,hasConstConstructor*/ { |
| const synthetic constructor •() → self::_SubClass3&Object&SuperClass |
| : super core::Object::•() |
| ; |
| mixin-super-stub method _inaccessibleMethod1() → void |
| return super.{acc::SuperClass::_inaccessibleMethod1}(); |
| mixin-super-stub method accessibleMethod() → void |
| return super.{acc::SuperClass::accessibleMethod}(); |
| } |
| class SubClass3 extends self::_SubClass3&Object&SuperClass { |
| synthetic constructor •() → self::SubClass3 |
| : super self::_SubClass3&Object&SuperClass::•() |
| ; |
| } |
| class SubSubClass1 extends self::SubClass1 { |
| synthetic constructor •() → self::SubSubClass1 |
| : super self::SubClass1::•() |
| ; |
| } |
| class SubSubClass2 extends self::SubClass2 { |
| synthetic constructor •() → self::SubSubClass2 |
| : super self::SubClass2::•() |
| ; |
| } |
| class SubSubClass3 extends self::SubClass3 { |
| synthetic constructor •() → self::SubSubClass3 |
| : super self::SubClass3::•() |
| ; |
| } |
| abstract class AbstractSubClass1 extends acc::SuperClass { |
| synthetic constructor •() → self::AbstractSubClass1 |
| : super acc::SuperClass::•() |
| ; |
| } |
| abstract class AbstractSubClass2 extends core::Object implements acc::SuperClass { |
| synthetic constructor •() → self::AbstractSubClass2 |
| : super core::Object::•() |
| ; |
| } |
| abstract class _AbstractSubClass3&Object&SuperClass = core::Object with acc::SuperClass /*isAnonymousMixin,hasConstConstructor*/ { |
| const synthetic constructor •() → self::_AbstractSubClass3&Object&SuperClass |
| : super core::Object::•() |
| ; |
| mixin-super-stub method _inaccessibleMethod1() → void |
| return super.{acc::SuperClass::_inaccessibleMethod1}(); |
| mixin-super-stub method accessibleMethod() → void |
| return super.{acc::SuperClass::accessibleMethod}(); |
| } |
| abstract class AbstractSubClass3 extends self::_AbstractSubClass3&Object&SuperClass { |
| synthetic constructor •() → self::AbstractSubClass3 |
| : super self::_AbstractSubClass3&Object&SuperClass::•() |
| ; |
| } |
| class SubAbstractSubClass1 extends self::AbstractSubClass1 { |
| synthetic constructor •() → self::SubAbstractSubClass1 |
| : super self::AbstractSubClass1::•() |
| ; |
| } |
| class SubAbstractSubClass2 extends self::AbstractSubClass2 { |
| synthetic constructor •() → self::SubAbstractSubClass2 |
| : super self::AbstractSubClass2::•() |
| ; |
| no-such-method-forwarder method _inaccessibleMethod1() → void |
| return throw{for-error-handling} core::NoSuchMethodError::withInvocation(this, new core::_InvocationMirror::_withType(#C1, 0, #C2, #C3, core::Map::unmodifiable<core::Symbol, dynamic>(#C4))); |
| } |
| class SubAbstractSubClass3 extends self::AbstractSubClass3 { |
| synthetic constructor •() → self::SubAbstractSubClass3 |
| : super self::AbstractSubClass3::•() |
| ; |
| } |
| |
| library; |
| import self as acc; |
| import "dart:core" as core; |
| |
| import "org-dartlang-testcase:///access_no_nsm.dart"; |
| |
| mixin class SuperClass extends core::Object { |
| synthetic constructor •() → acc::SuperClass |
| : super core::Object::•() |
| ; |
| method _inaccessibleMethod1() → void {} |
| method accessibleMethod() → void {} |
| } |
| |
| constants { |
| #C1 = #org-dartlang-testcase:///access_no_nsm.dart::_inaccessibleMethod1 |
| #C2 = <core::Type>[] |
| #C3 = <dynamic>[] |
| #C4 = <core::Symbol, dynamic>{} |
| } |