interface I { } interface IB : I { } struct S { class P { } public class C : IB

{ } } class M { static void Test (I iface) { } static void Test (IB iface) { } static void Main () { Test (new S.C ()); } }