blob: 2a1b03e33d9f598232e908a15f3b7047cc89f7b5 [file] [log] [blame]
library;
import self as self;
import "dart:core" as core;
class A extends core::Object {
field dynamic field = null;
synthetic constructor •() self::A
: super core::Object::•()
;
}
class B extends core::Object {
field dynamic field = null;
synthetic constructor •() self::B
: super core::Object::•()
;
}
class C extends core::Object {
synthetic constructor •() self::C
: super core::Object::•()
;
operator ==(dynamic x) core::bool
return false;
}
class X extends core::Object implements self::A, self::B {
field dynamic field = null;
synthetic constructor •() self::X
: super core::Object::•()
;
}
static method useAsA(self::A object) void {
dynamic _ = object.{self::A::field};
}
static method useAsB(self::B object) void {
dynamic _ = object.{self::B::field};
self::escape(object);
}
static method escape(dynamic x) void {
x.{core::Object::==}(null) ?{dynamic} x = "" : null;
x.{core::Object::==}(null) ?{dynamic} x = 45 : null;
if(!(x is core::int) && !(x is core::String)) {
x.field = 45;
}
}
static method main() dynamic {
self::X object = new self::X::•();
self::useAsA(new self::A::•());
self::useAsA(object);
self::useAsB(new self::B::•());
self::useAsB(object);
}