More tests.
authorMarek Safar <marek.safar@gmail.com>
Tue, 2 Feb 2010 09:49:57 +0000 (09:49 -0000)
committerMarek Safar <marek.safar@gmail.com>
Tue, 2 Feb 2010 09:49:57 +0000 (09:49 -0000)
svn path=/trunk/mcs/; revision=150696

mcs/tests/gtest-anon-24.cs
mcs/tests/ver-il-gmcs.xml

index fe5d056788cc62673d0500d92632286e5a76b08d..8c97345554f85b719cde1149a20e0b2572da7504 100644 (file)
@@ -10,6 +10,10 @@ class Disposable<T> : IDisposable
        }
 }
 
+interface IFoo<TOne,TTwo>
+{
+}
+
 class Test
 {
        static Func<T[]> For<T> (List<T> list)
@@ -32,6 +36,18 @@ class Test
                };
        }
        
+       static Func<Type> TypeOf<T> (T t)
+       {
+               T l = t;
+               return () => {
+                       l = t;
+                       var e = typeof (Disposable <T>);
+                       e = typeof (Disposable <>);
+                       e = typeof (IFoo <,>);
+                       return typeof (T);
+               };
+       }
+       
        static Func<T> Do<T> (T t)
        {
                T l = t;
@@ -181,6 +197,10 @@ class Test
                var t10 = ArrayMultiMutate (new string [][] { new string [] { "a", "b", "c" }, new string [] { "1", "2", "3" }, new string [] { "A", "B", "C" }});
                if (t10 () [2] [2] != null)
                        return 10;
+               
+               var t11 = TypeOf ("b");
+               if (t11 () != typeof (string))
+                       return 11;
 
                Console.WriteLine ("OK");
                return 0;
index 760baf865204aa88a8b3fcb161592807c87076d0..c871fdf87bb5184e12fc68dd5cef04a7a8ce60cf 100644 (file)
         <size>26</size>
       </method>
       <method name="Int32 Main()">
-        <size>431</size>
+        <size>468</size>
       </method>
     </type>
     <type name="Test+&lt;For&gt;c__AnonStorey0`1[T]">
         <size>23</size>
       </method>
     </type>
-    <type name="Test+&lt;Do&gt;c__AnonStorey2`1[T]">
-      <method name="Void .ctor()">
-        <size>7</size>
+    <type name="Test">
+      <method name="Void ArrayMutate[T](T[])">
+        <size>27</size>
       </method>
-      <method name="T &lt;&gt;m__2()">
-        <size>28</size>
+      <method name="System.Func`1[T[][]] ArrayMultiMutate[T](T[][])">
+        <size>26</size>
+      </method>
+      <method name="System.Func`1[System.Type] TypeOf[T](T)">
+        <size>38</size>
       </method>
     </type>
-    <type name="Test+&lt;Lock&gt;c__AnonStorey3`1[T]">
+    <type name="Test+&lt;TypeOf&gt;c__AnonStorey2`1[T]">
+      <method name="System.Type &lt;&gt;m__2()">
+        <size>56</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="Test+&lt;Do&gt;c__AnonStorey3`1[T]">
       <method name="T &lt;&gt;m__3()">
-        <size>65</size>
+        <size>28</size>
       </method>
-    </type>
-    <type name="Test+&lt;Catch&gt;c__AnonStorey4`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="Test+&lt;Lock&gt;c__AnonStorey4`1[T]">
       <method name="T &lt;&gt;m__4()">
-        <size>48</size>
+        <size>65</size>
       </method>
-    </type>
-    <type name="Test+&lt;Finally&gt;c__AnonStorey5`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="Test+&lt;Catch&gt;c__AnonStorey5`1[T]">
       <method name="T &lt;&gt;m__5()">
-        <size>50</size>
+        <size>48</size>
       </method>
-    </type>
-    <type name="Test+&lt;Using&gt;c__AnonStorey6`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
+    </type>
+    <type name="Test+&lt;Finally&gt;c__AnonStorey6`1[T]">
       <method name="T &lt;&gt;m__6()">
+        <size>50</size>
+      </method>
+      <method name="Void .ctor()">
         <size>7</size>
       </method>
     </type>
-    <type name="Test+&lt;Switch&gt;c__AnonStorey7`1[T]">
+    <type name="Test+&lt;Using&gt;c__AnonStorey7`1[T]">
+      <method name="T &lt;&gt;m__7()">
+        <size>7</size>
+      </method>
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="T &lt;&gt;m__7()">
+    </type>
+    <type name="Test+&lt;Switch&gt;c__AnonStorey8`1[T]">
+      <method name="T &lt;&gt;m__8()">
         <size>35</size>
       </method>
-    </type>
-    <type name="Test+&lt;ForForeach&gt;c__AnonStorey8`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="System.Collections.Generic.List`1[T] &lt;&gt;m__8()">
-        <size>56</size>
-      </method>
     </type>
-    <type name="Test">
-      <method name="Void ArrayMutate[T](T[])">
-        <size>27</size>
+    <type name="Test+&lt;ForForeach&gt;c__AnonStorey9`1[T]">
+      <method name="System.Collections.Generic.List`1[T] &lt;&gt;m__9()">
+        <size>56</size>
       </method>
-    </type>
-    <type name="Test+&lt;ArrayMutate&gt;c__AnonStorey9`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="Void &lt;&gt;m__9(Int32)">
-        <size>36</size>
-      </method>
     </type>
-    <type name="Test">
-      <method name="System.Func`1[T[][]] ArrayMultiMutate[T](T[][])">
-        <size>26</size>
+    <type name="Test+&lt;ArrayMutate&gt;c__AnonStoreyA`1[T]">
+      <method name="Void &lt;&gt;m__A(Int32)">
+        <size>36</size>
       </method>
-    </type>
-    <type name="Test+&lt;ArrayMultiMutate&gt;c__AnonStoreyA`1[T]">
       <method name="Void .ctor()">
         <size>7</size>
       </method>
-      <method name="T[][] &lt;&gt;m__A()">
+    </type>
+    <type name="Test+&lt;ArrayMultiMutate&gt;c__AnonStoreyB`1[T]">
+      <method name="T[][] &lt;&gt;m__B()">
         <size>48</size>
       </method>
+      <method name="Void .ctor()">
+        <size>7</size>
+      </method>
     </type>
   </test>
   <test name="gtest-anon-25.cs">