Welcome to mirror list, hosted at ThFree Co, Russian Federation.

test-134.cs « tests « mcs - github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 35cb5c0c15b247f15bed502d5d651adb8af31940 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//
// This test checks if we implement all the interfaces inherited
//

interface IA {
        void A ();
}

interface IB : IA {
        void B ();
}

interface IC : IA, IB {
	void C ();
}

interface ID : IC {
}

class AA : IC {
	bool a, b, c;
	public void A () { a = true; }
	public void B () { b = true; }
	public void C () { c = true; }

	public bool OK {
		get {
			return a && b && c;
		}
	}
}

class BB : ID{
	bool a, b, c;
	public void A () { a = true; System.Console.WriteLine ("A"); }
	public void B () { b = true; }
	public void C () { c = true; }

	public bool OK {
		get {
			return a && b && c;
		}
	}
}

class T: IB {
        public void A () {}
        public void B () {}

        static int Main() {

		BB bb = new BB ();
		bb.A ();
		bb.B ();
		bb.C ();

		if (!bb.OK)
			return 1;

		AA aa = new AA ();
		aa.A ();
		aa.B ();
		aa.C ();
		if (!aa.OK)
			return 2;

		return 0;
	}
}