summaryrefslogtreecommitdiff
path: root/test/test_typeinfo.cc
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_typeinfo.cc')
-rw-r--r--test/test_typeinfo.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/test/test_typeinfo.cc b/test/test_typeinfo.cc
index 6d2fbdd..9fc8ef7 100644
--- a/test/test_typeinfo.cc
+++ b/test/test_typeinfo.cc
@@ -79,6 +79,7 @@ void test_type_info(void)
Root *b2 = &root;
Root *v1 = &virt1;
Virt1 *d1 = ⋄
+ Root *up = ⋄
b->test = 12;
f->test = 12;
b2->test = 12;
@@ -103,6 +104,8 @@ void test_type_info(void)
d2->test = 12;
TEST(12 == dynamic_cast<Diamond2*>(d2)->test, "Casting Diamond2 to Diamond2");
TEST(12 == dynamic_cast<Virt2a*>(d2)->test, "Casting Diamond2 to Virt2a");
+ TEST(&diamond == dynamic_cast<Diamond*>(up), "Downcasting root-pointer to diamond");
+ TEST(0 == dynamic_cast<Diamond*>(&root), "Downcasting root to diamond");
TEST(0 == dynamic_cast<Sub1*>(b2), "Casting Root to Sub1 (0 expected)");
}