// CS031: The type `B' cannot be used as type parameter `T' in the generic type or method `Foo'. There is no implicit reference conversion from `B' to `I' // Line: 21 public class Foo where T : A, I { } public interface I { } public class A { } public class B : A { } class X { Foo foo; static void Main () { } }