| library test /*isNonNullableByDefault*/; |
| import self as self; |
| import "dart:core" as core; |
| |
| class C extends core::Object { |
| synthetic constructor •() → self::C |
| : super core::Object::•() |
| ; |
| method f<T extends core::Object? = dynamic>(self::C::f::T% x) → self::C::f::T% |
| return x; |
| static method g<T extends core::Object? = dynamic>(self::C::g::T% x) → self::C::g::T% |
| return x; |
| } |
| class D extends self::C { |
| synthetic constructor •() → self::D |
| : super self::C::•() |
| ; |
| method test() → void { |
| (core::int) → core::int func; |
| func = super.{self::C::f}<core::int>; |
| } |
| } |
| static method f<T extends core::Object? = dynamic>(self::f::T% x) → self::f::T% |
| return x; |
| static method test() → void { |
| function h<T extends core::Object? = dynamic>(T% x) → T% |
| return x; |
| (core::int) → core::int func; |
| func = #C2; |
| func = new self::C::•().{self::C::f}{<T extends core::Object? = dynamic>(T%) → T%}<core::int>; |
| func = #C4; |
| func = h<core::int>; |
| } |
| static method main() → dynamic {} |
| |
| constants { |
| #C1 = static-tearoff self::f |
| #C2 = instantiation #C1 <core::int*> |
| #C3 = static-tearoff self::C::g |
| #C4 = instantiation #C3 <core::int*> |
| } |