diff tests/mini/classes9.d @ 341:1bb99290e03a trunk

[svn r362] Started merging the old 'test' dir as well as the newer 'tangotests' dir into 'tests/mini' and 'tests/minicomplex'.
author lindquist
date Sun, 13 Jul 2008 02:51:19 +0200
parents test/classes9.d@5880c12dba83
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/mini/classes9.d	Sun Jul 13 02:51:19 2008 +0200
@@ -0,0 +1,47 @@
+module classes9;
+
+class C
+{
+}
+
+class D : C
+{
+}
+
+class E
+{
+}
+
+class F : E
+{
+}
+
+void main()
+{
+    {
+        D d = new D;
+        {
+            C c = d;
+            assert(c !is null);
+            D d2 = cast(D)c;
+            assert(d2 !is null);
+            E e = cast(E)d;
+            assert(e is null);
+            F f = cast(F)d;
+            assert(f is null);
+        }
+    }
+    {
+        F f = new F;
+        {
+            E e = f;
+            assert(e !is null);
+            F f2 = cast(F)e;
+            assert(f2 !is null);
+            C c = cast(C)f;
+            assert(c is null);
+            D d2 = cast(D)f;
+            assert(d2 is null);
+        }
+    }
+}