comparison test/classes9.d @ 114:5880c12dba83 trunk

[svn r118] Fixed dynamic casts. Fixed a few interface bugs.
author lindquist
date Sun, 25 Nov 2007 00:19:13 +0100
parents
children
comparison
equal deleted inserted replaced
113:27b9f749d9fe 114:5880c12dba83
1 module classes9;
2
3 class C
4 {
5 }
6
7 class D : C
8 {
9 }
10
11 class E
12 {
13 }
14
15 class F : E
16 {
17 }
18
19 void main()
20 {
21 {
22 D d = new D;
23 {
24 C c = d;
25 assert(c !is null);
26 D d2 = cast(D)c;
27 assert(d2 !is null);
28 E e = cast(E)d;
29 assert(e is null);
30 F f = cast(F)d;
31 assert(f is null);
32 }
33 }
34 {
35 F f = new F;
36 {
37 E e = f;
38 assert(e !is null);
39 F f2 = cast(F)e;
40 assert(f2 !is null);
41 C c = cast(C)f;
42 assert(c is null);
43 D d2 = cast(D)f;
44 assert(d2 is null);
45 }
46 }
47 }