class G { public T def () { return default (T); } } class C { delegate void DF (); static DF df; static void foo (object o) { } static void cf () { G g = new G (); df = delegate { foo (g.def ()); }; } public static int Main () { cf (); df (); return 0; } }