diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-07-05 19:37:14 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-07-05 19:37:14 +0300 |
commit | 22adecab3bd0a671413f7ba90a24bfb8fdcf2592 (patch) | |
tree | 5911f35026530685e418f34f12185f494e7eab83 /test/test29.cpp | |
parent | 554ae80d47599c24b79e2653d4250b9b3c5d7519 (diff) | |
download | paranucker-22adecab3bd0a671413f7ba90a24bfb8fdcf2592.tar.gz paranucker-22adecab3bd0a671413f7ba90a24bfb8fdcf2592.tar.bz2 paranucker-22adecab3bd0a671413f7ba90a24bfb8fdcf2592.tar.xz paranucker-22adecab3bd0a671413f7ba90a24bfb8fdcf2592.zip |
Update test 29.
Diffstat (limited to 'test/test29.cpp')
-rw-r--r-- | test/test29.cpp | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/test/test29.cpp b/test/test29.cpp index b8cd494..f6100fe 100644 --- a/test/test29.cpp +++ b/test/test29.cpp @@ -9,6 +9,7 @@ struct Data1 struct Data2 : public Data1 { + virtual ~Data2(); }; int k; @@ -50,7 +51,7 @@ class Object1 paranuckerInternalTest("=", "needCheckNullVars", ""); } - void func2(Data1 *ptr1, Data2 *ptr2) + void func2(Data1 *ptr1, Data1 *ptr2) { paranuckerInternalTest("=", "knownVars", "ptr1 ptr2"); paranuckerInternalTest("=", "knownNonNullVars", ""); @@ -62,7 +63,7 @@ class Object1 paranuckerInternalTest("=", "knownNonNullVars", "ptr2"); paranuckerInternalTest("=", "knownNullVars", ""); paranuckerInternalTest("=", "needCheckNullVars", "ptr1"); - ptr1 = dynamic_cast<Data1*>(ptr2); + ptr1 = ptr2; paranuckerInternalTest("=", "knownVars", "ptr1 ptr2"); paranuckerInternalTest("=", "knownNonNullVars", "ptr1 ptr2"); paranuckerInternalTest("=", "knownNullVars", ""); @@ -115,7 +116,7 @@ class Object1 paranuckerInternalTest("=", "needCheckNullVars", "ptr1 ptr2"); } - void func5(Data1 *ptr1, Data2 *ptr2) + void func5(Data1 *ptr1, Data1 *ptr2) { paranuckerInternalTest("=", "knownVars", "ptr1 ptr2"); paranuckerInternalTest("=", "knownNonNullVars", ""); @@ -127,7 +128,7 @@ class Object1 paranuckerInternalTest("=", "knownNonNullVars", ""); paranuckerInternalTest("=", "knownNullVars", "ptr2"); paranuckerInternalTest("=", "needCheckNullVars", "ptr1 ptr2"); - ptr1 = dynamic_cast<Data1*>(ptr2); + ptr1 = ptr2; paranuckerInternalTest("=", "knownVars", "ptr1 ptr2"); paranuckerInternalTest("=", "knownNonNullVars", ""); paranuckerInternalTest("=", "knownNullVars", "ptr1 ptr2"); @@ -441,4 +442,17 @@ class Object1 paranuckerInternalTest("=", "knownNullVars", ""); paranuckerInternalTest("=", "needCheckNullVars", ""); } + + void func17(Data1 *ptr1, const Data2 *const ptr2) + { + paranuckerInternalTest("=", "knownVars", "ptr1 ptr2"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1 ptr2"); + const Data1 *const ptr3 = dynamic_cast<const Data1* const>(ptr2); + paranuckerInternalTest("=", "knownVars", "ptr1 ptr2"); + paranuckerInternalTest("=", "knownNonNullVars", ""); + paranuckerInternalTest("=", "knownNullVars", ""); + paranuckerInternalTest("=", "needCheckNullVars", "ptr1 ptr2"); + } }; |