--- /dev/null
+namespace test {
+
+ public class T {
+ static ulong[] values = {
+ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048,
+ 4096, 8192, 16384, 32768, 65536, 131072,
+ 262144, 524288, 1048576, 2097152, 4194304, 8388608,
+ 16777216, 33554432, 67108864, 134217728, 268435456,
+ 536870912, 1073741824, 2147483648, 4294967296,
+ 8589934592, 17179869184, 34359738368, 68719476736,
+ 137438953472, 274877906944, 549755813888, 1099511627776,
+ 2199023255552, 4398046511104, 8796093022208,
+ 17592186044416, 35184372088832, 70368744177664,
+ 140737488355328, 281474976710656, 562949953421312,
+ 1125899906842624, 2251799813685248, 4503599627370496,
+ 9007199254740992, 18014398509481984, 36028797018963968,
+ 72057594037927936, 144115188075855872, 288230376151711744,
+ 576460752303423488, 1152921504606846976,
+ 2305843009213693952, 4611686018427387904,
+ 9223372036854775808
+ };
+ public static int Main() {
+ int i;
+ ulong val = 1;
+ ulong val17 = 131072;
+ ulong val33 = 8589934592;
+ ulong val39 = 549755813888;
+ ulong val47 = 140737488355328;
+ ulong val55 = 36028797018963968;
+
+ for (i = 0; i < values.Length; ++i) {
+ if (val != values [i])
+ return i+1;
+ val *= 2;
+ }
+ if (val33 != values [33])
+ return 1;
+ if (val39 != values [39])
+ return 2;
+ if (val47 != values [47])
+ return 3;
+ if (val55 != values [55])
+ return 4;
+ if (val17 != values [17])
+ return 5;
+
+ return 0;
+ }
+ }
+}
--- /dev/null
+using System.Reflection;
+using System.Collections;
+using System;
+
+namespace Test {
+ internal class CM : IComparer {
+ public int Compare (object x, object y) {
+ return ((MethodInfo)x).Name.CompareTo (((MethodInfo)y).Name);
+ }
+ }
+ public class T {
+ public static int Main(string[] args) {
+ string[] names = {
+ "Equals", "Equals",
+ "GetHashCode", "GetType",
+ "ReferenceEquals", "ToString"
+ };
+ int i;
+ string name = "System.Object";
+ if (args.Length > 0)
+ name = args [0];
+ Type t = Type.GetType (name);
+ MethodInfo[] ms = t.GetMethods();
+
+ Array.Sort (ms, new CM());
+ foreach (MethodInfo m in ms) {
+ Console.WriteLine (m.ReturnType.Name + " " + m.Name);
+ }
+ if (name == "System.Object") {
+ for (i=0; i < names.Length; ++i)
+ if (names [i] != ms [i].Name)
+ return i + 1;
+ }
+ return 0;
+ }
+ }
+}