On Saturday, 1 December 2012 at 21:28:05 UTC, Walter Bright 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.
I'm still waiting to see an object that implement an interface
but that isn't a class instance.