You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This test reproduces the issue where DynamicMethodDefinition generators ignore modified parameters when an OriginalMethod is present. The test verifies that after adding parameters to a DMD definition, the generated methods should work with the new parameter signature across different generators (cecil, dynamicmethod, methodbuilder).
System.ArgumentNullException : Value cannot be null. (Parameter 'declaringType')
Stack trace:
at Mono.Cecil.Mixin.CheckType(Object type, Argument argument)
at Mono.Cecil.MethodReference..ctor(String name, TypeReference returnType, TypeReference declaringType)
at MonoMod.Utils.Extensions.Relink(MethodReference method, Relinker relinker, IGenericParameterProvider context) in /_/src/MonoMod.Utils/Extensions.Relinker.cs:line 390
at MonoMod.Utils.Extensions.Relink(IMetadataTokenProvider mtp, Relinker relinker, IGenericParameterProvider context) in /_/src/MonoMod.Utils/Extensions.Relinker.cs:line 257
at MonoMod.Utils.DMDCecilGenerator.GenerateCore(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerators/DMDCecilGenerator.cs:line 115
at MonoMod.Utils.DMDGenerator`1.Generate(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerator.cs:line 29
at MonoMod.Utils.DynamicMethodDefinition.Generate(Object context) in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 223
at MonoMod.Utils.DynamicMethodDefinition.Generate() in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 208
at MonoMod.RuntimeDetour.DetourManager.GenerateSyncProxy(String innerName, MethodSignature Sig, Action`2 emitLoadSyncInfo, Action`3 emitInvoke, Action`3 emitLastCallReturn) in /_/src/MonoMod.RuntimeDetour/DetourManager.Shared.cs:line 429
at MonoMod.RuntimeDetour.DetourManager.RootManagedChainNode..ctor(MethodBase method) in /_/src/MonoMod.RuntimeDetour/DetourManager.Managed.cs:line 182
at MonoMod.RuntimeDetour.DetourManager.ManagedDetourState..ctor(MethodBase src) in /_/src/MonoMod.RuntimeDetour/DetourManager.Managed.cs:line 296
at MonoMod.RuntimeDetour.DetourManager.<>c.<GetDetourState>b__10_0(MethodBase m) in /_/src/MonoMod.RuntimeDetour/DetourManager.Managed.cs:line 751
at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
at MonoMod.RuntimeDetour.DetourManager.GetDetourState(MethodBase method) in /_/src/MonoMod.RuntimeDetour/DetourManager.Managed.cs:line 751
at MonoMod.RuntimeDetour.ILHook..ctor(MethodBase method, Manipulator manipulator, IDetourFactory factory, DetourConfig config, Boolean applyByDefault) in /_/src/MonoMod.RuntimeDetour/ILHook.cs:line 183
at MonoMod.UnitTest.AssemblyLoadContextHookTest.TestILHookReferences(Type baseLoaderType, Type type) in /_/src/MonoMod.UnitTest/RuntimeDetour/AssemblyLoadContextHookTest.cs:line 247
at MonoMod.UnitTest.AssemblyLoadContextHookTest.TestAssemblyLoadContextHookLoaded(Object loader, Int32 id1, Int32 id2, Boolean canCollect) in /_/src/MonoMod.UnitTest/RuntimeDetour/AssemblyLoadContextHookTest.cs:line 213
at System.RuntimeMethodHandle.InvokeMethod(ObjectHandleOnStack target, Void** arguments, ObjectHandleOnStack sig, BOOL isConstructor, ObjectHandleOnStack result)
at System.RuntimeMethodHandle.InvokeMethod(ObjectHandleOnStack target, Void** arguments, ObjectHandleOnStack sig, BOOL isConstructor, ObjectHandleOnStack result)
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InterpretedInvoke_Method(Object obj, IntPtr* args)
at System.Reflection.MethodBaseInvoker.InvokeDirectByRefWithFewArgs(Object obj, Span`1 copyOfArgs, BindingFlags invokeAttr)
Test Standard Output has been omitted because it is too long.
test-results .NET 10.0 arm64 on Linux ARM64 (PGO Off)/TestResults/testresults.ubuntu-24.04-arm.10.0.arm64.trx
test-results .NET 10.0 x64 on Windows (PGO Off)/TestResults/testresults.windows-latest.10.0.x64.trx
test-results .NET 6.0 x64 on MacOS 14 (PGO On)/TestResults/testresults.macos-14.6.0.x64.trx
test-results .NET 6.0 x86 on Windows (PGO Off)/TestResults/testresults.windows-latest.6.0.x86.trx
test-results .NET 7.0 x64 on Linux (PGO Off)/TestResults/testresults.ubuntu-latest.7.0.x64.trx
test-results .NET 7.0 x64 on Linux musl (PGO Off)/TestResults/testresults.ubuntu-latest.7.0.x64.trx
test-results .NET 8.0 x64 on MacOS 15 Intel (PGO Off)/TestResults/testresults.macos-15-intel.8.0.x64.trx and 5 more
Exception message:
Assert.NotNull() Failure
Stack trace:
at DMD<System.Void MonoMod.UnitTest.AssemblyLoadContextHookTest:TestStaticMethod(MonoMod.UnitTest.AssemblyLoadContextHookTest, System.Int32, System.Int32)>(AssemblyLoadContextHookTest loader, Int32 id1, Int32 id2)
at MonoMod.UnitTest.AssemblyLoadContextHookTest.TestStaticMethodTarget(Action`3 orig, Object loader, Int32 id1, Int32 id2) in /_/src/MonoMod.UnitTest/RuntimeDetour/AssemblyLoadContextHookTest.cs:line 219
at MonoMod.UnitTest.AssemblyLoadContextHookTest.<>c.<TestAssemblyLoadContextHookLoaded>b__10_5(Action`3 orig, Object hloader, Int32 hid1, Int32 hid2) in /_/src/MonoMod.UnitTest/RuntimeDetour/AssemblyLoadContextHookTest.cs:line 174
at DMD<>?11153093.Hook<System.Void MonoMod.UnitTest.AssemblyLoadContextHookTest/<>c::<TestAssemblyLoadContextHookLoaded>b__10_5(System.Action`3[[System.Object, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Int32, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Int32, System.Private.CoreLib, Version=10.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]],System.Object,System.Int32,System.Int32)>(AssemblyLoadContextHookTest, Int32, Int32)
at SyncProxy<System.Void MonoMod.UnitTest.AssemblyLoadContextHookTest:TestStaticMethod(MonoMod.UnitTest.AssemblyLoadContextHookTest, System.Int32, System.Int32)>(AssemblyLoadContextHookTest , Int32 , Int32 )
at InvokeStub_AssemblyLoadContextHookTest.TestStaticMethod(Object, Span`1)
at System.Reflection.MethodBaseInvoker.InvokeWithFewArgs(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)
Test Standard Output has been omitted because it is too long.
❌ test-results .NET 10.0 x86 on Windows (PGO Off)/TestResults/testresults.windows-latest.10.0.x86.trx MonoMod.UnitTest.AssemblyLoadContextHookTest.TestAssemblyLoadContextHook
Took 00:00:01.5951129
Failure also present in
test-results .NET 8.0 x64 on Linux (PGO Off)/TestResults/testresults.ubuntu-latest.8.0.x64.trx
test-results .NET 10.0 arm64 on Linux ARM64 (PGO Off)/TestResults/testresults.ubuntu-24.04-arm.10.0.arm64.trx
test-results .NET 10.0 arm64 on Linux ARM64 (PGO On)/TestResults/testresults.ubuntu-24.04-arm.10.0.arm64.trx
test-results .NET 10.0 arm64 on MacOS 14 (PGO Off)/TestResults/testresults.macos-14.10.0.arm64.trx
test-results .NET 10.0 arm64 on MacOS 14 (PGO On)/TestResults/testresults.macos-14.10.0.arm64.trx
test-results .NET 10.0 arm64 on MacOS 15 (PGO Off)/TestResults/testresults.macos-15.10.0.arm64.trx
test-results .NET 10.0 arm64 on MacOS 15 (PGO On)/TestResults/testresults.macos-15.10.0.arm64.trx
test-results .NET 10.0 x64 on Linux (PGO Off)/TestResults/testresults.ubuntu-latest.10.0.x64.trx and 111 more
Exception message:
System.ArgumentOutOfRangeException : Specified argument was out of the range of valid values. (Parameter 'The specified parameter index is not in range.')
Stack trace:
at System.Reflection.Emit.DynamicMethod.DefineParameter(Int32 position, ParameterAttributes attributes, String parameterName)
at MonoMod.Utils._DMDEmit.Generate(DynamicMethodDefinition dmd, MethodBase _mb, ILGenerator il)
at MonoMod.Utils.DMDEmitDynamicMethodGenerator.GenerateCore(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerators/DMDEmitDynamicMethodGenerator.cs:line 86
at MonoMod.Utils.DMDGenerator`1.Generate(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerator.cs:line 29
at MonoMod.Utils.DynamicMethodDefinition.Generate(Object context) in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 218
at MonoMod.Utils.DynamicMethodDefinition.Generate() in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 208
at MonoMod.UnitTest.Github.Issue282.<DMDGenerateDoesNotOverrideParameters>g__Test|1_1(String dmdtype, <>c__DisplayClass1_0& ) in /_/src/MonoMod.UnitTest/Github/Issue282.cs:line 44
at MonoMod.UnitTest.Github.Issue282.DMDGenerateDoesNotOverrideParameters() in /_/src/MonoMod.UnitTest/Github/Issue282.cs:line 33
❌ test-results .NET Framework 4.x x86 on Windows/TestResults/testresults.windows-latest.fx.x86.trx MonoMod.UnitTest.Github.Issue282.DMDGenerateDoesNotOverrideParameters
Took 00:00:00.0190000
Failure also present in
test-results .NET Core 2.1 x64 on Linux/TestResults/testresults.ubuntu-latest.2.1.x64.trx
test-results .NET Core 2.1 x64 on MacOS 14/TestResults/testresults.macos-14.2.1.x64.trx
test-results .NET Core 2.1 x64 on MacOS 15 Intel/TestResults/testresults.macos-15-intel.2.1.x64.trx
test-results .NET Core 2.1 x64 on MacOS 15/TestResults/testresults.macos-15.2.1.x64.trx
test-results .NET Core 2.1 x64 on Windows/TestResults/testresults.windows-latest.2.1.x64.trx
test-results .NET Core 2.1 x86 on Windows/TestResults/testresults.windows-latest.2.1.x86.trx
test-results .NET Framework 4.x x64 on Windows/TestResults/testresults.windows-latest.fx.x64.trx
Exception message:
System.ArgumentOutOfRangeException : Specified argument was out of the range of valid values.
Parameter name: The specified parameter index is not in range.
Stack trace:
at System.Reflection.Emit.DynamicMethod.DefineParameter(Int32 position, ParameterAttributes attributes, String parameterName)
at MonoMod.Utils._DMDEmit.Generate(DynamicMethodDefinition dmd, MethodBase _mb, ILGenerator il) in /_/src/MonoMod.Utils/DMDGenerators/DMDEmit.cs:line 47
at MonoMod.Utils.DMDEmitDynamicMethodGenerator.GenerateCore(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerators/DMDEmitDynamicMethodGenerator.cs:line 84
at MonoMod.Utils.DMDGenerator`1.Generate(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerator.cs:line 29
at MonoMod.Utils.DynamicMethodDefinition.Generate(Object context) in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 215
at MonoMod.UnitTest.Github.Issue282.<DMDGenerateDoesNotOverrideParameters>g__Test|1_1(String dmdtype, <>c__DisplayClass1_0& ) in /_/src/MonoMod.UnitTest/Github/Issue282.cs:line 44
at MonoMod.UnitTest.Github.Issue282.DMDGenerateDoesNotOverrideParameters() in /_/src/MonoMod.UnitTest/Github/Issue282.cs:line 33
Test Standard Output
[MonoMod.UnitTest](2/9/2026 8:36:42 AM) Info: ------------- TEST BEGIN -------------
[MonoMod.Utils](2/9/2026 8:36:42 AM) Trace: new DynamicMethod: System.Int32 DMD<System.Int32 MonoMod.UnitTest.Github.Issue282:<DMDGenerateDoesNotOverrideParameters>g__func|1_0(System.Int32)>(System.Int32)
[MonoMod.Utils](2/9/2026 8:36:42 AM) Trace: orig: System.Int32 MonoMod.UnitTest.Github.Issue282:<DMDGenerateDoesNotOverrideParameters>g__func|1_0(System.Int32)
[MonoMod.Utils](2/9/2026 8:36:42 AM) Trace: mdef: System.Int32 DMD<System.Int32 MonoMod.UnitTest.Github.Issue282:<DMDGenerateDoesNotOverrideParameters>g__func|1_0(System.Int32)>(System.Int32,System.Int32)
[MonoMod.UnitTest](2/9/2026 8:36:42 AM) Info: -------------- TEST END --------------
❌ test-results System Mono on Linux musl/testresults.ubuntu-latest.sysmono.x64.xml MonoMod.UnitTest.Github.Issue282.DMDGenerateDoesNotOverrideParameters
Took 00:00:00.1200450
Failure also present in
test-results System Mono on Linux ARM64/testresults.ubuntu-24.04-arm.sysmono.arm64.xml
test-results System Mono on Linux/testresults.ubuntu-latest.sysmono.x64.xml
test-results System Mono on MacOS 14/testresults.macos-14.sysmono.arm64.xml
test-results System Mono on MacOS 15 Intel/testresults.macos-15-intel.sysmono.x64.xml
test-results System Mono on MacOS 15/testresults.macos-15.sysmono.arm64.xml
Exception message:
System.ArgumentOutOfRangeException : Specified argument was out of the range of valid values.
Parameter name: position
Stack trace:
at System.Reflection.Emit.DynamicMethod.DefineParameter (System.Int32 position, System.Reflection.ParameterAttributes attributes, System.String parameterName) [0x0000f] in <19a0624062f54e9b8fd511dada6aca82>:0
at MonoMod.Utils._DMDEmit.Generate (MonoMod.Utils.DynamicMethodDefinition dmd, System.Reflection.MethodBase _mb, System.Reflection.Emit.ILGenerator il) [0x000db] in <5ff81c27f9e140f287d6a97dd1212ff1>:0
at MonoMod.Utils.DMDEmitDynamicMethodGenerator.GenerateCore (MonoMod.Utils.DynamicMethodDefinition dmd, System.Object context) [0x00342] in <5ff81c27f9e140f287d6a97dd1212ff1>:0
at MonoMod.Utils.DMDGenerator`1[TSelf].Generate (MonoMod.Utils.DynamicMethodDefinition dmd, System.Object context) [0x00013] in <5ff81c27f9e140f287d6a97dd1212ff1>:0
at MonoMod.Utils.DynamicMethodDefinition.Generate (System.Object context) [0x00037] in <5ff81c27f9e140f287d6a97dd1212ff1>:0
at MonoMod.Utils.DynamicMethodDefinition.Generate () [0x00000] in <5ff81c27f9e140f287d6a97dd1212ff1>:0
at MonoMod.UnitTest.Github.Issue282.<DMDGenerateDoesNotOverrideParameters>g__Test|1_1 (System.String dmdtype, MonoMod.UnitTest.Github.Issue282+<>c__DisplayClass1_0& ) [0x0000b] in <afa108f2fe17401a893aab6c7fed5933>:0
at MonoMod.UnitTest.Github.Issue282.DMDGenerateDoesNotOverrideParameters () [0x000bd] in <afa108f2fe17401a893aab6c7fed5933>:0
at (wrapper managed-to-native) System.Reflection.RuntimeMethodInfo.InternalInvoke(System.Reflection.RuntimeMethodInfo,object,object[],System.Exception&)
at System.Reflection.RuntimeMethodInfo.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x0006a] in <19a0624062f54e9b8fd511dada6aca82>:0
test-results .NET 10.0 x64 on Linux (PGO On)/TestResults/testresults.ubuntu-latest.10.0.x64.trx
Exception message:
System.ArgumentNullException : Value cannot be null. (Parameter 'declaringType')
Stack trace:
at Mono.Cecil.Mixin.CheckType(Object type, Argument argument)
at Mono.Cecil.MethodReference..ctor(String name, TypeReference returnType, TypeReference declaringType)
at MonoMod.Utils.Extensions.Relink(MethodReference method, Relinker relinker, IGenericParameterProvider context) in /_/src/MonoMod.Utils/Extensions.Relinker.cs:line 390
at MonoMod.Utils.Extensions.Relink(IMetadataTokenProvider mtp, Relinker relinker, IGenericParameterProvider context) in /_/src/MonoMod.Utils/Extensions.Relinker.cs:line 257
at MonoMod.Utils.DMDCecilGenerator.GenerateCore(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerators/DMDCecilGenerator.cs:line 115
at MonoMod.Utils.DMDGenerator`1.Generate(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerator.cs:line 29
at MonoMod.Utils.DynamicMethodDefinition.Generate(Object context) in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 223
at MonoMod.Utils.DynamicMethodDefinition.Generate() in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 208
at MonoMod.UnitTest.ILPatternMatcherTests.ILMatcherDoesNotThrowMatchingDynamicMethodRef() in /_/src/MonoMod.UnitTest/ILPatternMatcherTests.cs:line 44
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
Test Standard Output
[MonoMod.Utils](2/9/2026 8:49:45AM) Trace: new DynamicMethod: System.Void Test DM 1()
[MonoMod.Utils](2/9/2026 8:49:45AM) Trace: mdef: System.Void Test DM 1()
❌ MonoMod.UnitTest.ManualMultiHookTest.H1HILH2
Class Name: MonoMod.UnitTest.ManualMultiHookTest | Method Name: H1HILH2 | This test is sometimes failing.
Failures present in
test-results .NET 7.0 arm64 on MacOS 14 (PGO Off)/TestResults/testresults.macos-14.7.0.arm64.trx
System.ArgumentNullException : Value cannot be null. (Parameter 'declaringType')
Stack trace:
at Mono.Cecil.Mixin.CheckType(Object type, Argument argument)
at Mono.Cecil.MethodReference..ctor(String name, TypeReference returnType, TypeReference declaringType)
at MonoMod.Utils.Extensions.Relink(MethodReference method, Relinker relinker, IGenericParameterProvider context) in /_/src/MonoMod.Utils/Extensions.Relinker.cs:line 390
at MonoMod.Utils.Extensions.Relink(IMetadataTokenProvider mtp, Relinker relinker, IGenericParameterProvider context) in /_/src/MonoMod.Utils/Extensions.Relinker.cs:line 257
at MonoMod.Utils.DMDCecilGenerator.GenerateCore(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerators/DMDCecilGenerator.cs:line 115
at MonoMod.Utils.DMDGenerator`1.Generate(DynamicMethodDefinition dmd, Object context) in /_/src/MonoMod.Utils/DMDGenerator.cs:line 29
at MonoMod.Utils.DynamicMethodDefinition.Generate(Object context) in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 223
at MonoMod.Utils.DynamicMethodDefinition.Generate() in /_/src/MonoMod.Utils/DynamicMethodDefinition.cs:line 208
at MonoMod.RuntimeDetour.DetourManager.GenerateSyncProxy(String innerName, MethodSignature Sig, Action`2 emitLoadSyncInfo, Action`3 emitInvoke, Action`3 emitLastCallReturn) in /_/src/MonoMod.RuntimeDetour/DetourManager.Shared.cs:line 429
at MonoMod.RuntimeDetour.DetourManager.RootManagedChainNode..ctor(MethodBase method) in /_/src/MonoMod.RuntimeDetour/DetourManager.Managed.cs:line 182
at MonoMod.RuntimeDetour.DetourManager.ManagedDetourState..ctor(MethodBase src) in /_/src/MonoMod.RuntimeDetour/DetourManager.Managed.cs:line 296
at MonoMod.RuntimeDetour.DetourManager.<>c.<GetDetourState>b__10_0(MethodBase m) in /_/src/MonoMod.RuntimeDetour/DetourManager.Managed.cs:line 751
at System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory)
at MonoMod.RuntimeDetour.DetourManager.GetDetourState(MethodBase method) in /_/src/MonoMod.RuntimeDetour/DetourManager.Managed.cs:line 751
at MonoMod.RuntimeDetour.Hook..ctor(MethodBase source, MethodInfo target, Object targetObject, IDetourFactory factory, DetourConfig config, Boolean applyByDefault) in /_/src/MonoMod.RuntimeDetour/Hook.cs:line 566
at MonoMod.RuntimeDetour.Hook..ctor(MethodBase source, Delegate target, IDetourFactory factory, DetourConfig config, Boolean applyByDefault) in /_/src/MonoMod.RuntimeDetour/Hook.cs:line 432
at MonoMod.RuntimeDetour.Hook..ctor(MethodBase source, Delegate target, DetourConfig config, Boolean applyByDefault) in /_/src/MonoMod.RuntimeDetour/Hook.cs:line 420
at MonoMod.RuntimeDetour.Hook..ctor(MethodBase source, Delegate target, Boolean applyByDefault) in /_/src/MonoMod.RuntimeDetour/Hook.cs:line 359
at MonoMod.UnitTest.ManualMultiHookTest.Setup() in /_/src/MonoMod.UnitTest/RuntimeDetour/MultiHookTest.cs:line 35
at MonoMod.UnitTest.ManualMultiHookTest.H1HILH2() in /_/src/MonoMod.UnitTest/RuntimeDetour/MultiHookTest.cs:line 209
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodInvoker.Invoke(Object obj, IntPtr* args, BindingFlags invokeAttr)
Test Standard Output has been omitted because it is too long.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This test reproduces the issue where DynamicMethodDefinition generators ignore modified parameters when an OriginalMethod is present. The test verifies that after adding parameters to a DMD definition, the generated methods should work with the new parameter signature across different generators (cecil, dynamicmethod, methodbuilder).
Test for #282.