| library /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| abstract class A extends core::Object { |
| synthetic constructor •() → self::A |
| ; |
| method foo() → self::A |
| ; |
| } |
| abstract class B extends self::A { |
| synthetic constructor •() → self::B |
| ; |
| abstract method foo() → self::B; |
| } |
| class C extends core::Object { |
| synthetic constructor •() → self::C |
| ; |
| method noSuchMethod(core::Invocation _) → dynamic |
| ; |
| } |
| class D extends self::C implements self::B { |
| synthetic constructor •() → self::D |
| ; |
| no-such-method-forwarder method foo() → self::B |
| return this.{self::C::noSuchMethod}(new core::_InvocationMirror::_withType(#foo, 0, const <core::Type*>[], const <dynamic>[], core::Map::unmodifiable<core::Symbol*, dynamic>(const <core::Symbol*, dynamic>{}))){(core::Invocation) → dynamic} as{TypeError,ForDynamic,ForNonNullableByDefault} self::B; |
| } |
| static method main() → dynamic |
| ; |
| |
| |
| Extra constant evaluation status: |
| Evaluated: SymbolLiteral @ org-dartlang-testcase:///abstract_overrides_concrete_with_no_such_method.dart:10:5 -> SymbolConstant(#foo) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///abstract_overrides_concrete_with_no_such_method.dart:10:5 -> ListConstant(const <Type*>[]) |
| Evaluated: ListLiteral @ org-dartlang-testcase:///abstract_overrides_concrete_with_no_such_method.dart:10:5 -> ListConstant(const <dynamic>[]) |
| Evaluated: MapLiteral @ org-dartlang-testcase:///abstract_overrides_concrete_with_no_such_method.dart:10:5 -> MapConstant(const <Symbol*, dynamic>{}) |
| Extra constant evaluation: evaluated: 9, effectively constant: 4 |