class A ['a] where 'a : System.IComparable ['a], System.IComparable ['a] { // E: constraint `System.IComparable.*' is already declared for 'a } namespace Bug1048 { using System; class RefTypeA {} class RefTypeB {} struct StructType {} class Test1[T1] where T1 : Object, Int32 {} // E: generic parameter cannot be constrained by multiple non-interfaces : int, System.Object class Test2[T1] where T1 : Object, StructType {} // E: generic parameter cannot be constrained by multiple non-interfaces : Bug1048.StructType, System.Object class Test3[T1] where T1 : RefTypeA, RefTypeB {} // E: generic parameter cannot be constrained by multiple non-interfaces : Bug1048.RefTypeB, Bug1048.RefTypeA }