次のコードを検討してください。
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));
}
vararg メソッドの呼び出し (上記のコードDynamicILInfo.GetTokenFor(MethodHandle,RuntimeTypeHandle)
の への呼び出し) では機能しないようです。TestMethodVarArgs
動的メソッドを実行すると、「JIT コンパイラで内部制限が発生しました」という例外が発生します。
これはバグですか?制限?これを回避する方法はありますか?