1 .assembly extern mscorlib
4 .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
6 .assembly 'generic-mkrefany.2'
8 .custom instance void class [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::'.ctor'() = (
9 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78 // ....T..WrapNonEx
10 63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01 ) // ceptionThrows.
12 .hash algorithm 0x00008004
15 .module 'generic-mkrefany.2.exe' // GUID = {51FFBB77-6AFB-435E-B206-16DB5C8A3730}
18 .class public auto ansi beforefieldinit ClassA
19 extends [mscorlib]System.Object
23 .method public hidebysig specialname rtspecialname
24 instance default void '.ctor' () cil managed
26 // Method begins at RVA 0x20ec
30 IL_0001: call instance void object::'.ctor'()
32 } // end of method ClassA::.ctor
34 } // end of class ClassA
36 .class public sequential ansi sealed beforefieldinit GenStruct`1<T>
37 extends [mscorlib]System.ValueType
39 .field public int32 field1
40 .field public !0 field2
42 } // end of class GenStruct`1
44 .class public auto ansi beforefieldinit Gen`1<T>
45 extends [mscorlib]System.Object
49 .method public hidebysig specialname rtspecialname
50 instance default void '.ctor' () cil managed
52 // Method begins at RVA 0x20f4
56 IL_0001: call instance void object::'.ctor'()
58 } // end of method Gen`1::.ctor
61 .method public hidebysig
62 instance default !T ident (!T t) cil managed
64 // Method begins at RVA 0x20fc
76 } // end of method Gen`1::ident
79 .method public hidebysig
80 instance default valuetype GenStruct`1<!T> structIdent (valuetype GenStruct`1<!T> gst) cil managed
82 // Method begins at RVA 0x210c
86 valuetype GenStruct`1<!T> V_0)
90 mkrefany valuetype GenStruct`1<!0>
91 refanyval valuetype GenStruct`1<!0>
92 ldobj valuetype GenStruct`1<!0>
94 } // end of method Gen`1::structIdent
96 } // end of class Gen`1
98 .class public auto ansi beforefieldinit main
99 extends [mscorlib]System.Object
103 .method public hidebysig specialname rtspecialname
104 instance default void '.ctor' () cil managed
106 // Method begins at RVA 0x211c
110 IL_0001: call instance void object::'.ctor'()
112 } // end of method main::.ctor
115 .method public static hidebysig
116 default int32 Main () cil managed
118 // Method begins at RVA 0x2124
120 // Code size 94 (0x5e)
124 valuetype GenStruct`1<class ClassA> V_1,
125 class Gen`1<class ClassA> V_2,
126 valuetype GenStruct`1<class ClassA> V_3)
127 IL_0000: newobj instance void class ClassA::'.ctor'()
130 IL_0008: ldc.i4.s 0x7b
131 IL_000a: stfld int32 valuetype GenStruct`1<class ClassA>::field1
134 IL_0012: stfld !0 valuetype GenStruct`1<class ClassA>::field2
135 IL_0017: newobj instance void class Gen`1<class ClassA>::'.ctor'()
139 IL_001f: callvirt instance !0 class Gen`1<class ClassA>::ident(!0)
147 IL_002e: callvirt instance valuetype GenStruct`1<!0> class Gen`1<class ClassA>::structIdent(valuetype GenStruct`1<!0>)
150 IL_0036: ldfld int32 valuetype GenStruct`1<class ClassA>::field1
152 IL_003d: ldfld int32 valuetype GenStruct`1<class ClassA>::field1
153 IL_0042: bne.un IL_005a
156 IL_0049: ldfld !0 valuetype GenStruct`1<class ClassA>::field2
158 IL_0050: ldfld !0 valuetype GenStruct`1<class ClassA>::field2
165 } // end of method main::Main
167 } // end of class main