Piotr Caban : msvcrt/tests: Correctly declare base class to avoid a compiler warning.

Alexandre Julliard julliard at winehq.org
Thu Dec 22 17:19:27 CST 2016


Module: wine
Branch: master
Commit: da071d939fb5acb3bfcf197a29806d0b6b65891b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=da071d939fb5acb3bfcf197a29806d0b6b65891b

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Thu Dec 22 15:06:25 2016 +0100

msvcrt/tests: Correctly declare base class to avoid a compiler warning.

Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/msvcrt/tests/cpp.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/dlls/msvcrt/tests/cpp.c b/dlls/msvcrt/tests/cpp.c
index 490ddee..cf5e4c7 100644
--- a/dlls/msvcrt/tests/cpp.c
+++ b/dlls/msvcrt/tests/cpp.c
@@ -969,7 +969,11 @@ static void test_rtti(void)
   void *child_class_sig0 = &child_class_sig0_vtbl[1];
   void *virtual_base_class_vtbl[2] = {&virtual_base_class_rtti.object_locator};
   int virtual_base_class_vbtbl[2] = {0, 0x100};
-  void *virtual_base_class[2] = {&virtual_base_class_vtbl[1], virtual_base_class_vbtbl};
+  struct {
+      void *virtual_base[2];
+      char data[0x110-sizeof(void*)];
+      void *vbthis;
+  } virtual_base_class = { {&virtual_base_class_vtbl[1], virtual_base_class_vbtbl} };
 
   static const char* e_name = "name";
   type_info *ti,*bti;
@@ -1082,7 +1086,7 @@ static void test_rtti(void)
   ok(casted == (char*)&child_class+4, "failed cast to child class (%p %p)\n", casted, &child_class);
 
   casted = p__RTDynamicCast(&virtual_base_class, 0, &virtual_base_class_rtti.type_info[0], &virtual_base_class_rtti.type_info[1], 0);
-  ok(casted == (char*)&virtual_base_class+0x110+sizeof(void*), "failed cast to child class (%p %p)\n", casted, &virtual_base_class);
+  ok(casted == &virtual_base_class.vbthis, "failed cast to child class (%p %p)\n", casted, &virtual_base_class);
 }
 
 struct _demangle {




More information about the wine-cvs mailing list