mirror of
https://github.com/dart-lang/sdk
synced 2024-10-14 07:31:43 +00:00
ebb3dea075
R=ahe@google.com, paulberry@google.com, sigmund@google.com BUG= Review-Url: https://codereview.chromium.org/2981783002 .
43 lines
1.1 KiB
Plaintext
43 lines
1.1 KiB
Plaintext
library;
|
|
import self as self;
|
|
import "dart:core" as core;
|
|
|
|
class A extends core::Object {
|
|
default constructor •() → void
|
|
: super core::Object::•()
|
|
;
|
|
}
|
|
class B extends core::Object {
|
|
default constructor •() → void
|
|
: super core::Object::•()
|
|
;
|
|
}
|
|
class AB1 extends self::A implements self::B {
|
|
default constructor •() → void
|
|
: super self::A::•()
|
|
;
|
|
}
|
|
class AB2 extends self::A implements self::B {
|
|
default constructor •() → void
|
|
: super self::A::•()
|
|
;
|
|
}
|
|
class BA1 extends self::B implements self::A {
|
|
default constructor •() → void
|
|
: super self::B::•()
|
|
;
|
|
}
|
|
class BA2 extends self::B implements self::A {
|
|
default constructor •() → void
|
|
: super self::B::•()
|
|
;
|
|
}
|
|
static method takeSubclassOfA(dynamic obj) → dynamic {}
|
|
static method takeSubclassOfB(dynamic obj) → dynamic {}
|
|
static method main() → dynamic {
|
|
self::takeSubclassOfA(new self::AB1::•());
|
|
self::takeSubclassOfA(new self::AB2::•());
|
|
self::takeSubclassOfB(new self::BA1::•());
|
|
self::takeSubclassOfB(new self::BA2::•());
|
|
}
|