* roottypes.cs: Rename from tree.cs.
[mono.git] / mcs / ilasm / tests / gen-meth1.il
1 // Test: Use of !!A, gen param ref by name in method signature,
2 // or in constraints
3
4 .assembly extern mscorlib
5 {
6   .ver 2:0:0:0
7 }
8 .assembly 'gen-meth1'
9 {
10   .custom instance void class [mscorlib]System.Runtime.CompilerServices.RuntimeCompatibilityAttribute::.ctor() =  (
11                 01 00 01 00 54 02 16 57 72 61 70 4E 6F 6E 45 78   // ....T..WrapNonEx
12                 63 65 70 74 69 6F 6E 54 68 72 6F 77 73 01       ) // ceptionThrows.
13
14   .ver  0:0:0:0
15 }
16 .module meth1.dll
17
18   .class interface private auto ansi abstract IFoo`1<A>
19   {
20   }
21
22   .class private auto ansi beforefieldinit g`1<T>
23         extends [mscorlib]System.Object
24   {
25
26     .method public hidebysig  specialname  rtspecialname 
27            instance default void .ctor ()  cil managed 
28     {
29         .maxstack 8
30         IL_0000:  ldarg.0 
31         IL_0001:  call instance void object::.ctor()
32         IL_0006:  ret 
33     }
34
35     .method public static  hidebysig 
36            default !!A foo<(class g`1<!!B>)A,B> (!!B _b, !T _t, !!A _a)  cil managed 
37     {
38         .maxstack 1
39         .locals init (
40                 !!A     V_0)
41         IL_0000:  ldloca.s 0
42         IL_0002:  initobj !!0
43         IL_0008:  ldloc.0 
44         IL_0009:  ret 
45     }
46
47     .method public static  hidebysig
48            default void meth1 ()  cil managed
49     {
50         .maxstack 4
51         .locals init (
52                 !T      V_0,
53                 !T[]    V_1)
54         IL_0000:  ldtoken !T
55         IL_0005:  call class [mscorlib]System.Type class [mscorlib]System.Type::GetTypeFromHandle(valuetype [mscorlib]System.RuntimeTypeHandle)
56         IL_000a:  call object class [mscorlib]System.Activator::CreateInstance(class [mscorlib]System.Type)
57         IL_000f:  unbox.any !0
58         IL_0014:  stloc.0
59         IL_0015:  ldc.i4.5
60         IL_0016:  newarr !0
61         IL_001b:  stloc.1
62         IL_001c:  ret
63     }
64   }
65