blob: db6c80a9d1501c274c2b156bcc026125a1ff1805 [file] [log] [blame]
library test;
import self as self;
import "dart:core" as core;
typedef F<contravariant T extends core::Object* = dynamic> = (T*) →* dynamic;
class C extends core::Object {
synthetic constructor •() self::C*
: super core::Object::•()
;
method f(core::num* x) void {}
}
class D extends self::C {
synthetic constructor •() self::D*
: super self::C::•()
;
method f(covariant core::int* x) void {}
}
class E extends self::D {
synthetic constructor •() self::E*
: super self::D::•()
;
method f(covariant core::int* x) void {}
}
static method g1(self::C* c) void {
c.{self::C::f}(1.5);
}
static method g2(self::C* c) (core::num*) →* dynamic {
return c.{self::C::f};
}
static method test() dynamic {
self::g1(new self::D::•());
(core::num*) →* dynamic x = self::g2(new self::D::•());
}
static method main() dynamic {}