What's the logic in this behavior?


On Sun, Dec 2, 2012 at 1:28 AM, Walter Bright <newshound2@digitalmars.com> wrote:
On 11/30/2012 9:04 PM, Gor Gyolchanyan wrote:
interface I { }
class C: I { }

I object = new C;
assert(typeid(object) == typeid(C)); // fails

Is this normal or is it a bug?

Normal, since the typeids of interfaces are not the same as for classes.


Note, that the same works fine in case of a base class, rather then an
interface.

That works, because classes are classes. Classes are not interfaces.






--
Bye,
Gor Gyolchanyan.