using System;
public static class Test
{
public class ClassA { }
public class ClassB { }
public static void method< T> ( T objA) where T : ClassA {
Console.WriteLine ( "MethodA" ) ;
}
public static void method< T> ( T objB) where T : ClassB {
Console.WriteLine ( "MethodB" ) ;
}
public static void Main( )
{
ClassA obja = new ClassA( ) ;
ClassB objb = new ClassB( ) ;
method( obja) ;
method( objb) ;
}
}
dXNpbmcgU3lzdGVtOwoKcHVibGljIHN0YXRpYyBjbGFzcyBUZXN0CnsKCXB1YmxpYyBjbGFzcyBDbGFzc0Ege30KCXB1YmxpYyBjbGFzcyBDbGFzc0Ige30KCQoJcHVibGljIHN0YXRpYyB2b2lkIG1ldGhvZDxUPihUIG9iakEpIHdoZXJlIFQgOiBDbGFzc0EgewoJCUNvbnNvbGUuV3JpdGVMaW5lKCJNZXRob2RBIik7Cgl9CgkKCXB1YmxpYyBzdGF0aWMgdm9pZCBtZXRob2Q8VD4oVCBvYmpCKSB3aGVyZSBUIDogQ2xhc3NCIHsKCQlDb25zb2xlLldyaXRlTGluZSgiTWV0aG9kQiIpOwoJfQoJCglwdWJsaWMgc3RhdGljIHZvaWQgTWFpbigpCgl7CgkJQ2xhc3NBIG9iamEgPSBuZXcgQ2xhc3NBKCk7CgkJQ2xhc3NCIG9iamIgPSBuZXcgQ2xhc3NCKCk7CgkJCgkJbWV0aG9kKG9iamEpOwoJCW1ldGhvZChvYmpiKTsKCX0KfQ==
compilation info
prog.cs(12,21): error CS0111: A member `Test.method<T>(T)' is already defined. Rename this member or use different parameter types
prog.cs(8,21): (Location of the symbol related to previous error)
Compilation failed: 1 error(s), 0 warnings
stdout