A test for bug #355163
svn path=/trunk/mcs/; revision=93784
--- /dev/null
+using System;
+
+namespace BugReport
+{
+ class Program
+ {
+ static int Main()
+ {
+ A a = new A();
+ a.Counter++;
+ if (a.Counter != null)
+ return 1;
+ ++a.Counter;
+ if (a.Counter != null)
+ return 2;
+
+ a.Counter = 0;
+ a.Counter++;
+ if (a.Counter != 1)
+ return 3;
+ ++a.Counter;
+ if (a.Counter != 2)
+ return 4;
+
+ Console.WriteLine ("OK");
+ return 0;
+ }
+ }
+
+ class A {
+ private int? _counter;
+ public int? Counter {
+ get { return _counter; }
+ set { _counter = value; }
+ }
+ }
+}
+