test-51 test-52 test-53 test-54 test-55 test-56 test-57 test-59 \
test-61 test-62 test-63 test-64 test-65 test-66 test-67 test-68 test-69 test-70 \
test-71 test-72 test-73 test-74 test-75 test-77 test-78 test-79 test-80 \
- test-81 test-82
+ test-81 test-82 test-83
UNSAFE_SOURCES = \
unsafe-1 unsafe-2
--- /dev/null
+//
+// This test probes that we treat events differently than fields
+// This used to cause a compiler crash.
+//
+using System;
+
+delegate void PersonArrivedHandler (object source, PersonArrivedArgs args);
+
+class PersonArrivedArgs /*: EventArgs*/ {
+ public string name;
+ public PersonArrivedArgs (string name) {
+ this.name = name;
+ }
+}
+
+class Greeter {
+ string greeting;
+
+ public Greeter (string greeting) {
+ this.greeting = greeting;
+ }
+
+ public void HandlePersonArrived (object source, PersonArrivedArgs args) {
+ Console.WriteLine(greeting, args.name);
+ }
+}
+
+class Room {
+ public event PersonArrivedHandler PersonArrived;
+
+ public Room () {}
+
+ public void AddPerson (string name) {
+ PersonArrived(this, null); //(this, PersonArrivedArgs(name));
+ }
+}
+
+class DelegateTest {
+ static int Main () {
+ return 0;
+ }
+}
+
+