class Base[T]
{
public Foo(x : T) : void {}
}
interface IFace
{
Foo(x : int) : void;
}
class Derived : Base[int], IFace { } /* error : unimplemented
interface method IFace.Foo(x : int) : void (in Derived type) */
Why this does not compile? In C#, it is OK.