[Mono-bugs] [Bug 463323] Bug with delegates to dynamic methods

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Sat Feb 14 12:01:39 EST 2009


User jan.oravec at 6com.sk added comment

--- Comment #16 from Jan Oravec <jan.oravec at 6com.sk>  2009-02-14 10:01:39 MST ---
Not sure if this is the test case triggering the bug we are looking for, but it
is heavily related and can cause similar crashes.

Crashes even with both runtime invoke caches completely removed from Mono:

using System;
using System.Linq.Expressions;

class M
  public static void Main ()
    Expression<Func<int>> f1 = () => 47;
    Expression<Func<int, int, int>> f2 = (a, b) => a + b;

    while (true)
      Console.Write ("x");

      f1.Compile ().DynamicInvoke (null);
      f2.Compile ().DynamicInvoke (2, 3);

$ ./x.exe 
Unhandled Exception: System.Reflection.TargetParameterCountException: Number of
parameter does not match expected count.
  at System.Reflection.Binder.ConvertArgs (System.Reflection.Binder binder,
System.Object[] args, System.Reflection.ParameterInfo[] pinfo,
System.Globalization.CultureInfo culture) [0x00000] 
  at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags
invokeAttr, System.Reflection.Binder binder, System.Object[] parameters,
System.Globalization.CultureInfo culture) [0x00000] 
  at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[]
parameters) [0x00000] 
  at System.Delegate.DynamicInvokeImpl (System.Object[] args) [0x00000] 
  at System.MulticastDelegate.DynamicInvokeImpl (System.Object[] args)
  at System.Delegate.DynamicInvoke (System.Object[] args) [0x00000] 
  at M.Main () [0x00000]

Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.

More information about the mono-bugs mailing list