From d4637d3200f007402130c6917aa501c9d17478f1 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Wed, 16 Nov 2005 15:48:17 +0000 Subject: [PATCH] Fixed line breaks. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@14959 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/tests/misc/rtti-test.cpp | 170 +++++++++++++++++------------------ 1 file changed, 85 insertions(+), 85 deletions(-) diff --git a/src/tests/misc/rtti-test.cpp b/src/tests/misc/rtti-test.cpp index 5e049bf68f..e633a0f789 100644 --- a/src/tests/misc/rtti-test.cpp +++ b/src/tests/misc/rtti-test.cpp @@ -1,85 +1,85 @@ -#include - -#include -#include - -#include -#include - -using std::string; - -struct A { - A() {} - virtual ~A() {} - - int a; -}; - -struct B : A { - B() {} - virtual ~B() {} - - int b; -}; - -struct C : A { - C() {} - virtual ~C() {} - - int c; -}; - -template -static void -rtti_test(A *a, const char *inputClass, const char *classNameA, - const char *classNameB, const char *classNameC) -{ - printf("class %s\n", inputClass); - printf(" dynamic_cast<%s*>(a): %p\n", classNameA, dynamic_cast(a)); - printf(" dynamic_cast<%s*>(a): %p\n", classNameB, dynamic_cast(a)); - printf(" dynamic_cast<%s*>(a): %p\n", classNameC, dynamic_cast(a)); - const std::type_info *info = &typeid(*a); - printf(" typeinfo: %p, name: %s\n", info, (info ? info->name() : NULL)); -} - -int -main() -{ - // test with artificial classes defined in this file - - #define RTTI_TEST(obj, className) rtti_test(obj, className, \ - "A", "B", "C") - - A a; - B b; - C c; - - printf("A: %p\n", &a); - printf("B: %p\n", &b); - printf("C: %p\n", &c); - - RTTI_TEST(&a, "A"); - RTTI_TEST(&b, "B"); - RTTI_TEST(&c, "C"); - - - // test with real classes defined in a library - - #undef RTTI_TEST - #define RTTI_TEST(obj, className) rtti_test(obj, \ - className, "BNode", "BFile", "BDirectory") - - BNode node; - BFile file; - BDirectory dir; - - printf("BNode: %p\n", &node); - printf("BFile: %p\n", &file); - printf("BDirectory: %p\n", &dir); - - RTTI_TEST(&node, "BNode"); - RTTI_TEST(&file, "BFile"); - RTTI_TEST(&dir, "BDirectory"); - - return 0; -} +#include + +#include +#include + +#include +#include + +using std::string; + +struct A { + A() {} + virtual ~A() {} + + int a; +}; + +struct B : A { + B() {} + virtual ~B() {} + + int b; +}; + +struct C : A { + C() {} + virtual ~C() {} + + int c; +}; + +template +static void +rtti_test(A *a, const char *inputClass, const char *classNameA, + const char *classNameB, const char *classNameC) +{ + printf("class %s\n", inputClass); + printf(" dynamic_cast<%s*>(a): %p\n", classNameA, dynamic_cast(a)); + printf(" dynamic_cast<%s*>(a): %p\n", classNameB, dynamic_cast(a)); + printf(" dynamic_cast<%s*>(a): %p\n", classNameC, dynamic_cast(a)); + const std::type_info *info = &typeid(*a); + printf(" typeinfo: %p, name: %s\n", info, (info ? info->name() : NULL)); +} + +int +main() +{ + // test with artificial classes defined in this file + + #define RTTI_TEST(obj, className) rtti_test(obj, className, \ + "A", "B", "C") + + A a; + B b; + C c; + + printf("A: %p (vtable: %p)\n", &a, *(void**)&a); + printf("B: %p (vtable: %p)\n", &b, *(void**)&b); + printf("C: %p (vtable: %p)\n", &c, *(void**)&c); + + RTTI_TEST(&a, "A"); + RTTI_TEST(&b, "B"); + RTTI_TEST(&c, "C"); + + + // test with real classes defined in a library + + #undef RTTI_TEST + #define RTTI_TEST(obj, className) rtti_test(obj, \ + className, "BNode", "BFile", "BDirectory") + + BNode node; + BFile file; + BDirectory dir; + + printf("BNode: %p (vtable: %p)\n", &node, *(void**)&node); + printf("BFile: %p (vtable: %p)\n", &file, *(void**)&file); + printf("BDirectory: %p (vtable: %p)\n", &dir, *(void**)&dir); + + RTTI_TEST(&node, "BNode"); + RTTI_TEST(&file, "BFile"); + RTTI_TEST(&dir, "BDirectory"); + + return 0; +}