// Compiler options: -r:test-anon-158-lib.dll using System; public class Test { public X Foo (bool b) { Call foo = new Call (); if (b) { Func f = () => foo.Field; return f (); } throw null; } public X FooNested (bool b) { Call> foo = new Call> (); foo.Field = new Call (); if (b) { Func> f = () => foo.Field; return f ().Field; } throw null; } public static int Main () { var v = new Test (); if (v.Foo(true) != 0) return 1; if (v.FooNested(true) != 0) return 2; return 0; } }