using System; using System.Collections.Generic; interface I { } class A { static void Foo (T a, IList c) { } public static void Test () { Foo ("aaaa", new object[0]); } } class B { static void Foo (T a, I c) { } static void Test (U u, I x) { Foo (u, x); } } class M { public static int Main () { return 0; } }