C# DynamicILInfo.getToken(MethodHandle,RuntimeTypeHandle)不适用于vararg方法调用

C# DynamicILInfo.getToken(MethodHandle,RuntimeTypeHandle)不适用于vararg方法调用,c#,.net,clr,dynamicmethod,dynamic-method,C#,.net,Clr,Dynamicmethod,Dynamic Method,考虑以下代码: static public void TestMethodVarArgs(__arglist) { ArgIterator iterator = new ArgIterator(__arglist); Console.WriteLine(iterator.GetRemainingCount()); } static void Main(string[] args) { TestMethodV

考虑以下代码:

    static public void TestMethodVarArgs(__arglist)
    {
        ArgIterator iterator = new ArgIterator(__arglist);
        Console.WriteLine(iterator.GetRemainingCount());
    }

    static void Main(string[] args)
    {
        TestMethodVarArgs(__arglist(2, "asas", 55.0));
    }
在上面的代码中,DynamicILInfo.GetTokenForMethodHandle、RuntimeTypeHandle似乎不适用于vararg方法调用TestMethodVarArgs。如果我执行动态方法,它会使JIT编译器遇到内部限制异常


这是虫子吗?限制有办法解决这个问题吗?

您能告诉我们调用GetToken的代码吗?还有,你为什么还要用vararg?使用params object[]args不是比使用编译器的未记录功能更好吗?@svick-代码非常复杂,因此我无法将其作为复制案例进行隔离。另外,我知道params,但这个问题是varargs:-