blob: 14f8b14306ffd943c71dd1d4b813d6925c3a8015 [file] [log] [blame]
library test;
import self as self;
import "dart:core" as core;
abstract class I1 extends core::Object {
synthetic constructor •() self::I1*
: super core::Object::•()
;
abstract method f(core::int* i) void;
}
abstract class I2 extends core::Object {
synthetic constructor •() self::I2*
: super core::Object::•()
;
abstract method f(core::Object* o) void;
}
abstract class C extends core::Object implements self::I1, self::I2 {
synthetic constructor •() self::C*
: super core::Object::•()
;
abstract forwarding-stub method f(core::Object* o) void;
}
class D extends self::C {
synthetic constructor •() self::D*
: super self::C::•()
;
method f(core::Object* o) void {}
}
abstract class E extends core::Object implements self::I2, self::I1 {
synthetic constructor •() self::E*
: super core::Object::•()
;
}
class F extends self::E {
synthetic constructor •() self::F*
: super self::E::•()
;
method f(core::Object* o) void {}
}
static method g1(self::C* c) void {
c.f("hi");
}
static method g2(self::E* e) void {
e.f("hi");
}
static method main() dynamic {
self::g1(new self::D::•());
self::g2(new self::F::•());
}