[mini] Fix test compiling when running !MOBILE
[mono.git] / mcs / tests / test-cls-00.cs
1 // Compiler options: -warnaserror
2
3 using System;
4 using System.Reflection;
5 using System.ComponentModel;
6
7 [assembly: CLSCompliant(true)]
8 [assembly: AssemblyTitle("")]
9
10 public class CLSCLass_6 {
11     private object disposedEvent = new object ();
12     public EventHandlerList event_handlers;    
13         
14     public event Delegate Disposed {
15         add { event_handlers.AddHandler (disposedEvent, value); }
16         remove { event_handlers.RemoveHandler (disposedEvent, value); }
17     }
18 }
19
20 public delegate CLSDelegate Delegate ();
21     
22 [Serializable]
23 public class CLSDelegate {
24 }
25
26 #pragma warning disable 3019
27 internal class CLSClass_5 {
28         [CLSCompliant (true)]
29         public uint Test () {
30                 return 1;
31         }
32 }
33 #pragma warning restore 3019
34
35 [CLSCompliant (true)]
36 public class CLSClass_4 {
37         [CLSCompliant (false)]
38         public uint Test () {
39                 return 1;
40         }
41 }
42
43 public class CLSClass_3 {
44         [CLSCompliant (false)]
45         public uint Test_3 () {
46                 return 6;
47         }
48 }
49
50 [CLSCompliant(false)]
51 public class CLSClass_2 {
52         public sbyte XX {
53             get { return -1; }
54         }
55 }
56
57 class CLSClass_1 {
58         public UInt32 Valid() {
59                 return 5;
60         }
61 }
62     
63 [CLSCompliant(true)]
64 public class CLSClass {
65     
66         private class C1 {
67 #pragma warning disable 3019            
68             [CLSCompliant(true)]
69             public class C11 {
70                 protected ulong Foo3() {
71                     return 1;
72                 }
73             }
74 #pragma warning restore 3019
75             protected long Foo2() {
76                 return 1;
77             }
78         }
79
80         [CLSCompliant(false)]
81         protected internal class CLSClass_2 {
82                 public sbyte XX {
83                     get { return -1; }
84                 }
85         }
86
87 #pragma warning disable 3019, 169
88                 [CLSCompliant(true)]
89         private ulong Valid() {
90                 return 1;
91         }
92 #pragma warning restore 3019, 169
93         
94         [CLSCompliant(true)]
95         public byte XX {
96             get { return 5; }
97         }
98
99 //        protected internal sbyte FooProtectedInternal() {
100 //                return -4;
101 //       }
102         
103         internal UInt32 FooInternal() {
104                 return 1;
105         }        
106
107 #pragma warning disable 169
108         private ulong Foo() {
109                 return 1;
110         }
111 #pragma warning restore 169
112
113         
114         public static void Main() {}
115 }