From: Alex Henrie alexhenrie24@gmail.com
--- dlls/msvcr90/tests/msvcr90.c | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-)
diff --git a/dlls/msvcr90/tests/msvcr90.c b/dlls/msvcr90/tests/msvcr90.c index 0d28df217ab..1047994761f 100644 --- a/dlls/msvcr90/tests/msvcr90.c +++ b/dlls/msvcr90/tests/msvcr90.c @@ -1541,29 +1541,31 @@ static void test__AdjustPointer(void) } obj = { 0, 0xf0 }; void *obj1 = &obj.off; void *obj2 = &obj; + ULONG_PTR pobj1 = (ULONG_PTR)&obj1; + ULONG_PTR pobj2 = (ULONG_PTR)&obj2; struct test_data { - void *ptr; - void *ret; + ULONG_PTR ptr; + ULONG_PTR ret; struct { int this_offset; int vbase_descr; int vbase_offset; } this_ptr_offsets; } data[] = { - {NULL, NULL, {0, -1, 0}}, - {(void*)0xbeef, (void*)0xbef0, {1, -1, 1}}, - {(void*)0xbeef, (void*)0xbeee, {-1, -1, 0}}, - {&obj1, (char*)&obj1 + obj.off, {0, 0, 0}}, - {(char*)&obj1 - 5, (char*)&obj1 + obj.off, {0, 5, 0}}, - {(char*)&obj1 - 3, (char*)&obj1 + obj.off + 24, {24, 3, 0}}, - {(char*)&obj2 - 17, (char*)&obj2 + obj.off + 4, {4, 17, sizeof(int)}} + {0, 0, {0, -1, 0}}, + {0xbeef, 0xbef0, {1, -1, 1}}, + {0xbeef, 0xbeee, {-1, -1, 0}}, + {pobj1, pobj1 + obj.off, {0, 0, 0}}, + {pobj1 - 5, pobj1 + obj.off, {0, 5, 0}}, + {pobj1 - 3, pobj1 + obj.off + 24, {24, 3, 0}}, + {pobj2 - 17, pobj2 + obj.off + 4, {4, 17, sizeof(int)}} }; void *ret; int i;
for(i=0; i<ARRAY_SIZE(data); i++) { - ret = p__AdjustPointer(data[i].ptr, &data[i].this_ptr_offsets); - ok(ret == data[i].ret, "%d) __AdjustPointer returned %p, expected %p\n", i, ret, data[i].ret); + ret = p__AdjustPointer((void*)data[i].ptr, &data[i].this_ptr_offsets); + ok(ret == (void*)data[i].ret, "%d) __AdjustPointer returned %p, expected %p\n", i, ret, (void*)data[i].ret); } }
Fixed in a slightly different way by merge request !1666
This merge request was closed by Alex Henrie.