1 // Compiler options: -optimize+
4 using System
.Reflection
;
15 int i
= default (int);
16 double d
= default (double);
17 char c
= default (char);
18 bool b
= default (bool);
19 decimal dec2
= default (decimal);
20 object o
= default (object);
21 ValueType BoolVal
= default (ValueType
);
24 int[] a_i
= default(int[]);
25 object[] a_o
= default(object[]);
26 ValueType
[] a_v
= default(ValueType
[]);
28 event D Ev1
= default(D
);
33 const int i
= default (int);
34 const double d
= default (double);
35 const char c
= default (char);
36 const bool b
= default (bool);
37 const decimal dec2
= default (decimal);
38 const object o
= default (object);
39 const ValueType BoolVal
= default (ValueType
);
40 const E e
= default (E
);
42 const int[] a_i
= default(int[]);
43 const object[] a_o
= default(object[]);
44 const ValueType
[] a_v
= default(ValueType
[]);
49 public static int Main ()
51 ConstructorInfo mi
= typeof(C
).GetConstructors ()[0];
52 MethodBody mb
= mi
.GetMethodBody();
54 if (mb
.GetILAsByteArray ().Length
!= 7) {
55 Console
.WriteLine("Optimization failed");
59 bool b
= default (DateTime
?) == default (DateTime
?);
63 Console
.WriteLine ("OK");