https://bugzilla.novell.com/show_bug.cgi?id=475962
User [email protected] added comment https://bugzilla.novell.com/show_bug.cgi?id=475962#c3 Amir Shimoni <[email protected]> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |[email protected] --- Comment #3 from Amir Shimoni <[email protected]> 2009-02-14 10:23:54 MST --- It might not be the same bug exactly (or not even a bug at all), but to make the csc compiler version fail on mono (and not on MS.net), change the last line to t(null); // instead of t(p); This creates a delegate with a null target, but works on MS.net. But it fails on mono with the exact same exception as the original version (with t(p)). This leads to a discrepancy between Mono and MS.net. MS.net allows you to create and execute a delegate on a non-static method with a null target as long as you don't access "this" inside the method. Mono doesn't even let you create the delegate with a null target. I don't think this is necessarily bad, but I think the exception should be a little more specific. Here's a sample that still generates the same exception as above: (Is this a MS.net bug?) using System; namespace MonoBug { class Program { public void testFunc() {} static void Main() { var mi = typeof (Program).GetMethod("testFunc"); Action a = (Action) Delegate.CreateDelegate( typeof (Action), null, mi); a(); } } } And here's the exception it throws on Mono. Unhandled Exception: System.ArgumentException: method argument length mismatch at System.Delegate.CreateDelegate (System.Type type, System.Object firstArgument, System.Reflection.MethodInfo method, Boolean throwOnBindFailure) [0x00266] in /mnt/photos1/dist/monosvn/mcs/class/corlib/System/Delegate.cs:259 at System.Delegate.CreateDelegate (System.Type type, System.Object firstArgument, System.Reflection.MethodInfo method) [0x00000] in /mnt/photos1/dist/monosvn/mcs/class/corlib/System/Delegate.cs:263 at MonoBug.Program.Main () [0x00015] in /tmp/test1/test2.cs:12 -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
