using System; class C { static U Test(T[] args, Func f) { return f (args [1]); } public static int Main () { var s = new string [] { "aaa", "bbb" }; var foo = Test (s, i => { try { return i; } catch { return null; } }); if (foo != s [1]) return 1; return 0; } }