blob: f12814757e5855812f81ca7895031b1708cb014d [file] [log] [blame]
library test /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
typedef F<contravariant T extends core::Object? = dynamic> = (T%) void;
typedef G<contravariant T extends core::Object? = dynamic> = () (T%) void;
class C<T extends core::Object? = dynamic> extends core::Object {
field (self::C::T%) void _x;
constructor •((self::C::T%) void _x) self::C<self::C::T%>
: self::C::_x = _x, super core::Object::•()
;
method f() (self::C::T%) void
return this.{self::C::_x}{(self::C::T%) void};
}
static method g(self::C<core::num> c) () (core::num) void {
return c.{self::C::f}{() (core::num) void} as{TypeError,CovarianceCheck,ForNonNullableByDefault} () (core::num) void;
}
static method h(core::int i) void {
core::print("${i}");
}
static method test() void {
() (core::num) void x = self::g(new self::C::•<core::int>(#C1));
}
static method main() void {}
constants {
#C1 = static-tearoff self::h
}