BCS wrote:
Reply to Tomas,

The problem is that B has two vtables that implement the interface I.
However, in A.addChild, i.parent get's the first one (introduced by
A), and in main, it gets the second one (J , which derived from I).
The identity check then fails because the pointers aren't the same,
even though it's the same object in question.

why not make
 Ia == Ib
into
 cast(Object)Ia == cast(Object)Ib
?

That makes sense, and I fully support it. I tend to use interfaces rather often, and anything to improve support for them is good.

Reply via email to