1 .assembly extern mscorlib
4 .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
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 bla.exe // GUID = {B0BB2CAE-B57B-48F6-BDD2-2B93A6A7F57F}
18 .class interface public auto ansi abstract IGen`1<IGenT>
22 .method public virtual hidebysig newslot abstract
23 instance default int32 bla () cil managed
25 // Method begins at RVA 0x0
26 } // end of method IGen`1::bla
28 } // end of class IGen`1
30 .class public sequential ansi sealed beforefieldinit Gen`1<GenT>
31 extends [mscorlib]System.ValueType
32 implements class IGen`1<!0> {
35 .method public final virtual hidebysig newslot
36 instance default int32 bla () cil managed
38 // Method begins at RVA 0x20ec
41 IL_0000: ldc.i4.s 0x7b
43 } // end of method Gen`1::bla
45 } // end of class Gen`1
47 .class private auto ansi beforefieldinit A`2<S,T>
48 extends [mscorlib]System.Object
52 .method public hidebysig specialname rtspecialname
53 instance default void '.ctor' () cil managed
55 // Method begins at RVA 0x20f0
59 IL_0001: call instance void object::'.ctor'()
61 } // end of method A`2::.ctor
64 .method public hidebysig
65 instance default int32 Foo (valuetype Gen`1<!T> t) cil managed
67 // Method begins at RVA 0x20f8
71 constrained. valuetype Gen`1<!T>
72 IL_0006: callvirt instance int32 class IGen`1<!T>::bla()
74 } // end of method A`2::Foo
78 .class public auto ansi beforefieldinit main
79 extends [mscorlib]System.Object
83 .method public hidebysig specialname rtspecialname
84 instance default void '.ctor' () cil managed
86 // Method begins at RVA 0x2104
90 IL_0001: call instance void object::'.ctor'()
92 } // end of method main::.ctor
95 .method public static hidebysig
96 default int32 Main () cil managed
98 // Method begins at RVA 0x210c
100 // Code size 24 (0x18)
103 valuetype Gen`1<string> V_0,
104 class A`2<object, string> V_1)
106 IL_0002: initobj valuetype Gen`1<string>
107 IL_0008: newobj instance void class A`2<object, string>::'.ctor'()
111 IL_0010: callvirt instance int32 class A`2<object, string>::Foo(valuetype Gen`1<!1>)
115 } // end of method main::Main
117 } // end of class main