delegate int Foo (T t); public class Test { public static int Main () { string message = "Hello World!"; Foo foo = (o) => o.GetHashCode (); if (Bar (foo, message) != message.GetHashCode ()) return 1; return 0; } static int Bar (Foo foo, string s) { return foo(s); } }