Hello!

import std.stdio;

interface I {
        
}

interface B : I {
        void test();
}

interface C : I {
        void test1();
}

class A : B, C {
  override void test() {}
  override void test1() {}
}

void main() {
        A a = new A();
        I b = cast(B)a;
        I c = cast(C)a;

writeln(cast(void*)a, " ", cast(void*)b, " ", cast(void*)c); // 1EE1FE0 1EE1FE8 1EE1FEC

assert (a is b); // OK
assert (a is c); // FAIL WHY????
        
}

Reply via email to