Assigning a const instance to an interface implies an implicit cast. Is it acceptable for the const-correctness ??
interface I { void foo(); } class C : I { void foo() { writeln("a"); } } ... C c = new C; I i = c; // ok c.foo(); // ok i.foo(); // ok const C cc = c; I ci = cc; // no error , why ??? // cc.foo(); // compile time error - ok ci.foo(); // const correctness overridden ??? Thanks