Rémi Bernon (@rbernon) commented about dlls/user32/tests/input.c:
{if (is_wow64){const RAWINPUT64 *data = (RAWINPUT64 *)buffer;ok(data->header.dwType == RIM_TYPEMOUSE, "Unexpected rawinput type: %lu\n", data->header.dwType);ok(data->header.dwSize == sizeof(*data), "Unexpected rawinput size: %lu\n", data->header.dwSize);todo_wine ok(data->header.wParam == wparam, "Unexpected wparam: %#I64x\n", data->header.wParam);}else{const RAWINPUT *data = (RAWINPUT *)buffer;ok(data->header.dwType == RIM_TYPEMOUSE, "Unexpected rawinput type: %lu\n", data->header.dwType);ok(data->header.dwSize == sizeof(*data), "Unexpected rawinput size: %lu\n", data->header.dwSize);todo_wine ok(data->header.wParam == wparam, "Unexpected wparam: %#Ix\n", data->header.wParam);}}
The i variable isn't used here, I guess you wanted to iterate the buffer?