-// Compiler options: -optimize+\r
-\r
-using System;\r
-using System.Reflection;\r
-\r
-enum E\r
-{\r
-}\r
-\r
-delegate void D();\r
-\r
-class C {\r
- public C () {}\r
-\r
- int i = default (int);\r
- double d = default (double);\r
- char c = default (char);\r
- bool b = default (bool);\r
- decimal dec2 = default (decimal);\r
- object o = default (object);\r
- ValueType BoolVal = default (ValueType);\r
- E e = default (E);\r
- \r
- int[] a_i = default(int[]);\r
- object[] a_o = default(object[]);\r
- ValueType[] a_v = default(ValueType[]);\r
-\r
- event D Ev1 = default(D);\r
-}\r
-\r
-class Consts\r
-{\r
- const int i = default (int);\r
- const double d = default (double);\r
- const char c = default (char);\r
- const bool b = default (bool);\r
- const decimal dec2 = default (decimal);\r
- const object o = default (object);\r
- const ValueType BoolVal = default (ValueType);\r
- const E e = default (E);\r
- \r
- const int[] a_i = default(int[]);\r
- const object[] a_o = default(object[]);\r
- const ValueType[] a_v = default(ValueType[]);\r
-}\r
-\r
-class Test\r
-{\r
- static int Main ()\r
- {\r
- ConstructorInfo mi = typeof(C).GetConstructors ()[0];\r
- MethodBody mb = mi.GetMethodBody();\r
- \r
- if (mb.GetILAsByteArray ().Length != 7) {\r
- Console.WriteLine("Optimization failed");\r
- return 3;\r
- }\r
- \r
- Console.WriteLine ("OK");\r
- return 0;\r
- }\r
+// Compiler options: -optimize+
+
+using System;
+using System.Reflection;
+
+enum E
+{
+}
+
+delegate void D();
+
+class C {
+ public C () {}
+
+ int i = default (int);
+ double d = default (double);
+ char c = default (char);
+ bool b = default (bool);
+ decimal dec2 = default (decimal);
+ object o = default (object);
+ ValueType BoolVal = default (ValueType);
+ E e = default (E);
+
+ int[] a_i = default(int[]);
+ object[] a_o = default(object[]);
+ ValueType[] a_v = default(ValueType[]);
+
+ event D Ev1 = default(D);
+}
+
+class Consts
+{
+ const int i = default (int);
+ const double d = default (double);
+ const char c = default (char);
+ const bool b = default (bool);
+ const decimal dec2 = default (decimal);
+ const object o = default (object);
+ const ValueType BoolVal = default (ValueType);
+ const E e = default (E);
+
+ const int[] a_i = default(int[]);
+ const object[] a_o = default(object[]);
+ const ValueType[] a_v = default(ValueType[]);
+}
+
+class Test
+{
+ public static int Main ()
+ {
+ ConstructorInfo mi = typeof(C).GetConstructors ()[0];
+ MethodBody mb = mi.GetMethodBody();
+
+ if (mb.GetILAsByteArray ().Length != 7) {
+ Console.WriteLine("Optimization failed");
+ return 3;
+ }
+
+ bool b = default (DateTime?) == default (DateTime?);
+ if (!b)
+ return 19;
+
+ Console.WriteLine ("OK");
+ return 0;
+ }
}
\ No newline at end of file