// Test: Use of !!A, gen param ref by name in method signature, // or in constraints .assembly extern mscorlib { .ver 2:0:0:0 } .assembly 'gen-meth1' { .custom instance void class [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::.ctor() = ( 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78 // ....T..WrapNonEx 63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01 ) // ceptionThrows. .ver 0:0:0:0 } .module meth1.dll .class interface private auto ansi abstract IFoo`1 { } .class private auto ansi beforefieldinit g`1 extends [mscorlib]System.Object { .method public hidebysig specialname rtspecialname instance default void .ctor () cil managed { .maxstack 8 IL_0000: ldarg.0 IL_0001: call instance void object::.ctor() IL_0006: ret } .method public static hidebysig default !!A foo<(class g`1)A,B> (!!B _b, !T _t, !!A _a) cil managed { .maxstack 1 .locals init ( !!A V_0) IL_0000: ldloca.s 0 IL_0002: initobj !!0 IL_0008: ldloc.0 IL_0009: ret } .method public static hidebysig default void meth1 () cil managed { .maxstack 4 .locals init ( !T V_0, !T[] V_1) IL_0000: ldtoken !T IL_0005: call class [mscorlib]System.Type class [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle) IL_000a: call object class [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type) IL_000f: unbox.any !0 IL_0014: stloc.0 IL_0015: ldc.i4.5 IL_0016: newarr !0 IL_001b: stloc.1 IL_001c: ret } }