From 928ecb48918b2d9e0a9b0071b0992c0739a7a393 Mon Sep 17 00:00:00 2001 From: Patrik Stridvall Date: Wed, 2 Oct 2002 19:58:27 +0000 Subject: [PATCH] Added some more autogenerated tests. --- configure | 3 +- configure.ac | 1 + dlls/gdi/Makefile.in | 2 + dlls/gdi/tests/.cvsignore | 4 + dlls/gdi/tests/Makefile.in | 13 + dlls/gdi/tests/generated.c | 1571 +++++++++++++++++++++++++++++++++ dlls/kernel/tests/generated.c | 9 +- dlls/user/tests/.cvsignore | 1 + dlls/user/tests/Makefile.in | 1 + dlls/user/tests/generated.c | 1497 +++++++++++++++++++++++++++++++ 10 files changed, 3099 insertions(+), 3 deletions(-) create mode 100644 dlls/gdi/tests/.cvsignore create mode 100644 dlls/gdi/tests/Makefile.in create mode 100644 dlls/gdi/tests/generated.c create mode 100644 dlls/user/tests/generated.c diff --git a/configure b/configure index a4a10882c97..282461d8c4e 100755 --- a/configure +++ b/configure @@ -14207,7 +14207,7 @@ MAKE_TEST_RULES=dlls/Maketest.rules MAKE_PROG_RULES=programs/Makeprog.rules -ac_config_files="$ac_config_files Make.rules dlls/Makedll.rules dlls/Maketest.rules programs/Makeprog.rules Makefile dlls/Makefile dlls/advapi32/Makefile dlls/advapi32/tests/Makefile dlls/avicap32/Makefile dlls/avifil32/Makefile dlls/comcat/Makefile dlls/comctl32/Makefile dlls/commdlg/Makefile dlls/crtdll/Makefile dlls/crypt32/Makefile dlls/d3d8/Makefile dlls/dciman32/Makefile dlls/ddraw/Makefile dlls/devenum/Makefile dlls/dinput/Makefile dlls/dinput8/Makefile dlls/dplay/Makefile dlls/dplayx/Makefile dlls/dsound/Makefile dlls/gdi/Makefile dlls/glu32/Makefile dlls/icmp/Makefile dlls/imagehlp/Makefile dlls/imm32/Makefile dlls/kernel/Makefile dlls/kernel/tests/Makefile dlls/lzexpand/Makefile dlls/mapi32/Makefile dlls/mpr/Makefile dlls/msacm/Makefile dlls/msacm/imaadp32/Makefile dlls/msacm/msadp32/Makefile dlls/msacm/msg711/Makefile dlls/msacm/winemp3/Makefile dlls/msdmo/Makefile dlls/msimg32/Makefile dlls/msisys/Makefile dlls/msnet32/Makefile dlls/msrle32/Makefile dlls/msvcrt/Makefile dlls/msvcrt20/Makefile dlls/msvideo/Makefile dlls/netapi32/Makefile dlls/netapi32/tests/Makefile dlls/ntdll/Makefile dlls/ntdll/tests/Makefile dlls/odbc32/Makefile dlls/ole32/Makefile dlls/oleaut32/Makefile dlls/oleaut32/tests/Makefile dlls/olecli/Makefile dlls/oledlg/Makefile dlls/olepro32/Makefile dlls/olesvr/Makefile dlls/opengl32/Makefile dlls/psapi/Makefile dlls/qcap/Makefile dlls/quartz/Makefile dlls/rasapi32/Makefile dlls/richedit/Makefile dlls/rpcrt4/Makefile dlls/serialui/Makefile dlls/setupapi/Makefile dlls/shdocvw/Makefile dlls/shell32/Makefile dlls/shell32/tests/Makefile dlls/shfolder/Makefile dlls/shlwapi/Makefile dlls/shlwapi/tests/Makefile dlls/snmpapi/Makefile dlls/sti/Makefile dlls/tapi32/Makefile dlls/ttydrv/Makefile dlls/twain/Makefile dlls/url/Makefile dlls/urlmon/Makefile dlls/user/Makefile dlls/user/tests/Makefile dlls/version/Makefile dlls/win32s/Makefile dlls/winaspi/Makefile dlls/winedos/Makefile dlls/wineps/Makefile dlls/wininet/Makefile dlls/wininet/tests/Makefile dlls/winmm/Makefile dlls/winmm/joystick/Makefile dlls/winmm/mcianim/Makefile dlls/winmm/mciavi/Makefile dlls/winmm/mcicda/Makefile dlls/winmm/mciseq/Makefile dlls/winmm/mciwave/Makefile dlls/winmm/midimap/Makefile dlls/winmm/wavemap/Makefile dlls/winmm/winealsa/Makefile dlls/winmm/winearts/Makefile dlls/winmm/wineaudioio/Makefile dlls/winmm/winenas/Makefile dlls/winmm/wineoss/Makefile dlls/winnls/Makefile dlls/winsock/Makefile dlls/winsock/tests/Makefile dlls/winspool/Makefile dlls/wintrust/Makefile dlls/wow32/Makefile dlls/wsock32/Makefile dlls/x11drv/Makefile documentation/Makefile include/Makefile library/Makefile miscemu/Makefile ole/Makefile programs/Makefile programs/avitools/Makefile programs/clock/Makefile programs/cmdlgtst/Makefile programs/control/Makefile programs/expand/Makefile programs/notepad/Makefile programs/osversioncheck/Makefile programs/progman/Makefile programs/regapi/Makefile programs/regedit/Makefile programs/regsvr32/Makefile programs/regtest/Makefile programs/uninstaller/Makefile programs/view/Makefile programs/wcmd/Makefile programs/wineconsole/Makefile programs/winedbg/Makefile programs/winefile/Makefile programs/winemine/Makefile programs/winepath/Makefile programs/winetest/Makefile programs/winhelp/Makefile programs/winver/Makefile server/Makefile tools/Makefile tools/widl/Makefile tools/winapi/Makefile tools/winebuild/Makefile tools/winedump/Makefile tools/wmc/Makefile tools/wpp/Makefile tools/wrc/Makefile unicode/Makefile" +ac_config_files="$ac_config_files Make.rules dlls/Makedll.rules dlls/Maketest.rules programs/Makeprog.rules Makefile dlls/Makefile dlls/advapi32/Makefile dlls/advapi32/tests/Makefile dlls/avicap32/Makefile dlls/avifil32/Makefile dlls/comcat/Makefile dlls/comctl32/Makefile dlls/commdlg/Makefile dlls/crtdll/Makefile dlls/crypt32/Makefile dlls/d3d8/Makefile dlls/dciman32/Makefile dlls/ddraw/Makefile dlls/devenum/Makefile dlls/dinput/Makefile dlls/dinput8/Makefile dlls/dplay/Makefile dlls/dplayx/Makefile dlls/dsound/Makefile dlls/gdi/Makefile dlls/gdi/tests/Makefile dlls/glu32/Makefile dlls/icmp/Makefile dlls/imagehlp/Makefile dlls/imm32/Makefile dlls/kernel/Makefile dlls/kernel/tests/Makefile dlls/lzexpand/Makefile dlls/mapi32/Makefile dlls/mpr/Makefile dlls/msacm/Makefile dlls/msacm/imaadp32/Makefile dlls/msacm/msadp32/Makefile dlls/msacm/msg711/Makefile dlls/msacm/winemp3/Makefile dlls/msdmo/Makefile dlls/msimg32/Makefile dlls/msisys/Makefile dlls/msnet32/Makefile dlls/msrle32/Makefile dlls/msvcrt/Makefile dlls/msvcrt20/Makefile dlls/msvideo/Makefile dlls/netapi32/Makefile dlls/netapi32/tests/Makefile dlls/ntdll/Makefile dlls/ntdll/tests/Makefile dlls/odbc32/Makefile dlls/ole32/Makefile dlls/oleaut32/Makefile dlls/oleaut32/tests/Makefile dlls/olecli/Makefile dlls/oledlg/Makefile dlls/olepro32/Makefile dlls/olesvr/Makefile dlls/opengl32/Makefile dlls/psapi/Makefile dlls/qcap/Makefile dlls/quartz/Makefile dlls/rasapi32/Makefile dlls/richedit/Makefile dlls/rpcrt4/Makefile dlls/serialui/Makefile dlls/setupapi/Makefile dlls/shdocvw/Makefile dlls/shell32/Makefile dlls/shell32/tests/Makefile dlls/shfolder/Makefile dlls/shlwapi/Makefile dlls/shlwapi/tests/Makefile dlls/snmpapi/Makefile dlls/sti/Makefile dlls/tapi32/Makefile dlls/ttydrv/Makefile dlls/twain/Makefile dlls/url/Makefile dlls/urlmon/Makefile dlls/user/Makefile dlls/user/tests/Makefile dlls/version/Makefile dlls/win32s/Makefile dlls/winaspi/Makefile dlls/winedos/Makefile dlls/wineps/Makefile dlls/wininet/Makefile dlls/wininet/tests/Makefile dlls/winmm/Makefile dlls/winmm/joystick/Makefile dlls/winmm/mcianim/Makefile dlls/winmm/mciavi/Makefile dlls/winmm/mcicda/Makefile dlls/winmm/mciseq/Makefile dlls/winmm/mciwave/Makefile dlls/winmm/midimap/Makefile dlls/winmm/wavemap/Makefile dlls/winmm/winealsa/Makefile dlls/winmm/winearts/Makefile dlls/winmm/wineaudioio/Makefile dlls/winmm/winenas/Makefile dlls/winmm/wineoss/Makefile dlls/winnls/Makefile dlls/winsock/Makefile dlls/winsock/tests/Makefile dlls/winspool/Makefile dlls/wintrust/Makefile dlls/wow32/Makefile dlls/wsock32/Makefile dlls/x11drv/Makefile documentation/Makefile include/Makefile library/Makefile miscemu/Makefile ole/Makefile programs/Makefile programs/avitools/Makefile programs/clock/Makefile programs/cmdlgtst/Makefile programs/control/Makefile programs/expand/Makefile programs/notepad/Makefile programs/osversioncheck/Makefile programs/progman/Makefile programs/regapi/Makefile programs/regedit/Makefile programs/regsvr32/Makefile programs/regtest/Makefile programs/uninstaller/Makefile programs/view/Makefile programs/wcmd/Makefile programs/wineconsole/Makefile programs/winedbg/Makefile programs/winefile/Makefile programs/winemine/Makefile programs/winepath/Makefile programs/winetest/Makefile programs/winhelp/Makefile programs/winver/Makefile server/Makefile tools/Makefile tools/widl/Makefile tools/winapi/Makefile tools/winebuild/Makefile tools/winedump/Makefile tools/wmc/Makefile tools/wpp/Makefile tools/wrc/Makefile unicode/Makefile" cat >confcache <<\_ACEOF @@ -14709,6 +14709,7 @@ do "dlls/dplayx/Makefile" ) CONFIG_FILES="$CONFIG_FILES dlls/dplayx/Makefile" ;; "dlls/dsound/Makefile" ) CONFIG_FILES="$CONFIG_FILES dlls/dsound/Makefile" ;; "dlls/gdi/Makefile" ) CONFIG_FILES="$CONFIG_FILES dlls/gdi/Makefile" ;; + "dlls/gdi/tests/Makefile" ) CONFIG_FILES="$CONFIG_FILES dlls/gdi/tests/Makefile" ;; "dlls/glu32/Makefile" ) CONFIG_FILES="$CONFIG_FILES dlls/glu32/Makefile" ;; "dlls/icmp/Makefile" ) CONFIG_FILES="$CONFIG_FILES dlls/icmp/Makefile" ;; "dlls/imagehlp/Makefile" ) CONFIG_FILES="$CONFIG_FILES dlls/imagehlp/Makefile" ;; diff --git a/configure.ac b/configure.ac index b117e9d3225..777cde53ab8 100644 --- a/configure.ac +++ b/configure.ac @@ -1393,6 +1393,7 @@ dlls/dplay/Makefile dlls/dplayx/Makefile dlls/dsound/Makefile dlls/gdi/Makefile +dlls/gdi/tests/Makefile dlls/glu32/Makefile dlls/icmp/Makefile dlls/imagehlp/Makefile diff --git a/dlls/gdi/Makefile.in b/dlls/gdi/Makefile.in index b1282259b24..d906380153f 100644 --- a/dlls/gdi/Makefile.in +++ b/dlls/gdi/Makefile.in @@ -70,6 +70,8 @@ RC_SRCS16 = version16.rc EXTRA_OBJS = $(MODULE).glue.o +SUBDIRS = tests + EXTRASUBDIRS = \ $(TOPOBJDIR)/graphics \ $(TOPOBJDIR)/objects \ diff --git a/dlls/gdi/tests/.cvsignore b/dlls/gdi/tests/.cvsignore new file mode 100644 index 00000000000..ec8c6a40cb7 --- /dev/null +++ b/dlls/gdi/tests/.cvsignore @@ -0,0 +1,4 @@ +Makefile +gdi32_test.exe.spec.c +generated.ok +testlist.c diff --git a/dlls/gdi/tests/Makefile.in b/dlls/gdi/tests/Makefile.in new file mode 100644 index 00000000000..a40a2ba6aec --- /dev/null +++ b/dlls/gdi/tests/Makefile.in @@ -0,0 +1,13 @@ +TOPSRCDIR = @top_srcdir@ +TOPOBJDIR = ../../.. +SRCDIR = @srcdir@ +VPATH = @srcdir@ +TESTDLL = gdi32.dll +IMPORTS = gdi32 + +CTESTS = \ + generated.c + +@MAKE_TEST_RULES@ + +### Dependencies: diff --git a/dlls/gdi/tests/generated.c b/dlls/gdi/tests/generated.c new file mode 100644 index 00000000000..4679616e2f2 --- /dev/null +++ b/dlls/gdi/tests/generated.c @@ -0,0 +1,1571 @@ +/* File generated automatically from tools/winapi/test.dat; do not edit! */ +/* This file can be copied, modified and distributed without restriction. */ + +/* + * Unit tests for data structure packing + */ + +#include + +#include "wine/test.h" +#include "wingdi.h" + +void test_pack(void) +{ + /* ABC */ + ok(FIELD_OFFSET(ABC, abcA) == 0, + "FIELD_OFFSET(ABC, abcA) == %ld (expected 0)", + FIELD_OFFSET(ABC, abcA)); /* INT */ + ok(FIELD_OFFSET(ABC, abcB) == 4, + "FIELD_OFFSET(ABC, abcB) == %ld (expected 4)", + FIELD_OFFSET(ABC, abcB)); /* UINT */ + ok(FIELD_OFFSET(ABC, abcC) == 8, + "FIELD_OFFSET(ABC, abcC) == %ld (expected 8)", + FIELD_OFFSET(ABC, abcC)); /* INT */ + ok(sizeof(ABC) == 12, "sizeof(ABC) == %d (expected 12)", sizeof(ABC)); + + /* ABCFLOAT */ + ok(FIELD_OFFSET(ABCFLOAT, abcfA) == 0, + "FIELD_OFFSET(ABCFLOAT, abcfA) == %ld (expected 0)", + FIELD_OFFSET(ABCFLOAT, abcfA)); /* FLOAT */ + ok(FIELD_OFFSET(ABCFLOAT, abcfB) == 4, + "FIELD_OFFSET(ABCFLOAT, abcfB) == %ld (expected 4)", + FIELD_OFFSET(ABCFLOAT, abcfB)); /* FLOAT */ + ok(FIELD_OFFSET(ABCFLOAT, abcfC) == 8, + "FIELD_OFFSET(ABCFLOAT, abcfC) == %ld (expected 8)", + FIELD_OFFSET(ABCFLOAT, abcfC)); /* FLOAT */ + ok(sizeof(ABCFLOAT) == 12, "sizeof(ABCFLOAT) == %d (expected 12)", sizeof(ABCFLOAT)); + + /* BITMAP */ + ok(FIELD_OFFSET(BITMAP, bmType) == 0, + "FIELD_OFFSET(BITMAP, bmType) == %ld (expected 0)", + FIELD_OFFSET(BITMAP, bmType)); /* INT */ + ok(FIELD_OFFSET(BITMAP, bmWidth) == 4, + "FIELD_OFFSET(BITMAP, bmWidth) == %ld (expected 4)", + FIELD_OFFSET(BITMAP, bmWidth)); /* INT */ + ok(FIELD_OFFSET(BITMAP, bmHeight) == 8, + "FIELD_OFFSET(BITMAP, bmHeight) == %ld (expected 8)", + FIELD_OFFSET(BITMAP, bmHeight)); /* INT */ + ok(FIELD_OFFSET(BITMAP, bmWidthBytes) == 12, + "FIELD_OFFSET(BITMAP, bmWidthBytes) == %ld (expected 12)", + FIELD_OFFSET(BITMAP, bmWidthBytes)); /* INT */ + ok(FIELD_OFFSET(BITMAP, bmPlanes) == 16, + "FIELD_OFFSET(BITMAP, bmPlanes) == %ld (expected 16)", + FIELD_OFFSET(BITMAP, bmPlanes)); /* WORD */ + ok(FIELD_OFFSET(BITMAP, bmBitsPixel) == 18, + "FIELD_OFFSET(BITMAP, bmBitsPixel) == %ld (expected 18)", + FIELD_OFFSET(BITMAP, bmBitsPixel)); /* WORD */ + ok(FIELD_OFFSET(BITMAP, bmBits) == 20, + "FIELD_OFFSET(BITMAP, bmBits) == %ld (expected 20)", + FIELD_OFFSET(BITMAP, bmBits)); /* LPVOID */ + ok(sizeof(BITMAP) == 24, "sizeof(BITMAP) == %d (expected 24)", sizeof(BITMAP)); + + /* BITMAPCOREHEADER */ + ok(FIELD_OFFSET(BITMAPCOREHEADER, bcSize) == 0, + "FIELD_OFFSET(BITMAPCOREHEADER, bcSize) == %ld (expected 0)", + FIELD_OFFSET(BITMAPCOREHEADER, bcSize)); /* DWORD */ + ok(FIELD_OFFSET(BITMAPCOREHEADER, bcWidth) == 4, + "FIELD_OFFSET(BITMAPCOREHEADER, bcWidth) == %ld (expected 4)", + FIELD_OFFSET(BITMAPCOREHEADER, bcWidth)); /* WORD */ + ok(FIELD_OFFSET(BITMAPCOREHEADER, bcHeight) == 6, + "FIELD_OFFSET(BITMAPCOREHEADER, bcHeight) == %ld (expected 6)", + FIELD_OFFSET(BITMAPCOREHEADER, bcHeight)); /* WORD */ + ok(FIELD_OFFSET(BITMAPCOREHEADER, bcPlanes) == 8, + "FIELD_OFFSET(BITMAPCOREHEADER, bcPlanes) == %ld (expected 8)", + FIELD_OFFSET(BITMAPCOREHEADER, bcPlanes)); /* WORD */ + ok(FIELD_OFFSET(BITMAPCOREHEADER, bcBitCount) == 10, + "FIELD_OFFSET(BITMAPCOREHEADER, bcBitCount) == %ld (expected 10)", + FIELD_OFFSET(BITMAPCOREHEADER, bcBitCount)); /* WORD */ + ok(sizeof(BITMAPCOREHEADER) == 12, "sizeof(BITMAPCOREHEADER) == %d (expected 12)", sizeof(BITMAPCOREHEADER)); + + /* BITMAPFILEHEADER */ + ok(FIELD_OFFSET(BITMAPFILEHEADER, bfType) == 0, + "FIELD_OFFSET(BITMAPFILEHEADER, bfType) == %ld (expected 0)", + FIELD_OFFSET(BITMAPFILEHEADER, bfType)); /* WORD */ + ok(FIELD_OFFSET(BITMAPFILEHEADER, bfSize) == 2, + "FIELD_OFFSET(BITMAPFILEHEADER, bfSize) == %ld (expected 2)", + FIELD_OFFSET(BITMAPFILEHEADER, bfSize)); /* DWORD */ + ok(FIELD_OFFSET(BITMAPFILEHEADER, bfReserved1) == 6, + "FIELD_OFFSET(BITMAPFILEHEADER, bfReserved1) == %ld (expected 6)", + FIELD_OFFSET(BITMAPFILEHEADER, bfReserved1)); /* WORD */ + ok(FIELD_OFFSET(BITMAPFILEHEADER, bfReserved2) == 8, + "FIELD_OFFSET(BITMAPFILEHEADER, bfReserved2) == %ld (expected 8)", + FIELD_OFFSET(BITMAPFILEHEADER, bfReserved2)); /* WORD */ + ok(FIELD_OFFSET(BITMAPFILEHEADER, bfOffBits) == 10, + "FIELD_OFFSET(BITMAPFILEHEADER, bfOffBits) == %ld (expected 10)", + FIELD_OFFSET(BITMAPFILEHEADER, bfOffBits)); /* DWORD */ + ok(sizeof(BITMAPFILEHEADER) == 14, "sizeof(BITMAPFILEHEADER) == %d (expected 14)", sizeof(BITMAPFILEHEADER)); + + /* BITMAPINFOHEADER */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biSize) == 0, + "FIELD_OFFSET(BITMAPINFOHEADER, biSize) == %ld (expected 0)", + FIELD_OFFSET(BITMAPINFOHEADER, biSize)); /* DWORD */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biWidth) == 4, + "FIELD_OFFSET(BITMAPINFOHEADER, biWidth) == %ld (expected 4)", + FIELD_OFFSET(BITMAPINFOHEADER, biWidth)); /* LONG */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biHeight) == 8, + "FIELD_OFFSET(BITMAPINFOHEADER, biHeight) == %ld (expected 8)", + FIELD_OFFSET(BITMAPINFOHEADER, biHeight)); /* LONG */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biPlanes) == 12, + "FIELD_OFFSET(BITMAPINFOHEADER, biPlanes) == %ld (expected 12)", + FIELD_OFFSET(BITMAPINFOHEADER, biPlanes)); /* WORD */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biBitCount) == 14, + "FIELD_OFFSET(BITMAPINFOHEADER, biBitCount) == %ld (expected 14)", + FIELD_OFFSET(BITMAPINFOHEADER, biBitCount)); /* WORD */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biCompression) == 16, + "FIELD_OFFSET(BITMAPINFOHEADER, biCompression) == %ld (expected 16)", + FIELD_OFFSET(BITMAPINFOHEADER, biCompression)); /* DWORD */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biSizeImage) == 20, + "FIELD_OFFSET(BITMAPINFOHEADER, biSizeImage) == %ld (expected 20)", + FIELD_OFFSET(BITMAPINFOHEADER, biSizeImage)); /* DWORD */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biXPelsPerMeter) == 24, + "FIELD_OFFSET(BITMAPINFOHEADER, biXPelsPerMeter) == %ld (expected 24)", + FIELD_OFFSET(BITMAPINFOHEADER, biXPelsPerMeter)); /* LONG */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biYPelsPerMeter) == 28, + "FIELD_OFFSET(BITMAPINFOHEADER, biYPelsPerMeter) == %ld (expected 28)", + FIELD_OFFSET(BITMAPINFOHEADER, biYPelsPerMeter)); /* LONG */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biClrUsed) == 32, + "FIELD_OFFSET(BITMAPINFOHEADER, biClrUsed) == %ld (expected 32)", + FIELD_OFFSET(BITMAPINFOHEADER, biClrUsed)); /* DWORD */ + ok(FIELD_OFFSET(BITMAPINFOHEADER, biClrImportant) == 36, + "FIELD_OFFSET(BITMAPINFOHEADER, biClrImportant) == %ld (expected 36)", + FIELD_OFFSET(BITMAPINFOHEADER, biClrImportant)); /* DWORD */ + ok(sizeof(BITMAPINFOHEADER) == 40, "sizeof(BITMAPINFOHEADER) == %d (expected 40)", sizeof(BITMAPINFOHEADER)); + + /* BLENDFUNCTION */ + ok(FIELD_OFFSET(BLENDFUNCTION, BlendOp) == 0, + "FIELD_OFFSET(BLENDFUNCTION, BlendOp) == %ld (expected 0)", + FIELD_OFFSET(BLENDFUNCTION, BlendOp)); /* BYTE */ + ok(FIELD_OFFSET(BLENDFUNCTION, BlendFlags) == 1, + "FIELD_OFFSET(BLENDFUNCTION, BlendFlags) == %ld (expected 1)", + FIELD_OFFSET(BLENDFUNCTION, BlendFlags)); /* BYTE */ + ok(FIELD_OFFSET(BLENDFUNCTION, SourceConstantAlpha) == 2, + "FIELD_OFFSET(BLENDFUNCTION, SourceConstantAlpha) == %ld (expected 2)", + FIELD_OFFSET(BLENDFUNCTION, SourceConstantAlpha)); /* BYTE */ + ok(FIELD_OFFSET(BLENDFUNCTION, AlphaFormat) == 3, + "FIELD_OFFSET(BLENDFUNCTION, AlphaFormat) == %ld (expected 3)", + FIELD_OFFSET(BLENDFUNCTION, AlphaFormat)); /* BYTE */ + ok(sizeof(BLENDFUNCTION) == 4, "sizeof(BLENDFUNCTION) == %d (expected 4)", sizeof(BLENDFUNCTION)); + + /* CIEXYZ */ + ok(FIELD_OFFSET(CIEXYZ, ciexyzX) == 0, + "FIELD_OFFSET(CIEXYZ, ciexyzX) == %ld (expected 0)", + FIELD_OFFSET(CIEXYZ, ciexyzX)); /* FXPT2DOT30 */ + ok(FIELD_OFFSET(CIEXYZ, ciexyzY) == 4, + "FIELD_OFFSET(CIEXYZ, ciexyzY) == %ld (expected 4)", + FIELD_OFFSET(CIEXYZ, ciexyzY)); /* FXPT2DOT30 */ + ok(FIELD_OFFSET(CIEXYZ, ciexyzZ) == 8, + "FIELD_OFFSET(CIEXYZ, ciexyzZ) == %ld (expected 8)", + FIELD_OFFSET(CIEXYZ, ciexyzZ)); /* FXPT2DOT30 */ + ok(sizeof(CIEXYZ) == 12, "sizeof(CIEXYZ) == %d (expected 12)", sizeof(CIEXYZ)); + + /* DISPLAY_DEVICEA */ + ok(FIELD_OFFSET(DISPLAY_DEVICEA, cb) == 0, + "FIELD_OFFSET(DISPLAY_DEVICEA, cb) == %ld (expected 0)", + FIELD_OFFSET(DISPLAY_DEVICEA, cb)); /* DWORD */ + ok(FIELD_OFFSET(DISPLAY_DEVICEA, DeviceName) == 4, + "FIELD_OFFSET(DISPLAY_DEVICEA, DeviceName) == %ld (expected 4)", + FIELD_OFFSET(DISPLAY_DEVICEA, DeviceName)); /* CHAR[32] */ + ok(FIELD_OFFSET(DISPLAY_DEVICEA, DeviceString) == 36, + "FIELD_OFFSET(DISPLAY_DEVICEA, DeviceString) == %ld (expected 36)", + FIELD_OFFSET(DISPLAY_DEVICEA, DeviceString)); /* CHAR[128] */ + ok(FIELD_OFFSET(DISPLAY_DEVICEA, StateFlags) == 164, + "FIELD_OFFSET(DISPLAY_DEVICEA, StateFlags) == %ld (expected 164)", + FIELD_OFFSET(DISPLAY_DEVICEA, StateFlags)); /* DWORD */ + ok(FIELD_OFFSET(DISPLAY_DEVICEA, DeviceID) == 168, + "FIELD_OFFSET(DISPLAY_DEVICEA, DeviceID) == %ld (expected 168)", + FIELD_OFFSET(DISPLAY_DEVICEA, DeviceID)); /* CHAR[128] */ + ok(FIELD_OFFSET(DISPLAY_DEVICEA, DeviceKey) == 296, + "FIELD_OFFSET(DISPLAY_DEVICEA, DeviceKey) == %ld (expected 296)", + FIELD_OFFSET(DISPLAY_DEVICEA, DeviceKey)); /* CHAR[128] */ + ok(sizeof(DISPLAY_DEVICEA) == 424, "sizeof(DISPLAY_DEVICEA) == %d (expected 424)", sizeof(DISPLAY_DEVICEA)); + + /* DISPLAY_DEVICEW */ + ok(FIELD_OFFSET(DISPLAY_DEVICEW, cb) == 0, + "FIELD_OFFSET(DISPLAY_DEVICEW, cb) == %ld (expected 0)", + FIELD_OFFSET(DISPLAY_DEVICEW, cb)); /* DWORD */ + ok(FIELD_OFFSET(DISPLAY_DEVICEW, DeviceName) == 4, + "FIELD_OFFSET(DISPLAY_DEVICEW, DeviceName) == %ld (expected 4)", + FIELD_OFFSET(DISPLAY_DEVICEW, DeviceName)); /* WCHAR[32] */ + ok(FIELD_OFFSET(DISPLAY_DEVICEW, DeviceString) == 68, + "FIELD_OFFSET(DISPLAY_DEVICEW, DeviceString) == %ld (expected 68)", + FIELD_OFFSET(DISPLAY_DEVICEW, DeviceString)); /* WCHAR[128] */ + ok(FIELD_OFFSET(DISPLAY_DEVICEW, StateFlags) == 324, + "FIELD_OFFSET(DISPLAY_DEVICEW, StateFlags) == %ld (expected 324)", + FIELD_OFFSET(DISPLAY_DEVICEW, StateFlags)); /* DWORD */ + ok(FIELD_OFFSET(DISPLAY_DEVICEW, DeviceID) == 328, + "FIELD_OFFSET(DISPLAY_DEVICEW, DeviceID) == %ld (expected 328)", + FIELD_OFFSET(DISPLAY_DEVICEW, DeviceID)); /* WCHAR[128] */ + ok(FIELD_OFFSET(DISPLAY_DEVICEW, DeviceKey) == 584, + "FIELD_OFFSET(DISPLAY_DEVICEW, DeviceKey) == %ld (expected 584)", + FIELD_OFFSET(DISPLAY_DEVICEW, DeviceKey)); /* WCHAR[128] */ + ok(sizeof(DISPLAY_DEVICEW) == 840, "sizeof(DISPLAY_DEVICEW) == %d (expected 840)", sizeof(DISPLAY_DEVICEW)); + + /* DOCINFOA */ + ok(FIELD_OFFSET(DOCINFOA, cbSize) == 0, + "FIELD_OFFSET(DOCINFOA, cbSize) == %ld (expected 0)", + FIELD_OFFSET(DOCINFOA, cbSize)); /* INT */ + ok(FIELD_OFFSET(DOCINFOA, lpszDocName) == 4, + "FIELD_OFFSET(DOCINFOA, lpszDocName) == %ld (expected 4)", + FIELD_OFFSET(DOCINFOA, lpszDocName)); /* LPCSTR */ + ok(FIELD_OFFSET(DOCINFOA, lpszOutput) == 8, + "FIELD_OFFSET(DOCINFOA, lpszOutput) == %ld (expected 8)", + FIELD_OFFSET(DOCINFOA, lpszOutput)); /* LPCSTR */ + ok(FIELD_OFFSET(DOCINFOA, lpszDatatype) == 12, + "FIELD_OFFSET(DOCINFOA, lpszDatatype) == %ld (expected 12)", + FIELD_OFFSET(DOCINFOA, lpszDatatype)); /* LPCSTR */ + ok(FIELD_OFFSET(DOCINFOA, fwType) == 16, + "FIELD_OFFSET(DOCINFOA, fwType) == %ld (expected 16)", + FIELD_OFFSET(DOCINFOA, fwType)); /* DWORD */ + ok(sizeof(DOCINFOA) == 20, "sizeof(DOCINFOA) == %d (expected 20)", sizeof(DOCINFOA)); + + /* DOCINFOW */ + ok(FIELD_OFFSET(DOCINFOW, cbSize) == 0, + "FIELD_OFFSET(DOCINFOW, cbSize) == %ld (expected 0)", + FIELD_OFFSET(DOCINFOW, cbSize)); /* INT */ + ok(FIELD_OFFSET(DOCINFOW, lpszDocName) == 4, + "FIELD_OFFSET(DOCINFOW, lpszDocName) == %ld (expected 4)", + FIELD_OFFSET(DOCINFOW, lpszDocName)); /* LPCWSTR */ + ok(FIELD_OFFSET(DOCINFOW, lpszOutput) == 8, + "FIELD_OFFSET(DOCINFOW, lpszOutput) == %ld (expected 8)", + FIELD_OFFSET(DOCINFOW, lpszOutput)); /* LPCWSTR */ + ok(FIELD_OFFSET(DOCINFOW, lpszDatatype) == 12, + "FIELD_OFFSET(DOCINFOW, lpszDatatype) == %ld (expected 12)", + FIELD_OFFSET(DOCINFOW, lpszDatatype)); /* LPCWSTR */ + ok(FIELD_OFFSET(DOCINFOW, fwType) == 16, + "FIELD_OFFSET(DOCINFOW, fwType) == %ld (expected 16)", + FIELD_OFFSET(DOCINFOW, fwType)); /* DWORD */ + ok(sizeof(DOCINFOW) == 20, "sizeof(DOCINFOW) == %d (expected 20)", sizeof(DOCINFOW)); + + /* EMR */ + ok(FIELD_OFFSET(EMR, iType) == 0, + "FIELD_OFFSET(EMR, iType) == %ld (expected 0)", + FIELD_OFFSET(EMR, iType)); /* DWORD */ + ok(FIELD_OFFSET(EMR, nSize) == 4, + "FIELD_OFFSET(EMR, nSize) == %ld (expected 4)", + FIELD_OFFSET(EMR, nSize)); /* DWORD */ + ok(sizeof(EMR) == 8, "sizeof(EMR) == %d (expected 8)", sizeof(EMR)); + + /* EMRABORTPATH */ + ok(FIELD_OFFSET(EMRABORTPATH, emr) == 0, + "FIELD_OFFSET(EMRABORTPATH, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRABORTPATH, emr)); /* EMR */ + ok(sizeof(EMRABORTPATH) == 8, "sizeof(EMRABORTPATH) == %d (expected 8)", sizeof(EMRABORTPATH)); + + /* EMRANGLEARC */ + ok(FIELD_OFFSET(EMRANGLEARC, emr) == 0, + "FIELD_OFFSET(EMRANGLEARC, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRANGLEARC, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRANGLEARC, ptlCenter) == 8, + "FIELD_OFFSET(EMRANGLEARC, ptlCenter) == %ld (expected 8)", + FIELD_OFFSET(EMRANGLEARC, ptlCenter)); /* POINTL */ + ok(FIELD_OFFSET(EMRANGLEARC, nRadius) == 16, + "FIELD_OFFSET(EMRANGLEARC, nRadius) == %ld (expected 16)", + FIELD_OFFSET(EMRANGLEARC, nRadius)); /* DWORD */ + ok(FIELD_OFFSET(EMRANGLEARC, eStartAngle) == 20, + "FIELD_OFFSET(EMRANGLEARC, eStartAngle) == %ld (expected 20)", + FIELD_OFFSET(EMRANGLEARC, eStartAngle)); /* FLOAT */ + ok(FIELD_OFFSET(EMRANGLEARC, eSweepAngle) == 24, + "FIELD_OFFSET(EMRANGLEARC, eSweepAngle) == %ld (expected 24)", + FIELD_OFFSET(EMRANGLEARC, eSweepAngle)); /* FLOAT */ + ok(sizeof(EMRANGLEARC) == 28, "sizeof(EMRANGLEARC) == %d (expected 28)", sizeof(EMRANGLEARC)); + + /* EMRARC */ + ok(FIELD_OFFSET(EMRARC, emr) == 0, + "FIELD_OFFSET(EMRARC, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRARC, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRARC, rclBox) == 8, + "FIELD_OFFSET(EMRARC, rclBox) == %ld (expected 8)", + FIELD_OFFSET(EMRARC, rclBox)); /* RECTL */ + ok(FIELD_OFFSET(EMRARC, ptlStart) == 24, + "FIELD_OFFSET(EMRARC, ptlStart) == %ld (expected 24)", + FIELD_OFFSET(EMRARC, ptlStart)); /* POINTL */ + ok(FIELD_OFFSET(EMRARC, ptlEnd) == 32, + "FIELD_OFFSET(EMRARC, ptlEnd) == %ld (expected 32)", + FIELD_OFFSET(EMRARC, ptlEnd)); /* POINTL */ + ok(sizeof(EMRARC) == 40, "sizeof(EMRARC) == %d (expected 40)", sizeof(EMRARC)); + + /* EMRBITBLT */ + ok(FIELD_OFFSET(EMRBITBLT, emr) == 0, + "FIELD_OFFSET(EMRBITBLT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRBITBLT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRBITBLT, rclBounds) == 8, + "FIELD_OFFSET(EMRBITBLT, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRBITBLT, rclBounds)); /* RECTL */ + ok(FIELD_OFFSET(EMRBITBLT, xDest) == 24, + "FIELD_OFFSET(EMRBITBLT, xDest) == %ld (expected 24)", + FIELD_OFFSET(EMRBITBLT, xDest)); /* LONG */ + ok(FIELD_OFFSET(EMRBITBLT, yDest) == 28, + "FIELD_OFFSET(EMRBITBLT, yDest) == %ld (expected 28)", + FIELD_OFFSET(EMRBITBLT, yDest)); /* LONG */ + ok(FIELD_OFFSET(EMRBITBLT, cxDest) == 32, + "FIELD_OFFSET(EMRBITBLT, cxDest) == %ld (expected 32)", + FIELD_OFFSET(EMRBITBLT, cxDest)); /* LONG */ + ok(FIELD_OFFSET(EMRBITBLT, cyDest) == 36, + "FIELD_OFFSET(EMRBITBLT, cyDest) == %ld (expected 36)", + FIELD_OFFSET(EMRBITBLT, cyDest)); /* LONG */ + ok(FIELD_OFFSET(EMRBITBLT, dwRop) == 40, + "FIELD_OFFSET(EMRBITBLT, dwRop) == %ld (expected 40)", + FIELD_OFFSET(EMRBITBLT, dwRop)); /* DWORD */ + ok(FIELD_OFFSET(EMRBITBLT, xSrc) == 44, + "FIELD_OFFSET(EMRBITBLT, xSrc) == %ld (expected 44)", + FIELD_OFFSET(EMRBITBLT, xSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRBITBLT, ySrc) == 48, + "FIELD_OFFSET(EMRBITBLT, ySrc) == %ld (expected 48)", + FIELD_OFFSET(EMRBITBLT, ySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRBITBLT, xformSrc) == 52, + "FIELD_OFFSET(EMRBITBLT, xformSrc) == %ld (expected 52)", + FIELD_OFFSET(EMRBITBLT, xformSrc)); /* XFORM */ + ok(FIELD_OFFSET(EMRBITBLT, crBkColorSrc) == 76, + "FIELD_OFFSET(EMRBITBLT, crBkColorSrc) == %ld (expected 76)", + FIELD_OFFSET(EMRBITBLT, crBkColorSrc)); /* COLORREF */ + ok(FIELD_OFFSET(EMRBITBLT, iUsageSrc) == 80, + "FIELD_OFFSET(EMRBITBLT, iUsageSrc) == %ld (expected 80)", + FIELD_OFFSET(EMRBITBLT, iUsageSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRBITBLT, offBmiSrc) == 84, + "FIELD_OFFSET(EMRBITBLT, offBmiSrc) == %ld (expected 84)", + FIELD_OFFSET(EMRBITBLT, offBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRBITBLT, cbBmiSrc) == 88, + "FIELD_OFFSET(EMRBITBLT, cbBmiSrc) == %ld (expected 88)", + FIELD_OFFSET(EMRBITBLT, cbBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRBITBLT, offBitsSrc) == 92, + "FIELD_OFFSET(EMRBITBLT, offBitsSrc) == %ld (expected 92)", + FIELD_OFFSET(EMRBITBLT, offBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRBITBLT, cbBitsSrc) == 96, + "FIELD_OFFSET(EMRBITBLT, cbBitsSrc) == %ld (expected 96)", + FIELD_OFFSET(EMRBITBLT, cbBitsSrc)); /* DWORD */ + ok(sizeof(EMRBITBLT) == 100, "sizeof(EMRBITBLT) == %d (expected 100)", sizeof(EMRBITBLT)); + + /* EMRCREATEDIBPATTERNBRUSHPT */ + ok(FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, emr) == 0, + "FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, ihBrush) == 8, + "FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, ihBrush) == %ld (expected 8)", + FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, ihBrush)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, iUsage) == 12, + "FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, iUsage) == %ld (expected 12)", + FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, iUsage)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBmi) == 16, + "FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBmi) == %ld (expected 16)", + FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBmi)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBmi) == 20, + "FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBmi) == %ld (expected 20)", + FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBmi)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBits) == 24, + "FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBits) == %ld (expected 24)", + FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBits)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBits) == 28, + "FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBits) == %ld (expected 28)", + FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBits)); /* DWORD */ + ok(sizeof(EMRCREATEDIBPATTERNBRUSHPT) == 32, "sizeof(EMRCREATEDIBPATTERNBRUSHPT) == %d (expected 32)", sizeof(EMRCREATEDIBPATTERNBRUSHPT)); + + /* EMRCREATEMONOBRUSH */ + ok(FIELD_OFFSET(EMRCREATEMONOBRUSH, emr) == 0, + "FIELD_OFFSET(EMRCREATEMONOBRUSH, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRCREATEMONOBRUSH, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRCREATEMONOBRUSH, ihBrush) == 8, + "FIELD_OFFSET(EMRCREATEMONOBRUSH, ihBrush) == %ld (expected 8)", + FIELD_OFFSET(EMRCREATEMONOBRUSH, ihBrush)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEMONOBRUSH, iUsage) == 12, + "FIELD_OFFSET(EMRCREATEMONOBRUSH, iUsage) == %ld (expected 12)", + FIELD_OFFSET(EMRCREATEMONOBRUSH, iUsage)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEMONOBRUSH, offBmi) == 16, + "FIELD_OFFSET(EMRCREATEMONOBRUSH, offBmi) == %ld (expected 16)", + FIELD_OFFSET(EMRCREATEMONOBRUSH, offBmi)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBmi) == 20, + "FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBmi) == %ld (expected 20)", + FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBmi)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEMONOBRUSH, offBits) == 24, + "FIELD_OFFSET(EMRCREATEMONOBRUSH, offBits) == %ld (expected 24)", + FIELD_OFFSET(EMRCREATEMONOBRUSH, offBits)); /* DWORD */ + ok(FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBits) == 28, + "FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBits) == %ld (expected 28)", + FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBits)); /* DWORD */ + ok(sizeof(EMRCREATEMONOBRUSH) == 32, "sizeof(EMRCREATEMONOBRUSH) == %d (expected 32)", sizeof(EMRCREATEMONOBRUSH)); + + /* EMRDELETECOLORSPACE */ + ok(FIELD_OFFSET(EMRDELETECOLORSPACE, emr) == 0, + "FIELD_OFFSET(EMRDELETECOLORSPACE, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRDELETECOLORSPACE, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRDELETECOLORSPACE, ihCS) == 8, + "FIELD_OFFSET(EMRDELETECOLORSPACE, ihCS) == %ld (expected 8)", + FIELD_OFFSET(EMRDELETECOLORSPACE, ihCS)); /* DWORD */ + ok(sizeof(EMRDELETECOLORSPACE) == 12, "sizeof(EMRDELETECOLORSPACE) == %d (expected 12)", sizeof(EMRDELETECOLORSPACE)); + + /* EMRDELETEOBJECT */ + ok(FIELD_OFFSET(EMRDELETEOBJECT, emr) == 0, + "FIELD_OFFSET(EMRDELETEOBJECT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRDELETEOBJECT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRDELETEOBJECT, ihObject) == 8, + "FIELD_OFFSET(EMRDELETEOBJECT, ihObject) == %ld (expected 8)", + FIELD_OFFSET(EMRDELETEOBJECT, ihObject)); /* DWORD */ + ok(sizeof(EMRDELETEOBJECT) == 12, "sizeof(EMRDELETEOBJECT) == %d (expected 12)", sizeof(EMRDELETEOBJECT)); + + /* EMRELLIPSE */ + ok(FIELD_OFFSET(EMRELLIPSE, emr) == 0, + "FIELD_OFFSET(EMRELLIPSE, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRELLIPSE, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRELLIPSE, rclBox) == 8, + "FIELD_OFFSET(EMRELLIPSE, rclBox) == %ld (expected 8)", + FIELD_OFFSET(EMRELLIPSE, rclBox)); /* RECTL */ + ok(sizeof(EMRELLIPSE) == 24, "sizeof(EMRELLIPSE) == %d (expected 24)", sizeof(EMRELLIPSE)); + + /* EMREOF */ + ok(FIELD_OFFSET(EMREOF, emr) == 0, + "FIELD_OFFSET(EMREOF, emr) == %ld (expected 0)", + FIELD_OFFSET(EMREOF, emr)); /* EMR */ + ok(FIELD_OFFSET(EMREOF, nPalEntries) == 8, + "FIELD_OFFSET(EMREOF, nPalEntries) == %ld (expected 8)", + FIELD_OFFSET(EMREOF, nPalEntries)); /* DWORD */ + ok(FIELD_OFFSET(EMREOF, offPalEntries) == 12, + "FIELD_OFFSET(EMREOF, offPalEntries) == %ld (expected 12)", + FIELD_OFFSET(EMREOF, offPalEntries)); /* DWORD */ + ok(FIELD_OFFSET(EMREOF, nSizeLast) == 16, + "FIELD_OFFSET(EMREOF, nSizeLast) == %ld (expected 16)", + FIELD_OFFSET(EMREOF, nSizeLast)); /* DWORD */ + ok(sizeof(EMREOF) == 20, "sizeof(EMREOF) == %d (expected 20)", sizeof(EMREOF)); + + /* EMREXCLUDECLIPRECT */ + ok(FIELD_OFFSET(EMREXCLUDECLIPRECT, emr) == 0, + "FIELD_OFFSET(EMREXCLUDECLIPRECT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMREXCLUDECLIPRECT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMREXCLUDECLIPRECT, rclClip) == 8, + "FIELD_OFFSET(EMREXCLUDECLIPRECT, rclClip) == %ld (expected 8)", + FIELD_OFFSET(EMREXCLUDECLIPRECT, rclClip)); /* RECTL */ + ok(sizeof(EMREXCLUDECLIPRECT) == 24, "sizeof(EMREXCLUDECLIPRECT) == %d (expected 24)", sizeof(EMREXCLUDECLIPRECT)); + + /* EMREXTFLOODFILL */ + ok(FIELD_OFFSET(EMREXTFLOODFILL, emr) == 0, + "FIELD_OFFSET(EMREXTFLOODFILL, emr) == %ld (expected 0)", + FIELD_OFFSET(EMREXTFLOODFILL, emr)); /* EMR */ + ok(FIELD_OFFSET(EMREXTFLOODFILL, ptlStart) == 8, + "FIELD_OFFSET(EMREXTFLOODFILL, ptlStart) == %ld (expected 8)", + FIELD_OFFSET(EMREXTFLOODFILL, ptlStart)); /* POINTL */ + ok(FIELD_OFFSET(EMREXTFLOODFILL, crColor) == 16, + "FIELD_OFFSET(EMREXTFLOODFILL, crColor) == %ld (expected 16)", + FIELD_OFFSET(EMREXTFLOODFILL, crColor)); /* COLORREF */ + ok(FIELD_OFFSET(EMREXTFLOODFILL, iMode) == 20, + "FIELD_OFFSET(EMREXTFLOODFILL, iMode) == %ld (expected 20)", + FIELD_OFFSET(EMREXTFLOODFILL, iMode)); /* DWORD */ + ok(sizeof(EMREXTFLOODFILL) == 24, "sizeof(EMREXTFLOODFILL) == %d (expected 24)", sizeof(EMREXTFLOODFILL)); + + /* EMRFILLPATH */ + ok(FIELD_OFFSET(EMRFILLPATH, emr) == 0, + "FIELD_OFFSET(EMRFILLPATH, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRFILLPATH, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRFILLPATH, rclBounds) == 8, + "FIELD_OFFSET(EMRFILLPATH, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRFILLPATH, rclBounds)); /* RECTL */ + ok(sizeof(EMRFILLPATH) == 24, "sizeof(EMRFILLPATH) == %d (expected 24)", sizeof(EMRFILLPATH)); + + /* EMRFORMAT */ + ok(FIELD_OFFSET(EMRFORMAT, signature) == 0, + "FIELD_OFFSET(EMRFORMAT, signature) == %ld (expected 0)", + FIELD_OFFSET(EMRFORMAT, signature)); /* DWORD */ + ok(FIELD_OFFSET(EMRFORMAT, nVersion) == 4, + "FIELD_OFFSET(EMRFORMAT, nVersion) == %ld (expected 4)", + FIELD_OFFSET(EMRFORMAT, nVersion)); /* DWORD */ + ok(FIELD_OFFSET(EMRFORMAT, cbData) == 8, + "FIELD_OFFSET(EMRFORMAT, cbData) == %ld (expected 8)", + FIELD_OFFSET(EMRFORMAT, cbData)); /* DWORD */ + ok(FIELD_OFFSET(EMRFORMAT, offData) == 12, + "FIELD_OFFSET(EMRFORMAT, offData) == %ld (expected 12)", + FIELD_OFFSET(EMRFORMAT, offData)); /* DWORD */ + ok(sizeof(EMRFORMAT) == 16, "sizeof(EMRFORMAT) == %d (expected 16)", sizeof(EMRFORMAT)); + + /* EMRLINETO */ + ok(FIELD_OFFSET(EMRLINETO, emr) == 0, + "FIELD_OFFSET(EMRLINETO, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRLINETO, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRLINETO, ptl) == 8, + "FIELD_OFFSET(EMRLINETO, ptl) == %ld (expected 8)", + FIELD_OFFSET(EMRLINETO, ptl)); /* POINTL */ + ok(sizeof(EMRLINETO) == 16, "sizeof(EMRLINETO) == %d (expected 16)", sizeof(EMRLINETO)); + + /* EMRMASKBLT */ + ok(FIELD_OFFSET(EMRMASKBLT, emr) == 0, + "FIELD_OFFSET(EMRMASKBLT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRMASKBLT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRMASKBLT, rclBounds) == 8, + "FIELD_OFFSET(EMRMASKBLT, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRMASKBLT, rclBounds)); /* RECTL */ + ok(FIELD_OFFSET(EMRMASKBLT, xDest) == 24, + "FIELD_OFFSET(EMRMASKBLT, xDest) == %ld (expected 24)", + FIELD_OFFSET(EMRMASKBLT, xDest)); /* LONG */ + ok(FIELD_OFFSET(EMRMASKBLT, yDest) == 28, + "FIELD_OFFSET(EMRMASKBLT, yDest) == %ld (expected 28)", + FIELD_OFFSET(EMRMASKBLT, yDest)); /* LONG */ + ok(FIELD_OFFSET(EMRMASKBLT, cxDest) == 32, + "FIELD_OFFSET(EMRMASKBLT, cxDest) == %ld (expected 32)", + FIELD_OFFSET(EMRMASKBLT, cxDest)); /* LONG */ + ok(FIELD_OFFSET(EMRMASKBLT, cyDest) == 36, + "FIELD_OFFSET(EMRMASKBLT, cyDest) == %ld (expected 36)", + FIELD_OFFSET(EMRMASKBLT, cyDest)); /* LONG */ + ok(FIELD_OFFSET(EMRMASKBLT, dwRop) == 40, + "FIELD_OFFSET(EMRMASKBLT, dwRop) == %ld (expected 40)", + FIELD_OFFSET(EMRMASKBLT, dwRop)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, xSrc) == 44, + "FIELD_OFFSET(EMRMASKBLT, xSrc) == %ld (expected 44)", + FIELD_OFFSET(EMRMASKBLT, xSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRMASKBLT, ySrc) == 48, + "FIELD_OFFSET(EMRMASKBLT, ySrc) == %ld (expected 48)", + FIELD_OFFSET(EMRMASKBLT, ySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRMASKBLT, xformSrc) == 52, + "FIELD_OFFSET(EMRMASKBLT, xformSrc) == %ld (expected 52)", + FIELD_OFFSET(EMRMASKBLT, xformSrc)); /* XFORM */ + ok(FIELD_OFFSET(EMRMASKBLT, crBkColorSrc) == 76, + "FIELD_OFFSET(EMRMASKBLT, crBkColorSrc) == %ld (expected 76)", + FIELD_OFFSET(EMRMASKBLT, crBkColorSrc)); /* COLORREF */ + ok(FIELD_OFFSET(EMRMASKBLT, iUsageSrc) == 80, + "FIELD_OFFSET(EMRMASKBLT, iUsageSrc) == %ld (expected 80)", + FIELD_OFFSET(EMRMASKBLT, iUsageSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, offBmiSrc) == 84, + "FIELD_OFFSET(EMRMASKBLT, offBmiSrc) == %ld (expected 84)", + FIELD_OFFSET(EMRMASKBLT, offBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, cbBmiSrc) == 88, + "FIELD_OFFSET(EMRMASKBLT, cbBmiSrc) == %ld (expected 88)", + FIELD_OFFSET(EMRMASKBLT, cbBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, offBitsSrc) == 92, + "FIELD_OFFSET(EMRMASKBLT, offBitsSrc) == %ld (expected 92)", + FIELD_OFFSET(EMRMASKBLT, offBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, cbBitsSrc) == 96, + "FIELD_OFFSET(EMRMASKBLT, cbBitsSrc) == %ld (expected 96)", + FIELD_OFFSET(EMRMASKBLT, cbBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, xMask) == 100, + "FIELD_OFFSET(EMRMASKBLT, xMask) == %ld (expected 100)", + FIELD_OFFSET(EMRMASKBLT, xMask)); /* LONG */ + ok(FIELD_OFFSET(EMRMASKBLT, yMask) == 104, + "FIELD_OFFSET(EMRMASKBLT, yMask) == %ld (expected 104)", + FIELD_OFFSET(EMRMASKBLT, yMask)); /* LONG */ + ok(FIELD_OFFSET(EMRMASKBLT, iUsageMask) == 108, + "FIELD_OFFSET(EMRMASKBLT, iUsageMask) == %ld (expected 108)", + FIELD_OFFSET(EMRMASKBLT, iUsageMask)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, offBmiMask) == 112, + "FIELD_OFFSET(EMRMASKBLT, offBmiMask) == %ld (expected 112)", + FIELD_OFFSET(EMRMASKBLT, offBmiMask)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, cbBmiMask) == 116, + "FIELD_OFFSET(EMRMASKBLT, cbBmiMask) == %ld (expected 116)", + FIELD_OFFSET(EMRMASKBLT, cbBmiMask)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, offBitsMask) == 120, + "FIELD_OFFSET(EMRMASKBLT, offBitsMask) == %ld (expected 120)", + FIELD_OFFSET(EMRMASKBLT, offBitsMask)); /* DWORD */ + ok(FIELD_OFFSET(EMRMASKBLT, cbBitsMask) == 124, + "FIELD_OFFSET(EMRMASKBLT, cbBitsMask) == %ld (expected 124)", + FIELD_OFFSET(EMRMASKBLT, cbBitsMask)); /* DWORD */ + ok(sizeof(EMRMASKBLT) == 128, "sizeof(EMRMASKBLT) == %d (expected 128)", sizeof(EMRMASKBLT)); + + /* EMRMODIFYWORLDTRANSFORM */ + ok(FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, emr) == 0, + "FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, xform) == 8, + "FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, xform) == %ld (expected 8)", + FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, xform)); /* XFORM */ + ok(FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, iMode) == 32, + "FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, iMode) == %ld (expected 32)", + FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, iMode)); /* DWORD */ + ok(sizeof(EMRMODIFYWORLDTRANSFORM) == 36, "sizeof(EMRMODIFYWORLDTRANSFORM) == %d (expected 36)", sizeof(EMRMODIFYWORLDTRANSFORM)); + + /* EMROFFSETCLIPRGN */ + ok(FIELD_OFFSET(EMROFFSETCLIPRGN, emr) == 0, + "FIELD_OFFSET(EMROFFSETCLIPRGN, emr) == %ld (expected 0)", + FIELD_OFFSET(EMROFFSETCLIPRGN, emr)); /* EMR */ + ok(FIELD_OFFSET(EMROFFSETCLIPRGN, ptlOffset) == 8, + "FIELD_OFFSET(EMROFFSETCLIPRGN, ptlOffset) == %ld (expected 8)", + FIELD_OFFSET(EMROFFSETCLIPRGN, ptlOffset)); /* POINTL */ + ok(sizeof(EMROFFSETCLIPRGN) == 16, "sizeof(EMROFFSETCLIPRGN) == %d (expected 16)", sizeof(EMROFFSETCLIPRGN)); + + /* EMRPLGBLT */ + ok(FIELD_OFFSET(EMRPLGBLT, emr) == 0, + "FIELD_OFFSET(EMRPLGBLT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRPLGBLT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRPLGBLT, rclBounds) == 8, + "FIELD_OFFSET(EMRPLGBLT, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRPLGBLT, rclBounds)); /* RECTL */ + ok(FIELD_OFFSET(EMRPLGBLT, aptlDst) == 24, + "FIELD_OFFSET(EMRPLGBLT, aptlDst) == %ld (expected 24)", + FIELD_OFFSET(EMRPLGBLT, aptlDst)); /* POINTL[3] */ + ok(FIELD_OFFSET(EMRPLGBLT, xSrc) == 48, + "FIELD_OFFSET(EMRPLGBLT, xSrc) == %ld (expected 48)", + FIELD_OFFSET(EMRPLGBLT, xSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRPLGBLT, ySrc) == 52, + "FIELD_OFFSET(EMRPLGBLT, ySrc) == %ld (expected 52)", + FIELD_OFFSET(EMRPLGBLT, ySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRPLGBLT, cxSrc) == 56, + "FIELD_OFFSET(EMRPLGBLT, cxSrc) == %ld (expected 56)", + FIELD_OFFSET(EMRPLGBLT, cxSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRPLGBLT, cySrc) == 60, + "FIELD_OFFSET(EMRPLGBLT, cySrc) == %ld (expected 60)", + FIELD_OFFSET(EMRPLGBLT, cySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRPLGBLT, xformSrc) == 64, + "FIELD_OFFSET(EMRPLGBLT, xformSrc) == %ld (expected 64)", + FIELD_OFFSET(EMRPLGBLT, xformSrc)); /* XFORM */ + ok(FIELD_OFFSET(EMRPLGBLT, crBkColorSrc) == 88, + "FIELD_OFFSET(EMRPLGBLT, crBkColorSrc) == %ld (expected 88)", + FIELD_OFFSET(EMRPLGBLT, crBkColorSrc)); /* COLORREF */ + ok(FIELD_OFFSET(EMRPLGBLT, iUsageSrc) == 92, + "FIELD_OFFSET(EMRPLGBLT, iUsageSrc) == %ld (expected 92)", + FIELD_OFFSET(EMRPLGBLT, iUsageSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, offBmiSrc) == 96, + "FIELD_OFFSET(EMRPLGBLT, offBmiSrc) == %ld (expected 96)", + FIELD_OFFSET(EMRPLGBLT, offBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, cbBmiSrc) == 100, + "FIELD_OFFSET(EMRPLGBLT, cbBmiSrc) == %ld (expected 100)", + FIELD_OFFSET(EMRPLGBLT, cbBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, offBitsSrc) == 104, + "FIELD_OFFSET(EMRPLGBLT, offBitsSrc) == %ld (expected 104)", + FIELD_OFFSET(EMRPLGBLT, offBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, cbBitsSrc) == 108, + "FIELD_OFFSET(EMRPLGBLT, cbBitsSrc) == %ld (expected 108)", + FIELD_OFFSET(EMRPLGBLT, cbBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, xMask) == 112, + "FIELD_OFFSET(EMRPLGBLT, xMask) == %ld (expected 112)", + FIELD_OFFSET(EMRPLGBLT, xMask)); /* LONG */ + ok(FIELD_OFFSET(EMRPLGBLT, yMask) == 116, + "FIELD_OFFSET(EMRPLGBLT, yMask) == %ld (expected 116)", + FIELD_OFFSET(EMRPLGBLT, yMask)); /* LONG */ + ok(FIELD_OFFSET(EMRPLGBLT, iUsageMask) == 120, + "FIELD_OFFSET(EMRPLGBLT, iUsageMask) == %ld (expected 120)", + FIELD_OFFSET(EMRPLGBLT, iUsageMask)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, offBmiMask) == 124, + "FIELD_OFFSET(EMRPLGBLT, offBmiMask) == %ld (expected 124)", + FIELD_OFFSET(EMRPLGBLT, offBmiMask)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, cbBmiMask) == 128, + "FIELD_OFFSET(EMRPLGBLT, cbBmiMask) == %ld (expected 128)", + FIELD_OFFSET(EMRPLGBLT, cbBmiMask)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, offBitsMask) == 132, + "FIELD_OFFSET(EMRPLGBLT, offBitsMask) == %ld (expected 132)", + FIELD_OFFSET(EMRPLGBLT, offBitsMask)); /* DWORD */ + ok(FIELD_OFFSET(EMRPLGBLT, cbBitsMask) == 136, + "FIELD_OFFSET(EMRPLGBLT, cbBitsMask) == %ld (expected 136)", + FIELD_OFFSET(EMRPLGBLT, cbBitsMask)); /* DWORD */ + ok(sizeof(EMRPLGBLT) == 140, "sizeof(EMRPLGBLT) == %d (expected 140)", sizeof(EMRPLGBLT)); + + /* EMRPOLYLINE */ + ok(FIELD_OFFSET(EMRPOLYLINE, emr) == 0, + "FIELD_OFFSET(EMRPOLYLINE, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRPOLYLINE, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRPOLYLINE, rclBounds) == 8, + "FIELD_OFFSET(EMRPOLYLINE, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRPOLYLINE, rclBounds)); /* RECTL */ + ok(FIELD_OFFSET(EMRPOLYLINE, cptl) == 24, + "FIELD_OFFSET(EMRPOLYLINE, cptl) == %ld (expected 24)", + FIELD_OFFSET(EMRPOLYLINE, cptl)); /* DWORD */ + ok(FIELD_OFFSET(EMRPOLYLINE, aptl) == 28, + "FIELD_OFFSET(EMRPOLYLINE, aptl) == %ld (expected 28)", + FIELD_OFFSET(EMRPOLYLINE, aptl)); /* POINTL[1] */ + ok(sizeof(EMRPOLYLINE) == 36, "sizeof(EMRPOLYLINE) == %d (expected 36)", sizeof(EMRPOLYLINE)); + + /* EMRPOLYPOLYLINE */ + ok(FIELD_OFFSET(EMRPOLYPOLYLINE, emr) == 0, + "FIELD_OFFSET(EMRPOLYPOLYLINE, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRPOLYPOLYLINE, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRPOLYPOLYLINE, rclBounds) == 8, + "FIELD_OFFSET(EMRPOLYPOLYLINE, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRPOLYPOLYLINE, rclBounds)); /* RECTL */ + ok(FIELD_OFFSET(EMRPOLYPOLYLINE, nPolys) == 24, + "FIELD_OFFSET(EMRPOLYPOLYLINE, nPolys) == %ld (expected 24)", + FIELD_OFFSET(EMRPOLYPOLYLINE, nPolys)); /* DWORD */ + ok(FIELD_OFFSET(EMRPOLYPOLYLINE, cptl) == 28, + "FIELD_OFFSET(EMRPOLYPOLYLINE, cptl) == %ld (expected 28)", + FIELD_OFFSET(EMRPOLYPOLYLINE, cptl)); /* DWORD */ + ok(FIELD_OFFSET(EMRPOLYPOLYLINE, aPolyCounts) == 32, + "FIELD_OFFSET(EMRPOLYPOLYLINE, aPolyCounts) == %ld (expected 32)", + FIELD_OFFSET(EMRPOLYPOLYLINE, aPolyCounts)); /* DWORD[1] */ + ok(FIELD_OFFSET(EMRPOLYPOLYLINE, aptl) == 36, + "FIELD_OFFSET(EMRPOLYPOLYLINE, aptl) == %ld (expected 36)", + FIELD_OFFSET(EMRPOLYPOLYLINE, aptl)); /* POINTL[1] */ + ok(sizeof(EMRPOLYPOLYLINE) == 44, "sizeof(EMRPOLYPOLYLINE) == %d (expected 44)", sizeof(EMRPOLYPOLYLINE)); + + /* EMRRESIZEPALETTE */ + ok(FIELD_OFFSET(EMRRESIZEPALETTE, emr) == 0, + "FIELD_OFFSET(EMRRESIZEPALETTE, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRRESIZEPALETTE, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRRESIZEPALETTE, ihPal) == 8, + "FIELD_OFFSET(EMRRESIZEPALETTE, ihPal) == %ld (expected 8)", + FIELD_OFFSET(EMRRESIZEPALETTE, ihPal)); /* DWORD */ + ok(FIELD_OFFSET(EMRRESIZEPALETTE, cEntries) == 12, + "FIELD_OFFSET(EMRRESIZEPALETTE, cEntries) == %ld (expected 12)", + FIELD_OFFSET(EMRRESIZEPALETTE, cEntries)); /* DWORD */ + ok(sizeof(EMRRESIZEPALETTE) == 16, "sizeof(EMRRESIZEPALETTE) == %d (expected 16)", sizeof(EMRRESIZEPALETTE)); + + /* EMRRESTOREDC */ + ok(FIELD_OFFSET(EMRRESTOREDC, emr) == 0, + "FIELD_OFFSET(EMRRESTOREDC, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRRESTOREDC, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRRESTOREDC, iRelative) == 8, + "FIELD_OFFSET(EMRRESTOREDC, iRelative) == %ld (expected 8)", + FIELD_OFFSET(EMRRESTOREDC, iRelative)); /* LONG */ + ok(sizeof(EMRRESTOREDC) == 12, "sizeof(EMRRESTOREDC) == %d (expected 12)", sizeof(EMRRESTOREDC)); + + /* EMRROUNDRECT */ + ok(FIELD_OFFSET(EMRROUNDRECT, emr) == 0, + "FIELD_OFFSET(EMRROUNDRECT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRROUNDRECT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRROUNDRECT, rclBox) == 8, + "FIELD_OFFSET(EMRROUNDRECT, rclBox) == %ld (expected 8)", + FIELD_OFFSET(EMRROUNDRECT, rclBox)); /* RECTL */ + ok(FIELD_OFFSET(EMRROUNDRECT, szlCorner) == 24, + "FIELD_OFFSET(EMRROUNDRECT, szlCorner) == %ld (expected 24)", + FIELD_OFFSET(EMRROUNDRECT, szlCorner)); /* SIZEL */ + ok(sizeof(EMRROUNDRECT) == 32, "sizeof(EMRROUNDRECT) == %d (expected 32)", sizeof(EMRROUNDRECT)); + + /* EMRSCALEVIEWPORTEXTEX */ + ok(FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, emr) == 0, + "FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xNum) == 8, + "FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xNum) == %ld (expected 8)", + FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xNum)); /* LONG */ + ok(FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xDenom) == 12, + "FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xDenom) == %ld (expected 12)", + FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xDenom)); /* LONG */ + ok(FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yNum) == 16, + "FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yNum) == %ld (expected 16)", + FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yNum)); /* LONG */ + ok(FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yDenom) == 20, + "FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yDenom) == %ld (expected 20)", + FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yDenom)); /* LONG */ + ok(sizeof(EMRSCALEVIEWPORTEXTEX) == 24, "sizeof(EMRSCALEVIEWPORTEXTEX) == %d (expected 24)", sizeof(EMRSCALEVIEWPORTEXTEX)); + + /* EMRSELECTCLIPPATH */ + ok(FIELD_OFFSET(EMRSELECTCLIPPATH, emr) == 0, + "FIELD_OFFSET(EMRSELECTCLIPPATH, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSELECTCLIPPATH, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSELECTCLIPPATH, iMode) == 8, + "FIELD_OFFSET(EMRSELECTCLIPPATH, iMode) == %ld (expected 8)", + FIELD_OFFSET(EMRSELECTCLIPPATH, iMode)); /* DWORD */ + ok(sizeof(EMRSELECTCLIPPATH) == 12, "sizeof(EMRSELECTCLIPPATH) == %d (expected 12)", sizeof(EMRSELECTCLIPPATH)); + + /* EMRSELECTPALETTE */ + ok(FIELD_OFFSET(EMRSELECTPALETTE, emr) == 0, + "FIELD_OFFSET(EMRSELECTPALETTE, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSELECTPALETTE, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSELECTPALETTE, ihPal) == 8, + "FIELD_OFFSET(EMRSELECTPALETTE, ihPal) == %ld (expected 8)", + FIELD_OFFSET(EMRSELECTPALETTE, ihPal)); /* DWORD */ + ok(sizeof(EMRSELECTPALETTE) == 12, "sizeof(EMRSELECTPALETTE) == %d (expected 12)", sizeof(EMRSELECTPALETTE)); + + /* EMRSETARCDIRECTION */ + ok(FIELD_OFFSET(EMRSETARCDIRECTION, emr) == 0, + "FIELD_OFFSET(EMRSETARCDIRECTION, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETARCDIRECTION, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETARCDIRECTION, iArcDirection) == 8, + "FIELD_OFFSET(EMRSETARCDIRECTION, iArcDirection) == %ld (expected 8)", + FIELD_OFFSET(EMRSETARCDIRECTION, iArcDirection)); /* DWORD */ + ok(sizeof(EMRSETARCDIRECTION) == 12, "sizeof(EMRSETARCDIRECTION) == %d (expected 12)", sizeof(EMRSETARCDIRECTION)); + + /* EMRSETBKCOLOR */ + ok(FIELD_OFFSET(EMRSETBKCOLOR, emr) == 0, + "FIELD_OFFSET(EMRSETBKCOLOR, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETBKCOLOR, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETBKCOLOR, crColor) == 8, + "FIELD_OFFSET(EMRSETBKCOLOR, crColor) == %ld (expected 8)", + FIELD_OFFSET(EMRSETBKCOLOR, crColor)); /* COLORREF */ + ok(sizeof(EMRSETBKCOLOR) == 12, "sizeof(EMRSETBKCOLOR) == %d (expected 12)", sizeof(EMRSETBKCOLOR)); + + /* EMRSETBRUSHORGEX */ + ok(FIELD_OFFSET(EMRSETBRUSHORGEX, emr) == 0, + "FIELD_OFFSET(EMRSETBRUSHORGEX, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETBRUSHORGEX, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETBRUSHORGEX, ptlOrigin) == 8, + "FIELD_OFFSET(EMRSETBRUSHORGEX, ptlOrigin) == %ld (expected 8)", + FIELD_OFFSET(EMRSETBRUSHORGEX, ptlOrigin)); /* POINTL */ + ok(sizeof(EMRSETBRUSHORGEX) == 16, "sizeof(EMRSETBRUSHORGEX) == %d (expected 16)", sizeof(EMRSETBRUSHORGEX)); + + /* EMRSETDIBITSTODEIVCE */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, emr) == 0, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, rclBounds) == 8, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, rclBounds)); /* RECTL */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, xDest) == 24, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, xDest) == %ld (expected 24)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, xDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, yDest) == 28, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, yDest) == %ld (expected 28)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, yDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, xSrc) == 32, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, xSrc) == %ld (expected 32)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, xSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, ySrc) == 36, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, ySrc) == %ld (expected 36)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, ySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cxSrc) == 40, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cxSrc) == %ld (expected 40)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cxSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cySrc) == 44, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cySrc) == %ld (expected 44)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, offBmiSrc) == 48, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, offBmiSrc) == %ld (expected 48)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, offBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cbBmiSrc) == 52, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cbBmiSrc) == %ld (expected 52)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cbBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, offBitsSrc) == 56, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, offBitsSrc) == %ld (expected 56)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, offBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cbBitsSrc) == 60, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cbBitsSrc) == %ld (expected 60)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cbBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, iUsageSrc) == 64, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, iUsageSrc) == %ld (expected 64)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, iUsageSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, iStartScan) == 68, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, iStartScan) == %ld (expected 68)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, iStartScan)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cScans) == 72, + "FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cScans) == %ld (expected 72)", + FIELD_OFFSET(EMRSETDIBITSTODEIVCE, cScans)); /* DWORD */ + ok(sizeof(EMRSETDIBITSTODEIVCE) == 76, "sizeof(EMRSETDIBITSTODEIVCE) == %d (expected 76)", sizeof(EMRSETDIBITSTODEIVCE)); + + /* EMRSETMAPPERFLAGS */ + ok(FIELD_OFFSET(EMRSETMAPPERFLAGS, emr) == 0, + "FIELD_OFFSET(EMRSETMAPPERFLAGS, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETMAPPERFLAGS, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETMAPPERFLAGS, dwFlags) == 8, + "FIELD_OFFSET(EMRSETMAPPERFLAGS, dwFlags) == %ld (expected 8)", + FIELD_OFFSET(EMRSETMAPPERFLAGS, dwFlags)); /* DWORD */ + ok(sizeof(EMRSETMAPPERFLAGS) == 12, "sizeof(EMRSETMAPPERFLAGS) == %d (expected 12)", sizeof(EMRSETMAPPERFLAGS)); + + /* EMRSETMITERLIMIT */ + ok(FIELD_OFFSET(EMRSETMITERLIMIT, emr) == 0, + "FIELD_OFFSET(EMRSETMITERLIMIT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETMITERLIMIT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETMITERLIMIT, eMiterLimit) == 8, + "FIELD_OFFSET(EMRSETMITERLIMIT, eMiterLimit) == %ld (expected 8)", + FIELD_OFFSET(EMRSETMITERLIMIT, eMiterLimit)); /* FLOAT */ + ok(sizeof(EMRSETMITERLIMIT) == 12, "sizeof(EMRSETMITERLIMIT) == %d (expected 12)", sizeof(EMRSETMITERLIMIT)); + + /* EMRSETPALETTEENTRIES */ + ok(FIELD_OFFSET(EMRSETPALETTEENTRIES, emr) == 0, + "FIELD_OFFSET(EMRSETPALETTEENTRIES, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETPALETTEENTRIES, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETPALETTEENTRIES, ihPal) == 8, + "FIELD_OFFSET(EMRSETPALETTEENTRIES, ihPal) == %ld (expected 8)", + FIELD_OFFSET(EMRSETPALETTEENTRIES, ihPal)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETPALETTEENTRIES, iStart) == 12, + "FIELD_OFFSET(EMRSETPALETTEENTRIES, iStart) == %ld (expected 12)", + FIELD_OFFSET(EMRSETPALETTEENTRIES, iStart)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETPALETTEENTRIES, cEntries) == 16, + "FIELD_OFFSET(EMRSETPALETTEENTRIES, cEntries) == %ld (expected 16)", + FIELD_OFFSET(EMRSETPALETTEENTRIES, cEntries)); /* DWORD */ + ok(FIELD_OFFSET(EMRSETPALETTEENTRIES, aPalEntries) == 20, + "FIELD_OFFSET(EMRSETPALETTEENTRIES, aPalEntries) == %ld (expected 20)", + FIELD_OFFSET(EMRSETPALETTEENTRIES, aPalEntries)); /* PALETTEENTRY[1] */ + ok(sizeof(EMRSETPALETTEENTRIES) == 24, "sizeof(EMRSETPALETTEENTRIES) == %d (expected 24)", sizeof(EMRSETPALETTEENTRIES)); + + /* EMRSETPIXELV */ + ok(FIELD_OFFSET(EMRSETPIXELV, emr) == 0, + "FIELD_OFFSET(EMRSETPIXELV, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETPIXELV, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETPIXELV, ptlPixel) == 8, + "FIELD_OFFSET(EMRSETPIXELV, ptlPixel) == %ld (expected 8)", + FIELD_OFFSET(EMRSETPIXELV, ptlPixel)); /* POINTL */ + ok(FIELD_OFFSET(EMRSETPIXELV, crColor) == 16, + "FIELD_OFFSET(EMRSETPIXELV, crColor) == %ld (expected 16)", + FIELD_OFFSET(EMRSETPIXELV, crColor)); /* COLORREF */ + ok(sizeof(EMRSETPIXELV) == 20, "sizeof(EMRSETPIXELV) == %d (expected 20)", sizeof(EMRSETPIXELV)); + + /* EMRSETTEXTJUSTIFICATION */ + ok(FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, emr) == 0, + "FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, nBreakExtra) == 8, + "FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, nBreakExtra) == %ld (expected 8)", + FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, nBreakExtra)); /* INT */ + ok(FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, nBreakCount) == 12, + "FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, nBreakCount) == %ld (expected 12)", + FIELD_OFFSET(EMRSETTEXTJUSTIFICATION, nBreakCount)); /* INT */ + ok(sizeof(EMRSETTEXTJUSTIFICATION) == 16, "sizeof(EMRSETTEXTJUSTIFICATION) == %d (expected 16)", sizeof(EMRSETTEXTJUSTIFICATION)); + + /* EMRSETVIEWPORTEXTEX */ + ok(FIELD_OFFSET(EMRSETVIEWPORTEXTEX, emr) == 0, + "FIELD_OFFSET(EMRSETVIEWPORTEXTEX, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETVIEWPORTEXTEX, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETVIEWPORTEXTEX, szlExtent) == 8, + "FIELD_OFFSET(EMRSETVIEWPORTEXTEX, szlExtent) == %ld (expected 8)", + FIELD_OFFSET(EMRSETVIEWPORTEXTEX, szlExtent)); /* SIZEL */ + ok(sizeof(EMRSETVIEWPORTEXTEX) == 16, "sizeof(EMRSETVIEWPORTEXTEX) == %d (expected 16)", sizeof(EMRSETVIEWPORTEXTEX)); + + /* EMRSETWORLDTRANSFORM */ + ok(FIELD_OFFSET(EMRSETWORLDTRANSFORM, emr) == 0, + "FIELD_OFFSET(EMRSETWORLDTRANSFORM, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSETWORLDTRANSFORM, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSETWORLDTRANSFORM, xform) == 8, + "FIELD_OFFSET(EMRSETWORLDTRANSFORM, xform) == %ld (expected 8)", + FIELD_OFFSET(EMRSETWORLDTRANSFORM, xform)); /* XFORM */ + ok(sizeof(EMRSETWORLDTRANSFORM) == 32, "sizeof(EMRSETWORLDTRANSFORM) == %d (expected 32)", sizeof(EMRSETWORLDTRANSFORM)); + + /* EMRSTRETCHBLT */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, emr) == 0, + "FIELD_OFFSET(EMRSTRETCHBLT, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSTRETCHBLT, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, rclBounds) == 8, + "FIELD_OFFSET(EMRSTRETCHBLT, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRSTRETCHBLT, rclBounds)); /* RECTL */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, xDest) == 24, + "FIELD_OFFSET(EMRSTRETCHBLT, xDest) == %ld (expected 24)", + FIELD_OFFSET(EMRSTRETCHBLT, xDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, yDest) == 28, + "FIELD_OFFSET(EMRSTRETCHBLT, yDest) == %ld (expected 28)", + FIELD_OFFSET(EMRSTRETCHBLT, yDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, cxDest) == 32, + "FIELD_OFFSET(EMRSTRETCHBLT, cxDest) == %ld (expected 32)", + FIELD_OFFSET(EMRSTRETCHBLT, cxDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, cyDest) == 36, + "FIELD_OFFSET(EMRSTRETCHBLT, cyDest) == %ld (expected 36)", + FIELD_OFFSET(EMRSTRETCHBLT, cyDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, dwRop) == 40, + "FIELD_OFFSET(EMRSTRETCHBLT, dwRop) == %ld (expected 40)", + FIELD_OFFSET(EMRSTRETCHBLT, dwRop)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, xSrc) == 44, + "FIELD_OFFSET(EMRSTRETCHBLT, xSrc) == %ld (expected 44)", + FIELD_OFFSET(EMRSTRETCHBLT, xSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, ySrc) == 48, + "FIELD_OFFSET(EMRSTRETCHBLT, ySrc) == %ld (expected 48)", + FIELD_OFFSET(EMRSTRETCHBLT, ySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, xformSrc) == 52, + "FIELD_OFFSET(EMRSTRETCHBLT, xformSrc) == %ld (expected 52)", + FIELD_OFFSET(EMRSTRETCHBLT, xformSrc)); /* XFORM */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, crBkColorSrc) == 76, + "FIELD_OFFSET(EMRSTRETCHBLT, crBkColorSrc) == %ld (expected 76)", + FIELD_OFFSET(EMRSTRETCHBLT, crBkColorSrc)); /* COLORREF */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, iUsageSrc) == 80, + "FIELD_OFFSET(EMRSTRETCHBLT, iUsageSrc) == %ld (expected 80)", + FIELD_OFFSET(EMRSTRETCHBLT, iUsageSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, offBmiSrc) == 84, + "FIELD_OFFSET(EMRSTRETCHBLT, offBmiSrc) == %ld (expected 84)", + FIELD_OFFSET(EMRSTRETCHBLT, offBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, cbBmiSrc) == 88, + "FIELD_OFFSET(EMRSTRETCHBLT, cbBmiSrc) == %ld (expected 88)", + FIELD_OFFSET(EMRSTRETCHBLT, cbBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, offBitsSrc) == 92, + "FIELD_OFFSET(EMRSTRETCHBLT, offBitsSrc) == %ld (expected 92)", + FIELD_OFFSET(EMRSTRETCHBLT, offBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, cbBitsSrc) == 96, + "FIELD_OFFSET(EMRSTRETCHBLT, cbBitsSrc) == %ld (expected 96)", + FIELD_OFFSET(EMRSTRETCHBLT, cbBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, cxSrc) == 100, + "FIELD_OFFSET(EMRSTRETCHBLT, cxSrc) == %ld (expected 100)", + FIELD_OFFSET(EMRSTRETCHBLT, cxSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHBLT, cySrc) == 104, + "FIELD_OFFSET(EMRSTRETCHBLT, cySrc) == %ld (expected 104)", + FIELD_OFFSET(EMRSTRETCHBLT, cySrc)); /* LONG */ + ok(sizeof(EMRSTRETCHBLT) == 108, "sizeof(EMRSTRETCHBLT) == %d (expected 108)", sizeof(EMRSTRETCHBLT)); + + /* EMRSTRETCHDIBITS */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, emr) == 0, + "FIELD_OFFSET(EMRSTRETCHDIBITS, emr) == %ld (expected 0)", + FIELD_OFFSET(EMRSTRETCHDIBITS, emr)); /* EMR */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, rclBounds) == 8, + "FIELD_OFFSET(EMRSTRETCHDIBITS, rclBounds) == %ld (expected 8)", + FIELD_OFFSET(EMRSTRETCHDIBITS, rclBounds)); /* RECTL */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, xDest) == 24, + "FIELD_OFFSET(EMRSTRETCHDIBITS, xDest) == %ld (expected 24)", + FIELD_OFFSET(EMRSTRETCHDIBITS, xDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, yDest) == 28, + "FIELD_OFFSET(EMRSTRETCHDIBITS, yDest) == %ld (expected 28)", + FIELD_OFFSET(EMRSTRETCHDIBITS, yDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, xSrc) == 32, + "FIELD_OFFSET(EMRSTRETCHDIBITS, xSrc) == %ld (expected 32)", + FIELD_OFFSET(EMRSTRETCHDIBITS, xSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, ySrc) == 36, + "FIELD_OFFSET(EMRSTRETCHDIBITS, ySrc) == %ld (expected 36)", + FIELD_OFFSET(EMRSTRETCHDIBITS, ySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, cxSrc) == 40, + "FIELD_OFFSET(EMRSTRETCHDIBITS, cxSrc) == %ld (expected 40)", + FIELD_OFFSET(EMRSTRETCHDIBITS, cxSrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, cySrc) == 44, + "FIELD_OFFSET(EMRSTRETCHDIBITS, cySrc) == %ld (expected 44)", + FIELD_OFFSET(EMRSTRETCHDIBITS, cySrc)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, offBmiSrc) == 48, + "FIELD_OFFSET(EMRSTRETCHDIBITS, offBmiSrc) == %ld (expected 48)", + FIELD_OFFSET(EMRSTRETCHDIBITS, offBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, cbBmiSrc) == 52, + "FIELD_OFFSET(EMRSTRETCHDIBITS, cbBmiSrc) == %ld (expected 52)", + FIELD_OFFSET(EMRSTRETCHDIBITS, cbBmiSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, offBitsSrc) == 56, + "FIELD_OFFSET(EMRSTRETCHDIBITS, offBitsSrc) == %ld (expected 56)", + FIELD_OFFSET(EMRSTRETCHDIBITS, offBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, cbBitsSrc) == 60, + "FIELD_OFFSET(EMRSTRETCHDIBITS, cbBitsSrc) == %ld (expected 60)", + FIELD_OFFSET(EMRSTRETCHDIBITS, cbBitsSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, iUsageSrc) == 64, + "FIELD_OFFSET(EMRSTRETCHDIBITS, iUsageSrc) == %ld (expected 64)", + FIELD_OFFSET(EMRSTRETCHDIBITS, iUsageSrc)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, dwRop) == 68, + "FIELD_OFFSET(EMRSTRETCHDIBITS, dwRop) == %ld (expected 68)", + FIELD_OFFSET(EMRSTRETCHDIBITS, dwRop)); /* DWORD */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, cxDest) == 72, + "FIELD_OFFSET(EMRSTRETCHDIBITS, cxDest) == %ld (expected 72)", + FIELD_OFFSET(EMRSTRETCHDIBITS, cxDest)); /* LONG */ + ok(FIELD_OFFSET(EMRSTRETCHDIBITS, cyDest) == 76, + "FIELD_OFFSET(EMRSTRETCHDIBITS, cyDest) == %ld (expected 76)", + FIELD_OFFSET(EMRSTRETCHDIBITS, cyDest)); /* LONG */ + ok(sizeof(EMRSTRETCHDIBITS) == 80, "sizeof(EMRSTRETCHDIBITS) == %d (expected 80)", sizeof(EMRSTRETCHDIBITS)); + + /* EMRTEXT */ + ok(FIELD_OFFSET(EMRTEXT, ptlReference) == 0, + "FIELD_OFFSET(EMRTEXT, ptlReference) == %ld (expected 0)", + FIELD_OFFSET(EMRTEXT, ptlReference)); /* POINTL */ + ok(FIELD_OFFSET(EMRTEXT, nChars) == 8, + "FIELD_OFFSET(EMRTEXT, nChars) == %ld (expected 8)", + FIELD_OFFSET(EMRTEXT, nChars)); /* DWORD */ + ok(FIELD_OFFSET(EMRTEXT, offString) == 12, + "FIELD_OFFSET(EMRTEXT, offString) == %ld (expected 12)", + FIELD_OFFSET(EMRTEXT, offString)); /* DWORD */ + ok(FIELD_OFFSET(EMRTEXT, fOptions) == 16, + "FIELD_OFFSET(EMRTEXT, fOptions) == %ld (expected 16)", + FIELD_OFFSET(EMRTEXT, fOptions)); /* DWORD */ + ok(FIELD_OFFSET(EMRTEXT, rcl) == 20, + "FIELD_OFFSET(EMRTEXT, rcl) == %ld (expected 20)", + FIELD_OFFSET(EMRTEXT, rcl)); /* RECTL */ + ok(FIELD_OFFSET(EMRTEXT, offDx) == 36, + "FIELD_OFFSET(EMRTEXT, offDx) == %ld (expected 36)", + FIELD_OFFSET(EMRTEXT, offDx)); /* DWORD */ + ok(sizeof(EMRTEXT) == 40, "sizeof(EMRTEXT) == %d (expected 40)", sizeof(EMRTEXT)); + + /* ENHMETARECORD */ + ok(FIELD_OFFSET(ENHMETARECORD, iType) == 0, + "FIELD_OFFSET(ENHMETARECORD, iType) == %ld (expected 0)", + FIELD_OFFSET(ENHMETARECORD, iType)); /* DWORD */ + ok(FIELD_OFFSET(ENHMETARECORD, nSize) == 4, + "FIELD_OFFSET(ENHMETARECORD, nSize) == %ld (expected 4)", + FIELD_OFFSET(ENHMETARECORD, nSize)); /* DWORD */ + ok(FIELD_OFFSET(ENHMETARECORD, dParm) == 8, + "FIELD_OFFSET(ENHMETARECORD, dParm) == %ld (expected 8)", + FIELD_OFFSET(ENHMETARECORD, dParm)); /* DWORD[1] */ + ok(sizeof(ENHMETARECORD) == 12, "sizeof(ENHMETARECORD) == %d (expected 12)", sizeof(ENHMETARECORD)); + + /* EXTLOGPEN */ + ok(FIELD_OFFSET(EXTLOGPEN, elpPenStyle) == 0, + "FIELD_OFFSET(EXTLOGPEN, elpPenStyle) == %ld (expected 0)", + FIELD_OFFSET(EXTLOGPEN, elpPenStyle)); /* DWORD */ + ok(FIELD_OFFSET(EXTLOGPEN, elpWidth) == 4, + "FIELD_OFFSET(EXTLOGPEN, elpWidth) == %ld (expected 4)", + FIELD_OFFSET(EXTLOGPEN, elpWidth)); /* DWORD */ + ok(FIELD_OFFSET(EXTLOGPEN, elpBrushStyle) == 8, + "FIELD_OFFSET(EXTLOGPEN, elpBrushStyle) == %ld (expected 8)", + FIELD_OFFSET(EXTLOGPEN, elpBrushStyle)); /* UINT */ + ok(FIELD_OFFSET(EXTLOGPEN, elpColor) == 12, + "FIELD_OFFSET(EXTLOGPEN, elpColor) == %ld (expected 12)", + FIELD_OFFSET(EXTLOGPEN, elpColor)); /* COLORREF */ + ok(FIELD_OFFSET(EXTLOGPEN, elpHatch) == 16, + "FIELD_OFFSET(EXTLOGPEN, elpHatch) == %ld (expected 16)", + FIELD_OFFSET(EXTLOGPEN, elpHatch)); /* LONG */ + ok(FIELD_OFFSET(EXTLOGPEN, elpNumEntries) == 20, + "FIELD_OFFSET(EXTLOGPEN, elpNumEntries) == %ld (expected 20)", + FIELD_OFFSET(EXTLOGPEN, elpNumEntries)); /* DWORD */ + ok(FIELD_OFFSET(EXTLOGPEN, elpStyleEntry) == 24, + "FIELD_OFFSET(EXTLOGPEN, elpStyleEntry) == %ld (expected 24)", + FIELD_OFFSET(EXTLOGPEN, elpStyleEntry)); /* DWORD[1] */ + ok(sizeof(EXTLOGPEN) == 28, "sizeof(EXTLOGPEN) == %d (expected 28)", sizeof(EXTLOGPEN)); + + /* FONTSIGNATURE */ + ok(FIELD_OFFSET(FONTSIGNATURE, fsUsb) == 0, + "FIELD_OFFSET(FONTSIGNATURE, fsUsb) == %ld (expected 0)", + FIELD_OFFSET(FONTSIGNATURE, fsUsb)); /* DWORD[4] */ + ok(FIELD_OFFSET(FONTSIGNATURE, fsCsb) == 16, + "FIELD_OFFSET(FONTSIGNATURE, fsCsb) == %ld (expected 16)", + FIELD_OFFSET(FONTSIGNATURE, fsCsb)); /* DWORD[2] */ + ok(sizeof(FONTSIGNATURE) == 24, "sizeof(FONTSIGNATURE) == %d (expected 24)", sizeof(FONTSIGNATURE)); + + /* GCP_RESULTSA */ + ok(FIELD_OFFSET(GCP_RESULTSA, lStructSize) == 0, + "FIELD_OFFSET(GCP_RESULTSA, lStructSize) == %ld (expected 0)", + FIELD_OFFSET(GCP_RESULTSA, lStructSize)); /* DWORD */ + ok(FIELD_OFFSET(GCP_RESULTSA, lpOutString) == 4, + "FIELD_OFFSET(GCP_RESULTSA, lpOutString) == %ld (expected 4)", + FIELD_OFFSET(GCP_RESULTSA, lpOutString)); /* LPSTR */ + ok(FIELD_OFFSET(GCP_RESULTSA, lpOrder) == 8, + "FIELD_OFFSET(GCP_RESULTSA, lpOrder) == %ld (expected 8)", + FIELD_OFFSET(GCP_RESULTSA, lpOrder)); /* UINT * */ + ok(FIELD_OFFSET(GCP_RESULTSA, lpDx) == 12, + "FIELD_OFFSET(GCP_RESULTSA, lpDx) == %ld (expected 12)", + FIELD_OFFSET(GCP_RESULTSA, lpDx)); /* INT * */ + ok(FIELD_OFFSET(GCP_RESULTSA, lpCaretPos) == 16, + "FIELD_OFFSET(GCP_RESULTSA, lpCaretPos) == %ld (expected 16)", + FIELD_OFFSET(GCP_RESULTSA, lpCaretPos)); /* INT * */ + ok(FIELD_OFFSET(GCP_RESULTSA, lpClass) == 20, + "FIELD_OFFSET(GCP_RESULTSA, lpClass) == %ld (expected 20)", + FIELD_OFFSET(GCP_RESULTSA, lpClass)); /* LPSTR */ + ok(FIELD_OFFSET(GCP_RESULTSA, lpGlyphs) == 24, + "FIELD_OFFSET(GCP_RESULTSA, lpGlyphs) == %ld (expected 24)", + FIELD_OFFSET(GCP_RESULTSA, lpGlyphs)); /* LPWSTR */ + ok(FIELD_OFFSET(GCP_RESULTSA, nGlyphs) == 28, + "FIELD_OFFSET(GCP_RESULTSA, nGlyphs) == %ld (expected 28)", + FIELD_OFFSET(GCP_RESULTSA, nGlyphs)); /* UINT */ + ok(FIELD_OFFSET(GCP_RESULTSA, nMaxFit) == 32, + "FIELD_OFFSET(GCP_RESULTSA, nMaxFit) == %ld (expected 32)", + FIELD_OFFSET(GCP_RESULTSA, nMaxFit)); /* UINT */ + ok(sizeof(GCP_RESULTSA) == 36, "sizeof(GCP_RESULTSA) == %d (expected 36)", sizeof(GCP_RESULTSA)); + + /* GCP_RESULTSW */ + ok(FIELD_OFFSET(GCP_RESULTSW, lStructSize) == 0, + "FIELD_OFFSET(GCP_RESULTSW, lStructSize) == %ld (expected 0)", + FIELD_OFFSET(GCP_RESULTSW, lStructSize)); /* DWORD */ + ok(FIELD_OFFSET(GCP_RESULTSW, lpOutString) == 4, + "FIELD_OFFSET(GCP_RESULTSW, lpOutString) == %ld (expected 4)", + FIELD_OFFSET(GCP_RESULTSW, lpOutString)); /* LPWSTR */ + ok(FIELD_OFFSET(GCP_RESULTSW, lpOrder) == 8, + "FIELD_OFFSET(GCP_RESULTSW, lpOrder) == %ld (expected 8)", + FIELD_OFFSET(GCP_RESULTSW, lpOrder)); /* UINT * */ + ok(FIELD_OFFSET(GCP_RESULTSW, lpDx) == 12, + "FIELD_OFFSET(GCP_RESULTSW, lpDx) == %ld (expected 12)", + FIELD_OFFSET(GCP_RESULTSW, lpDx)); /* INT * */ + ok(FIELD_OFFSET(GCP_RESULTSW, lpCaretPos) == 16, + "FIELD_OFFSET(GCP_RESULTSW, lpCaretPos) == %ld (expected 16)", + FIELD_OFFSET(GCP_RESULTSW, lpCaretPos)); /* INT * */ + ok(FIELD_OFFSET(GCP_RESULTSW, lpClass) == 20, + "FIELD_OFFSET(GCP_RESULTSW, lpClass) == %ld (expected 20)", + FIELD_OFFSET(GCP_RESULTSW, lpClass)); /* LPSTR */ + ok(FIELD_OFFSET(GCP_RESULTSW, lpGlyphs) == 24, + "FIELD_OFFSET(GCP_RESULTSW, lpGlyphs) == %ld (expected 24)", + FIELD_OFFSET(GCP_RESULTSW, lpGlyphs)); /* LPWSTR */ + ok(FIELD_OFFSET(GCP_RESULTSW, nGlyphs) == 28, + "FIELD_OFFSET(GCP_RESULTSW, nGlyphs) == %ld (expected 28)", + FIELD_OFFSET(GCP_RESULTSW, nGlyphs)); /* UINT */ + ok(FIELD_OFFSET(GCP_RESULTSW, nMaxFit) == 32, + "FIELD_OFFSET(GCP_RESULTSW, nMaxFit) == %ld (expected 32)", + FIELD_OFFSET(GCP_RESULTSW, nMaxFit)); /* UINT */ + ok(sizeof(GCP_RESULTSW) == 36, "sizeof(GCP_RESULTSW) == %d (expected 36)", sizeof(GCP_RESULTSW)); + + /* GRADIENT_RECT */ + ok(FIELD_OFFSET(GRADIENT_RECT, UpperLeft) == 0, + "FIELD_OFFSET(GRADIENT_RECT, UpperLeft) == %ld (expected 0)", + FIELD_OFFSET(GRADIENT_RECT, UpperLeft)); /* ULONG */ + ok(FIELD_OFFSET(GRADIENT_RECT, LowerRight) == 4, + "FIELD_OFFSET(GRADIENT_RECT, LowerRight) == %ld (expected 4)", + FIELD_OFFSET(GRADIENT_RECT, LowerRight)); /* ULONG */ + ok(sizeof(GRADIENT_RECT) == 8, "sizeof(GRADIENT_RECT) == %d (expected 8)", sizeof(GRADIENT_RECT)); + + /* GRADIENT_TRIANGLE */ + ok(FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex1) == 0, + "FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex1) == %ld (expected 0)", + FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex1)); /* ULONG */ + ok(FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex2) == 4, + "FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex2) == %ld (expected 4)", + FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex2)); /* ULONG */ + ok(FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex3) == 8, + "FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex3) == %ld (expected 8)", + FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex3)); /* ULONG */ + ok(sizeof(GRADIENT_TRIANGLE) == 12, "sizeof(GRADIENT_TRIANGLE) == %d (expected 12)", sizeof(GRADIENT_TRIANGLE)); + + /* HANDLETABLE */ + ok(FIELD_OFFSET(HANDLETABLE, objectHandle) == 0, + "FIELD_OFFSET(HANDLETABLE, objectHandle) == %ld (expected 0)", + FIELD_OFFSET(HANDLETABLE, objectHandle)); /* HGDIOBJ[1] */ + ok(sizeof(HANDLETABLE) == 4, "sizeof(HANDLETABLE) == %d (expected 4)", sizeof(HANDLETABLE)); + + /* KERNINGPAIR */ + ok(FIELD_OFFSET(KERNINGPAIR, wFirst) == 0, + "FIELD_OFFSET(KERNINGPAIR, wFirst) == %ld (expected 0)", + FIELD_OFFSET(KERNINGPAIR, wFirst)); /* WORD */ + ok(FIELD_OFFSET(KERNINGPAIR, wSecond) == 2, + "FIELD_OFFSET(KERNINGPAIR, wSecond) == %ld (expected 2)", + FIELD_OFFSET(KERNINGPAIR, wSecond)); /* WORD */ + ok(FIELD_OFFSET(KERNINGPAIR, iKernAmount) == 4, + "FIELD_OFFSET(KERNINGPAIR, iKernAmount) == %ld (expected 4)", + FIELD_OFFSET(KERNINGPAIR, iKernAmount)); /* INT */ + ok(sizeof(KERNINGPAIR) == 8, "sizeof(KERNINGPAIR) == %d (expected 8)", sizeof(KERNINGPAIR)); + + /* LOCALESIGNATURE */ + ok(FIELD_OFFSET(LOCALESIGNATURE, lsUsb) == 0, + "FIELD_OFFSET(LOCALESIGNATURE, lsUsb) == %ld (expected 0)", + FIELD_OFFSET(LOCALESIGNATURE, lsUsb)); /* DWORD[4] */ + ok(FIELD_OFFSET(LOCALESIGNATURE, lsCsbDefault) == 16, + "FIELD_OFFSET(LOCALESIGNATURE, lsCsbDefault) == %ld (expected 16)", + FIELD_OFFSET(LOCALESIGNATURE, lsCsbDefault)); /* DWORD[2] */ + ok(FIELD_OFFSET(LOCALESIGNATURE, lsCsbSupported) == 24, + "FIELD_OFFSET(LOCALESIGNATURE, lsCsbSupported) == %ld (expected 24)", + FIELD_OFFSET(LOCALESIGNATURE, lsCsbSupported)); /* DWORD[2] */ + ok(sizeof(LOCALESIGNATURE) == 32, "sizeof(LOCALESIGNATURE) == %d (expected 32)", sizeof(LOCALESIGNATURE)); + + /* LOGBRUSH */ + ok(FIELD_OFFSET(LOGBRUSH, lbStyle) == 0, + "FIELD_OFFSET(LOGBRUSH, lbStyle) == %ld (expected 0)", + FIELD_OFFSET(LOGBRUSH, lbStyle)); /* UINT */ + ok(FIELD_OFFSET(LOGBRUSH, lbColor) == 4, + "FIELD_OFFSET(LOGBRUSH, lbColor) == %ld (expected 4)", + FIELD_OFFSET(LOGBRUSH, lbColor)); /* COLORREF */ + ok(FIELD_OFFSET(LOGBRUSH, lbHatch) == 8, + "FIELD_OFFSET(LOGBRUSH, lbHatch) == %ld (expected 8)", + FIELD_OFFSET(LOGBRUSH, lbHatch)); /* INT */ + ok(sizeof(LOGBRUSH) == 12, "sizeof(LOGBRUSH) == %d (expected 12)", sizeof(LOGBRUSH)); + + /* LOGPALETTE */ + ok(FIELD_OFFSET(LOGPALETTE, palVersion) == 0, + "FIELD_OFFSET(LOGPALETTE, palVersion) == %ld (expected 0)", + FIELD_OFFSET(LOGPALETTE, palVersion)); /* WORD */ + ok(FIELD_OFFSET(LOGPALETTE, palNumEntries) == 2, + "FIELD_OFFSET(LOGPALETTE, palNumEntries) == %ld (expected 2)", + FIELD_OFFSET(LOGPALETTE, palNumEntries)); /* WORD */ + ok(FIELD_OFFSET(LOGPALETTE, palPalEntry) == 4, + "FIELD_OFFSET(LOGPALETTE, palPalEntry) == %ld (expected 4)", + FIELD_OFFSET(LOGPALETTE, palPalEntry)); /* PALETTEENTRY[1] */ + ok(sizeof(LOGPALETTE) == 8, "sizeof(LOGPALETTE) == %d (expected 8)", sizeof(LOGPALETTE)); + + /* LOGPEN */ + ok(FIELD_OFFSET(LOGPEN, lopnStyle) == 0, + "FIELD_OFFSET(LOGPEN, lopnStyle) == %ld (expected 0)", + FIELD_OFFSET(LOGPEN, lopnStyle)); /* UINT */ + ok(FIELD_OFFSET(LOGPEN, lopnWidth) == 4, + "FIELD_OFFSET(LOGPEN, lopnWidth) == %ld (expected 4)", + FIELD_OFFSET(LOGPEN, lopnWidth)); /* POINT */ + ok(FIELD_OFFSET(LOGPEN, lopnColor) == 12, + "FIELD_OFFSET(LOGPEN, lopnColor) == %ld (expected 12)", + FIELD_OFFSET(LOGPEN, lopnColor)); /* COLORREF */ + ok(sizeof(LOGPEN) == 16, "sizeof(LOGPEN) == %d (expected 16)", sizeof(LOGPEN)); + + /* MAT2 */ + ok(FIELD_OFFSET(MAT2, eM11) == 0, + "FIELD_OFFSET(MAT2, eM11) == %ld (expected 0)", + FIELD_OFFSET(MAT2, eM11)); /* FIXED */ + ok(FIELD_OFFSET(MAT2, eM12) == 4, + "FIELD_OFFSET(MAT2, eM12) == %ld (expected 4)", + FIELD_OFFSET(MAT2, eM12)); /* FIXED */ + ok(FIELD_OFFSET(MAT2, eM21) == 8, + "FIELD_OFFSET(MAT2, eM21) == %ld (expected 8)", + FIELD_OFFSET(MAT2, eM21)); /* FIXED */ + ok(FIELD_OFFSET(MAT2, eM22) == 12, + "FIELD_OFFSET(MAT2, eM22) == %ld (expected 12)", + FIELD_OFFSET(MAT2, eM22)); /* FIXED */ + ok(sizeof(MAT2) == 16, "sizeof(MAT2) == %d (expected 16)", sizeof(MAT2)); + + /* METAFILEPICT */ + ok(FIELD_OFFSET(METAFILEPICT, mm) == 0, + "FIELD_OFFSET(METAFILEPICT, mm) == %ld (expected 0)", + FIELD_OFFSET(METAFILEPICT, mm)); /* LONG */ + ok(FIELD_OFFSET(METAFILEPICT, xExt) == 4, + "FIELD_OFFSET(METAFILEPICT, xExt) == %ld (expected 4)", + FIELD_OFFSET(METAFILEPICT, xExt)); /* LONG */ + ok(FIELD_OFFSET(METAFILEPICT, yExt) == 8, + "FIELD_OFFSET(METAFILEPICT, yExt) == %ld (expected 8)", + FIELD_OFFSET(METAFILEPICT, yExt)); /* LONG */ + ok(FIELD_OFFSET(METAFILEPICT, hMF) == 12, + "FIELD_OFFSET(METAFILEPICT, hMF) == %ld (expected 12)", + FIELD_OFFSET(METAFILEPICT, hMF)); /* HMETAFILE */ + ok(sizeof(METAFILEPICT) == 16, "sizeof(METAFILEPICT) == %d (expected 16)", sizeof(METAFILEPICT)); + + /* METAHEADER */ + ok(FIELD_OFFSET(METAHEADER, mtType) == 0, + "FIELD_OFFSET(METAHEADER, mtType) == %ld (expected 0)", + FIELD_OFFSET(METAHEADER, mtType)); /* WORD */ + ok(FIELD_OFFSET(METAHEADER, mtHeaderSize) == 2, + "FIELD_OFFSET(METAHEADER, mtHeaderSize) == %ld (expected 2)", + FIELD_OFFSET(METAHEADER, mtHeaderSize)); /* WORD */ + ok(FIELD_OFFSET(METAHEADER, mtVersion) == 4, + "FIELD_OFFSET(METAHEADER, mtVersion) == %ld (expected 4)", + FIELD_OFFSET(METAHEADER, mtVersion)); /* WORD */ + ok(FIELD_OFFSET(METAHEADER, mtSize) == 6, + "FIELD_OFFSET(METAHEADER, mtSize) == %ld (expected 6)", + FIELD_OFFSET(METAHEADER, mtSize)); /* DWORD */ + ok(FIELD_OFFSET(METAHEADER, mtNoObjects) == 10, + "FIELD_OFFSET(METAHEADER, mtNoObjects) == %ld (expected 10)", + FIELD_OFFSET(METAHEADER, mtNoObjects)); /* WORD */ + ok(FIELD_OFFSET(METAHEADER, mtMaxRecord) == 12, + "FIELD_OFFSET(METAHEADER, mtMaxRecord) == %ld (expected 12)", + FIELD_OFFSET(METAHEADER, mtMaxRecord)); /* DWORD */ + ok(FIELD_OFFSET(METAHEADER, mtNoParameters) == 16, + "FIELD_OFFSET(METAHEADER, mtNoParameters) == %ld (expected 16)", + FIELD_OFFSET(METAHEADER, mtNoParameters)); /* WORD */ + ok(sizeof(METAHEADER) == 18, "sizeof(METAHEADER) == %d (expected 18)", sizeof(METAHEADER)); + + /* METARECORD */ + ok(FIELD_OFFSET(METARECORD, rdSize) == 0, + "FIELD_OFFSET(METARECORD, rdSize) == %ld (expected 0)", + FIELD_OFFSET(METARECORD, rdSize)); /* DWORD */ + ok(FIELD_OFFSET(METARECORD, rdFunction) == 4, + "FIELD_OFFSET(METARECORD, rdFunction) == %ld (expected 4)", + FIELD_OFFSET(METARECORD, rdFunction)); /* WORD */ + ok(FIELD_OFFSET(METARECORD, rdParm) == 6, + "FIELD_OFFSET(METARECORD, rdParm) == %ld (expected 6)", + FIELD_OFFSET(METARECORD, rdParm)); /* WORD[1] */ + ok(sizeof(METARECORD) == 8, "sizeof(METARECORD) == %d (expected 8)", sizeof(METARECORD)); + + /* PALETTEENTRY */ + ok(FIELD_OFFSET(PALETTEENTRY, peRed) == 0, + "FIELD_OFFSET(PALETTEENTRY, peRed) == %ld (expected 0)", + FIELD_OFFSET(PALETTEENTRY, peRed)); /* BYTE */ + ok(sizeof(PALETTEENTRY) == 4, "sizeof(PALETTEENTRY) == %d (expected 4)", sizeof(PALETTEENTRY)); + + /* PELARRAY */ + ok(FIELD_OFFSET(PELARRAY, paXCount) == 0, + "FIELD_OFFSET(PELARRAY, paXCount) == %ld (expected 0)", + FIELD_OFFSET(PELARRAY, paXCount)); /* LONG */ + ok(FIELD_OFFSET(PELARRAY, paYCount) == 4, + "FIELD_OFFSET(PELARRAY, paYCount) == %ld (expected 4)", + FIELD_OFFSET(PELARRAY, paYCount)); /* LONG */ + ok(FIELD_OFFSET(PELARRAY, paXExt) == 8, + "FIELD_OFFSET(PELARRAY, paXExt) == %ld (expected 8)", + FIELD_OFFSET(PELARRAY, paXExt)); /* LONG */ + ok(FIELD_OFFSET(PELARRAY, paYExt) == 12, + "FIELD_OFFSET(PELARRAY, paYExt) == %ld (expected 12)", + FIELD_OFFSET(PELARRAY, paYExt)); /* LONG */ + ok(FIELD_OFFSET(PELARRAY, paRGBs) == 16, + "FIELD_OFFSET(PELARRAY, paRGBs) == %ld (expected 16)", + FIELD_OFFSET(PELARRAY, paRGBs)); /* BYTE */ + ok(sizeof(PELARRAY) == 20, "sizeof(PELARRAY) == %d (expected 20)", sizeof(PELARRAY)); + + /* PIXELFORMATDESCRIPTOR */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nSize) == 0, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nSize) == %ld (expected 0)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nSize)); /* WORD */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nVersion) == 2, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nVersion) == %ld (expected 2)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nVersion)); /* WORD */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwFlags) == 4, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iPixelType) == 8, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iPixelType) == %ld (expected 8)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iPixelType)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cColorBits) == 9, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cColorBits) == %ld (expected 9)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cColorBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedBits) == 10, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedBits) == %ld (expected 10)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedShift) == 11, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedShift) == %ld (expected 11)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedShift)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenBits) == 12, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenBits) == %ld (expected 12)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenShift) == 13, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenShift) == %ld (expected 13)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenShift)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueBits) == 14, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueBits) == %ld (expected 14)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueShift) == 15, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueShift) == %ld (expected 15)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueShift)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaBits) == 16, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaBits) == %ld (expected 16)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaShift) == 17, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaShift) == %ld (expected 17)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaShift)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBits) == 18, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBits) == %ld (expected 18)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumRedBits) == 19, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumRedBits) == %ld (expected 19)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumRedBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumGreenBits) == 20, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumGreenBits) == %ld (expected 20)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumGreenBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBlueBits) == 21, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBlueBits) == %ld (expected 21)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBlueBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumAlphaBits) == 22, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumAlphaBits) == %ld (expected 22)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumAlphaBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cDepthBits) == 23, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cDepthBits) == %ld (expected 23)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cDepthBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cStencilBits) == 24, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cStencilBits) == %ld (expected 24)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cStencilBits)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAuxBuffers) == 25, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAuxBuffers) == %ld (expected 25)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAuxBuffers)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iLayerType) == 26, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iLayerType) == %ld (expected 26)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iLayerType)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, bReserved) == 27, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, bReserved) == %ld (expected 27)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, bReserved)); /* BYTE */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwLayerMask) == 28, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwLayerMask) == %ld (expected 28)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwLayerMask)); /* DWORD */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwVisibleMask) == 32, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwVisibleMask) == %ld (expected 32)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwVisibleMask)); /* DWORD */ + ok(FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwDamageMask) == 36, + "FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwDamageMask) == %ld (expected 36)", + FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwDamageMask)); /* DWORD */ + ok(sizeof(PIXELFORMATDESCRIPTOR) == 40, "sizeof(PIXELFORMATDESCRIPTOR) == %d (expected 40)", sizeof(PIXELFORMATDESCRIPTOR)); + + /* POINTFX */ + ok(FIELD_OFFSET(POINTFX, x) == 0, + "FIELD_OFFSET(POINTFX, x) == %ld (expected 0)", + FIELD_OFFSET(POINTFX, x)); /* FIXED */ + ok(FIELD_OFFSET(POINTFX, y) == 4, + "FIELD_OFFSET(POINTFX, y) == %ld (expected 4)", + FIELD_OFFSET(POINTFX, y)); /* FIXED */ + ok(sizeof(POINTFX) == 8, "sizeof(POINTFX) == %d (expected 8)", sizeof(POINTFX)); + + /* RGBQUAD */ + ok(FIELD_OFFSET(RGBQUAD, rgbBlue) == 0, + "FIELD_OFFSET(RGBQUAD, rgbBlue) == %ld (expected 0)", + FIELD_OFFSET(RGBQUAD, rgbBlue)); /* BYTE */ + ok(FIELD_OFFSET(RGBQUAD, rgbGreen) == 1, + "FIELD_OFFSET(RGBQUAD, rgbGreen) == %ld (expected 1)", + FIELD_OFFSET(RGBQUAD, rgbGreen)); /* BYTE */ + ok(FIELD_OFFSET(RGBQUAD, rgbRed) == 2, + "FIELD_OFFSET(RGBQUAD, rgbRed) == %ld (expected 2)", + FIELD_OFFSET(RGBQUAD, rgbRed)); /* BYTE */ + ok(FIELD_OFFSET(RGBQUAD, rgbReserved) == 3, + "FIELD_OFFSET(RGBQUAD, rgbReserved) == %ld (expected 3)", + FIELD_OFFSET(RGBQUAD, rgbReserved)); /* BYTE */ + ok(sizeof(RGBQUAD) == 4, "sizeof(RGBQUAD) == %d (expected 4)", sizeof(RGBQUAD)); + + /* TEXTMETRICA */ + ok(FIELD_OFFSET(TEXTMETRICA, tmHeight) == 0, + "FIELD_OFFSET(TEXTMETRICA, tmHeight) == %ld (expected 0)", + FIELD_OFFSET(TEXTMETRICA, tmHeight)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmAscent) == 4, + "FIELD_OFFSET(TEXTMETRICA, tmAscent) == %ld (expected 4)", + FIELD_OFFSET(TEXTMETRICA, tmAscent)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmDescent) == 8, + "FIELD_OFFSET(TEXTMETRICA, tmDescent) == %ld (expected 8)", + FIELD_OFFSET(TEXTMETRICA, tmDescent)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmInternalLeading) == 12, + "FIELD_OFFSET(TEXTMETRICA, tmInternalLeading) == %ld (expected 12)", + FIELD_OFFSET(TEXTMETRICA, tmInternalLeading)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmExternalLeading) == 16, + "FIELD_OFFSET(TEXTMETRICA, tmExternalLeading) == %ld (expected 16)", + FIELD_OFFSET(TEXTMETRICA, tmExternalLeading)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmAveCharWidth) == 20, + "FIELD_OFFSET(TEXTMETRICA, tmAveCharWidth) == %ld (expected 20)", + FIELD_OFFSET(TEXTMETRICA, tmAveCharWidth)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmMaxCharWidth) == 24, + "FIELD_OFFSET(TEXTMETRICA, tmMaxCharWidth) == %ld (expected 24)", + FIELD_OFFSET(TEXTMETRICA, tmMaxCharWidth)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmWeight) == 28, + "FIELD_OFFSET(TEXTMETRICA, tmWeight) == %ld (expected 28)", + FIELD_OFFSET(TEXTMETRICA, tmWeight)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmOverhang) == 32, + "FIELD_OFFSET(TEXTMETRICA, tmOverhang) == %ld (expected 32)", + FIELD_OFFSET(TEXTMETRICA, tmOverhang)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectX) == 36, + "FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectX) == %ld (expected 36)", + FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectX)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectY) == 40, + "FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectY) == %ld (expected 40)", + FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectY)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICA, tmFirstChar) == 44, + "FIELD_OFFSET(TEXTMETRICA, tmFirstChar) == %ld (expected 44)", + FIELD_OFFSET(TEXTMETRICA, tmFirstChar)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICA, tmLastChar) == 45, + "FIELD_OFFSET(TEXTMETRICA, tmLastChar) == %ld (expected 45)", + FIELD_OFFSET(TEXTMETRICA, tmLastChar)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICA, tmDefaultChar) == 46, + "FIELD_OFFSET(TEXTMETRICA, tmDefaultChar) == %ld (expected 46)", + FIELD_OFFSET(TEXTMETRICA, tmDefaultChar)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICA, tmBreakChar) == 47, + "FIELD_OFFSET(TEXTMETRICA, tmBreakChar) == %ld (expected 47)", + FIELD_OFFSET(TEXTMETRICA, tmBreakChar)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICA, tmItalic) == 48, + "FIELD_OFFSET(TEXTMETRICA, tmItalic) == %ld (expected 48)", + FIELD_OFFSET(TEXTMETRICA, tmItalic)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICA, tmUnderlined) == 49, + "FIELD_OFFSET(TEXTMETRICA, tmUnderlined) == %ld (expected 49)", + FIELD_OFFSET(TEXTMETRICA, tmUnderlined)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICA, tmStruckOut) == 50, + "FIELD_OFFSET(TEXTMETRICA, tmStruckOut) == %ld (expected 50)", + FIELD_OFFSET(TEXTMETRICA, tmStruckOut)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICA, tmPitchAndFamily) == 51, + "FIELD_OFFSET(TEXTMETRICA, tmPitchAndFamily) == %ld (expected 51)", + FIELD_OFFSET(TEXTMETRICA, tmPitchAndFamily)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICA, tmCharSet) == 52, + "FIELD_OFFSET(TEXTMETRICA, tmCharSet) == %ld (expected 52)", + FIELD_OFFSET(TEXTMETRICA, tmCharSet)); /* BYTE */ + ok(sizeof(TEXTMETRICA) == 56, "sizeof(TEXTMETRICA) == %d (expected 56)", sizeof(TEXTMETRICA)); + + /* TEXTMETRICW */ + ok(FIELD_OFFSET(TEXTMETRICW, tmHeight) == 0, + "FIELD_OFFSET(TEXTMETRICW, tmHeight) == %ld (expected 0)", + FIELD_OFFSET(TEXTMETRICW, tmHeight)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmAscent) == 4, + "FIELD_OFFSET(TEXTMETRICW, tmAscent) == %ld (expected 4)", + FIELD_OFFSET(TEXTMETRICW, tmAscent)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmDescent) == 8, + "FIELD_OFFSET(TEXTMETRICW, tmDescent) == %ld (expected 8)", + FIELD_OFFSET(TEXTMETRICW, tmDescent)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmInternalLeading) == 12, + "FIELD_OFFSET(TEXTMETRICW, tmInternalLeading) == %ld (expected 12)", + FIELD_OFFSET(TEXTMETRICW, tmInternalLeading)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmExternalLeading) == 16, + "FIELD_OFFSET(TEXTMETRICW, tmExternalLeading) == %ld (expected 16)", + FIELD_OFFSET(TEXTMETRICW, tmExternalLeading)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmAveCharWidth) == 20, + "FIELD_OFFSET(TEXTMETRICW, tmAveCharWidth) == %ld (expected 20)", + FIELD_OFFSET(TEXTMETRICW, tmAveCharWidth)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmMaxCharWidth) == 24, + "FIELD_OFFSET(TEXTMETRICW, tmMaxCharWidth) == %ld (expected 24)", + FIELD_OFFSET(TEXTMETRICW, tmMaxCharWidth)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmWeight) == 28, + "FIELD_OFFSET(TEXTMETRICW, tmWeight) == %ld (expected 28)", + FIELD_OFFSET(TEXTMETRICW, tmWeight)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmOverhang) == 32, + "FIELD_OFFSET(TEXTMETRICW, tmOverhang) == %ld (expected 32)", + FIELD_OFFSET(TEXTMETRICW, tmOverhang)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectX) == 36, + "FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectX) == %ld (expected 36)", + FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectX)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectY) == 40, + "FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectY) == %ld (expected 40)", + FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectY)); /* LONG */ + ok(FIELD_OFFSET(TEXTMETRICW, tmFirstChar) == 44, + "FIELD_OFFSET(TEXTMETRICW, tmFirstChar) == %ld (expected 44)", + FIELD_OFFSET(TEXTMETRICW, tmFirstChar)); /* WCHAR */ + ok(FIELD_OFFSET(TEXTMETRICW, tmLastChar) == 46, + "FIELD_OFFSET(TEXTMETRICW, tmLastChar) == %ld (expected 46)", + FIELD_OFFSET(TEXTMETRICW, tmLastChar)); /* WCHAR */ + ok(FIELD_OFFSET(TEXTMETRICW, tmDefaultChar) == 48, + "FIELD_OFFSET(TEXTMETRICW, tmDefaultChar) == %ld (expected 48)", + FIELD_OFFSET(TEXTMETRICW, tmDefaultChar)); /* WCHAR */ + ok(FIELD_OFFSET(TEXTMETRICW, tmBreakChar) == 50, + "FIELD_OFFSET(TEXTMETRICW, tmBreakChar) == %ld (expected 50)", + FIELD_OFFSET(TEXTMETRICW, tmBreakChar)); /* WCHAR */ + ok(FIELD_OFFSET(TEXTMETRICW, tmItalic) == 52, + "FIELD_OFFSET(TEXTMETRICW, tmItalic) == %ld (expected 52)", + FIELD_OFFSET(TEXTMETRICW, tmItalic)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICW, tmUnderlined) == 53, + "FIELD_OFFSET(TEXTMETRICW, tmUnderlined) == %ld (expected 53)", + FIELD_OFFSET(TEXTMETRICW, tmUnderlined)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICW, tmStruckOut) == 54, + "FIELD_OFFSET(TEXTMETRICW, tmStruckOut) == %ld (expected 54)", + FIELD_OFFSET(TEXTMETRICW, tmStruckOut)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICW, tmPitchAndFamily) == 55, + "FIELD_OFFSET(TEXTMETRICW, tmPitchAndFamily) == %ld (expected 55)", + FIELD_OFFSET(TEXTMETRICW, tmPitchAndFamily)); /* BYTE */ + ok(FIELD_OFFSET(TEXTMETRICW, tmCharSet) == 56, + "FIELD_OFFSET(TEXTMETRICW, tmCharSet) == %ld (expected 56)", + FIELD_OFFSET(TEXTMETRICW, tmCharSet)); /* BYTE */ + ok(sizeof(TEXTMETRICW) == 60, "sizeof(TEXTMETRICW) == %d (expected 60)", sizeof(TEXTMETRICW)); + + /* XFORM */ + ok(FIELD_OFFSET(XFORM, eM11) == 0, + "FIELD_OFFSET(XFORM, eM11) == %ld (expected 0)", + FIELD_OFFSET(XFORM, eM11)); /* FLOAT */ + ok(FIELD_OFFSET(XFORM, eM12) == 4, + "FIELD_OFFSET(XFORM, eM12) == %ld (expected 4)", + FIELD_OFFSET(XFORM, eM12)); /* FLOAT */ + ok(FIELD_OFFSET(XFORM, eM21) == 8, + "FIELD_OFFSET(XFORM, eM21) == %ld (expected 8)", + FIELD_OFFSET(XFORM, eM21)); /* FLOAT */ + ok(FIELD_OFFSET(XFORM, eM22) == 12, + "FIELD_OFFSET(XFORM, eM22) == %ld (expected 12)", + FIELD_OFFSET(XFORM, eM22)); /* FLOAT */ + ok(FIELD_OFFSET(XFORM, eDx) == 16, + "FIELD_OFFSET(XFORM, eDx) == %ld (expected 16)", + FIELD_OFFSET(XFORM, eDx)); /* FLOAT */ + ok(FIELD_OFFSET(XFORM, eDy) == 20, + "FIELD_OFFSET(XFORM, eDy) == %ld (expected 20)", + FIELD_OFFSET(XFORM, eDy)); /* FLOAT */ + ok(sizeof(XFORM) == 24, "sizeof(XFORM) == %d (expected 24)", sizeof(XFORM)); + +} + +START_TEST(generated) +{ + test_pack(); +} diff --git a/dlls/kernel/tests/generated.c b/dlls/kernel/tests/generated.c index ecaf677d3a0..b62f994d251 100644 --- a/dlls/kernel/tests/generated.c +++ b/dlls/kernel/tests/generated.c @@ -1,4 +1,4 @@ -/* File generated automatically from ../../../tools/winapi/test.dat; do not edit! */ +/* File generated automatically from tools/winapi/test.dat; do not edit! */ /* This file can be copied, modified and distributed without restriction. */ /* @@ -10,7 +10,7 @@ #include "wine/test.h" #include "winbase.h" -START_TEST(generated) +void test_pack(void) { /* BY_HANDLE_FILE_INFORMATION */ ok(FIELD_OFFSET(BY_HANDLE_FILE_INFORMATION, dwFileAttributes) == 0, @@ -841,3 +841,8 @@ START_TEST(generated) ok(sizeof(WIN32_STREAM_ID) == 24, "sizeof(WIN32_STREAM_ID) == %d (expected 24)", sizeof(WIN32_STREAM_ID)); } + +START_TEST(generated) +{ + test_pack(); +} diff --git a/dlls/user/tests/.cvsignore b/dlls/user/tests/.cvsignore index a05f2ec869c..bfce24cfe46 100644 --- a/dlls/user/tests/.cvsignore +++ b/dlls/user/tests/.cvsignore @@ -1,5 +1,6 @@ Makefile class.ok +generated.ok sysparams.ok testlist.c user32_test.exe.spec.c diff --git a/dlls/user/tests/Makefile.in b/dlls/user/tests/Makefile.in index 7e3d7b40cba..9654a478ae6 100644 --- a/dlls/user/tests/Makefile.in +++ b/dlls/user/tests/Makefile.in @@ -7,6 +7,7 @@ IMPORTS = user32 gdi32 advapi32 CTESTS = \ class.c \ + generated.c \ sysparams.c \ win.c \ wsprintf.c diff --git a/dlls/user/tests/generated.c b/dlls/user/tests/generated.c new file mode 100644 index 00000000000..37db540c992 --- /dev/null +++ b/dlls/user/tests/generated.c @@ -0,0 +1,1497 @@ +/* File generated automatically from tools/winapi/test.dat; do not edit! */ +/* This file can be copied, modified and distributed without restriction. */ + +/* + * Unit tests for data structure packing + */ + +#include + +#include "wine/test.h" +#include "winbase.h" +#include "winuser.h" + +void test_pack(void) +{ + /* ACCESSTIMEOUT */ + ok(FIELD_OFFSET(ACCESSTIMEOUT, cbSize) == 0, + "FIELD_OFFSET(ACCESSTIMEOUT, cbSize) == %ld (expected 0)", + FIELD_OFFSET(ACCESSTIMEOUT, cbSize)); /* UINT */ + ok(FIELD_OFFSET(ACCESSTIMEOUT, dwFlags) == 4, + "FIELD_OFFSET(ACCESSTIMEOUT, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(ACCESSTIMEOUT, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(ACCESSTIMEOUT, iTimeOutMSec) == 8, + "FIELD_OFFSET(ACCESSTIMEOUT, iTimeOutMSec) == %ld (expected 8)", + FIELD_OFFSET(ACCESSTIMEOUT, iTimeOutMSec)); /* DWORD */ + ok(sizeof(ACCESSTIMEOUT) == 12, "sizeof(ACCESSTIMEOUT) == %d (expected 12)", sizeof(ACCESSTIMEOUT)); + + /* ANIMATIONINFO */ + ok(FIELD_OFFSET(ANIMATIONINFO, cbSize) == 0, + "FIELD_OFFSET(ANIMATIONINFO, cbSize) == %ld (expected 0)", + FIELD_OFFSET(ANIMATIONINFO, cbSize)); /* UINT */ + ok(FIELD_OFFSET(ANIMATIONINFO, iMinAnimate) == 4, + "FIELD_OFFSET(ANIMATIONINFO, iMinAnimate) == %ld (expected 4)", + FIELD_OFFSET(ANIMATIONINFO, iMinAnimate)); /* INT */ + ok(sizeof(ANIMATIONINFO) == 8, "sizeof(ANIMATIONINFO) == %d (expected 8)", sizeof(ANIMATIONINFO)); + + /* CBTACTIVATESTRUCT */ + ok(FIELD_OFFSET(CBTACTIVATESTRUCT, fMouse) == 0, + "FIELD_OFFSET(CBTACTIVATESTRUCT, fMouse) == %ld (expected 0)", + FIELD_OFFSET(CBTACTIVATESTRUCT, fMouse)); /* BOOL */ + ok(FIELD_OFFSET(CBTACTIVATESTRUCT, hWndActive) == 4, + "FIELD_OFFSET(CBTACTIVATESTRUCT, hWndActive) == %ld (expected 4)", + FIELD_OFFSET(CBTACTIVATESTRUCT, hWndActive)); /* HWND */ + ok(sizeof(CBTACTIVATESTRUCT) == 8, "sizeof(CBTACTIVATESTRUCT) == %d (expected 8)", sizeof(CBTACTIVATESTRUCT)); + + /* CBT_CREATEWNDA */ + ok(FIELD_OFFSET(CBT_CREATEWNDA, lpcs) == 0, + "FIELD_OFFSET(CBT_CREATEWNDA, lpcs) == %ld (expected 0)", + FIELD_OFFSET(CBT_CREATEWNDA, lpcs)); /* CREATESTRUCTA * */ + ok(FIELD_OFFSET(CBT_CREATEWNDA, hwndInsertAfter) == 4, + "FIELD_OFFSET(CBT_CREATEWNDA, hwndInsertAfter) == %ld (expected 4)", + FIELD_OFFSET(CBT_CREATEWNDA, hwndInsertAfter)); /* HWND */ + ok(sizeof(CBT_CREATEWNDA) == 8, "sizeof(CBT_CREATEWNDA) == %d (expected 8)", sizeof(CBT_CREATEWNDA)); + + /* CBT_CREATEWNDW */ + ok(FIELD_OFFSET(CBT_CREATEWNDW, lpcs) == 0, + "FIELD_OFFSET(CBT_CREATEWNDW, lpcs) == %ld (expected 0)", + FIELD_OFFSET(CBT_CREATEWNDW, lpcs)); /* CREATESTRUCTW * */ + ok(FIELD_OFFSET(CBT_CREATEWNDW, hwndInsertAfter) == 4, + "FIELD_OFFSET(CBT_CREATEWNDW, hwndInsertAfter) == %ld (expected 4)", + FIELD_OFFSET(CBT_CREATEWNDW, hwndInsertAfter)); /* HWND */ + ok(sizeof(CBT_CREATEWNDW) == 8, "sizeof(CBT_CREATEWNDW) == %d (expected 8)", sizeof(CBT_CREATEWNDW)); + + /* CLIENTCREATESTRUCT */ + ok(FIELD_OFFSET(CLIENTCREATESTRUCT, hWindowMenu) == 0, + "FIELD_OFFSET(CLIENTCREATESTRUCT, hWindowMenu) == %ld (expected 0)", + FIELD_OFFSET(CLIENTCREATESTRUCT, hWindowMenu)); /* HMENU */ + ok(FIELD_OFFSET(CLIENTCREATESTRUCT, idFirstChild) == 4, + "FIELD_OFFSET(CLIENTCREATESTRUCT, idFirstChild) == %ld (expected 4)", + FIELD_OFFSET(CLIENTCREATESTRUCT, idFirstChild)); /* UINT */ + ok(sizeof(CLIENTCREATESTRUCT) == 8, "sizeof(CLIENTCREATESTRUCT) == %d (expected 8)", sizeof(CLIENTCREATESTRUCT)); + + /* COMPAREITEMSTRUCT */ + ok(FIELD_OFFSET(COMPAREITEMSTRUCT, CtlType) == 0, + "FIELD_OFFSET(COMPAREITEMSTRUCT, CtlType) == %ld (expected 0)", + FIELD_OFFSET(COMPAREITEMSTRUCT, CtlType)); /* UINT */ + ok(FIELD_OFFSET(COMPAREITEMSTRUCT, CtlID) == 4, + "FIELD_OFFSET(COMPAREITEMSTRUCT, CtlID) == %ld (expected 4)", + FIELD_OFFSET(COMPAREITEMSTRUCT, CtlID)); /* UINT */ + ok(FIELD_OFFSET(COMPAREITEMSTRUCT, hwndItem) == 8, + "FIELD_OFFSET(COMPAREITEMSTRUCT, hwndItem) == %ld (expected 8)", + FIELD_OFFSET(COMPAREITEMSTRUCT, hwndItem)); /* HWND */ + ok(FIELD_OFFSET(COMPAREITEMSTRUCT, itemID1) == 12, + "FIELD_OFFSET(COMPAREITEMSTRUCT, itemID1) == %ld (expected 12)", + FIELD_OFFSET(COMPAREITEMSTRUCT, itemID1)); /* UINT */ + ok(FIELD_OFFSET(COMPAREITEMSTRUCT, itemData1) == 16, + "FIELD_OFFSET(COMPAREITEMSTRUCT, itemData1) == %ld (expected 16)", + FIELD_OFFSET(COMPAREITEMSTRUCT, itemData1)); /* DWORD */ + ok(FIELD_OFFSET(COMPAREITEMSTRUCT, itemID2) == 20, + "FIELD_OFFSET(COMPAREITEMSTRUCT, itemID2) == %ld (expected 20)", + FIELD_OFFSET(COMPAREITEMSTRUCT, itemID2)); /* UINT */ + ok(FIELD_OFFSET(COMPAREITEMSTRUCT, itemData2) == 24, + "FIELD_OFFSET(COMPAREITEMSTRUCT, itemData2) == %ld (expected 24)", + FIELD_OFFSET(COMPAREITEMSTRUCT, itemData2)); /* DWORD */ + ok(FIELD_OFFSET(COMPAREITEMSTRUCT, dwLocaleId) == 28, + "FIELD_OFFSET(COMPAREITEMSTRUCT, dwLocaleId) == %ld (expected 28)", + FIELD_OFFSET(COMPAREITEMSTRUCT, dwLocaleId)); /* DWORD */ + ok(sizeof(COMPAREITEMSTRUCT) == 32, "sizeof(COMPAREITEMSTRUCT) == %d (expected 32)", sizeof(COMPAREITEMSTRUCT)); + + /* COPYDATASTRUCT */ + ok(FIELD_OFFSET(COPYDATASTRUCT, dwData) == 0, + "FIELD_OFFSET(COPYDATASTRUCT, dwData) == %ld (expected 0)", + FIELD_OFFSET(COPYDATASTRUCT, dwData)); /* DWORD */ + ok(FIELD_OFFSET(COPYDATASTRUCT, cbData) == 4, + "FIELD_OFFSET(COPYDATASTRUCT, cbData) == %ld (expected 4)", + FIELD_OFFSET(COPYDATASTRUCT, cbData)); /* DWORD */ + ok(FIELD_OFFSET(COPYDATASTRUCT, lpData) == 8, + "FIELD_OFFSET(COPYDATASTRUCT, lpData) == %ld (expected 8)", + FIELD_OFFSET(COPYDATASTRUCT, lpData)); /* LPVOID */ + ok(sizeof(COPYDATASTRUCT) == 12, "sizeof(COPYDATASTRUCT) == %d (expected 12)", sizeof(COPYDATASTRUCT)); + + /* CREATESTRUCTA */ + ok(FIELD_OFFSET(CREATESTRUCTA, lpCreateParams) == 0, + "FIELD_OFFSET(CREATESTRUCTA, lpCreateParams) == %ld (expected 0)", + FIELD_OFFSET(CREATESTRUCTA, lpCreateParams)); /* LPVOID */ + ok(FIELD_OFFSET(CREATESTRUCTA, hInstance) == 4, + "FIELD_OFFSET(CREATESTRUCTA, hInstance) == %ld (expected 4)", + FIELD_OFFSET(CREATESTRUCTA, hInstance)); /* HINSTANCE */ + ok(FIELD_OFFSET(CREATESTRUCTA, hMenu) == 8, + "FIELD_OFFSET(CREATESTRUCTA, hMenu) == %ld (expected 8)", + FIELD_OFFSET(CREATESTRUCTA, hMenu)); /* HMENU */ + ok(FIELD_OFFSET(CREATESTRUCTA, hwndParent) == 12, + "FIELD_OFFSET(CREATESTRUCTA, hwndParent) == %ld (expected 12)", + FIELD_OFFSET(CREATESTRUCTA, hwndParent)); /* HWND */ + ok(FIELD_OFFSET(CREATESTRUCTA, cy) == 16, + "FIELD_OFFSET(CREATESTRUCTA, cy) == %ld (expected 16)", + FIELD_OFFSET(CREATESTRUCTA, cy)); /* INT */ + ok(FIELD_OFFSET(CREATESTRUCTA, cx) == 20, + "FIELD_OFFSET(CREATESTRUCTA, cx) == %ld (expected 20)", + FIELD_OFFSET(CREATESTRUCTA, cx)); /* INT */ + ok(FIELD_OFFSET(CREATESTRUCTA, y) == 24, + "FIELD_OFFSET(CREATESTRUCTA, y) == %ld (expected 24)", + FIELD_OFFSET(CREATESTRUCTA, y)); /* INT */ + ok(FIELD_OFFSET(CREATESTRUCTA, x) == 28, + "FIELD_OFFSET(CREATESTRUCTA, x) == %ld (expected 28)", + FIELD_OFFSET(CREATESTRUCTA, x)); /* INT */ + ok(FIELD_OFFSET(CREATESTRUCTA, style) == 32, + "FIELD_OFFSET(CREATESTRUCTA, style) == %ld (expected 32)", + FIELD_OFFSET(CREATESTRUCTA, style)); /* LONG */ + ok(FIELD_OFFSET(CREATESTRUCTA, lpszName) == 36, + "FIELD_OFFSET(CREATESTRUCTA, lpszName) == %ld (expected 36)", + FIELD_OFFSET(CREATESTRUCTA, lpszName)); /* LPCSTR */ + ok(FIELD_OFFSET(CREATESTRUCTA, lpszClass) == 40, + "FIELD_OFFSET(CREATESTRUCTA, lpszClass) == %ld (expected 40)", + FIELD_OFFSET(CREATESTRUCTA, lpszClass)); /* LPCSTR */ + ok(FIELD_OFFSET(CREATESTRUCTA, dwExStyle) == 44, + "FIELD_OFFSET(CREATESTRUCTA, dwExStyle) == %ld (expected 44)", + FIELD_OFFSET(CREATESTRUCTA, dwExStyle)); /* DWORD */ + ok(sizeof(CREATESTRUCTA) == 48, "sizeof(CREATESTRUCTA) == %d (expected 48)", sizeof(CREATESTRUCTA)); + + /* CREATESTRUCTW */ + ok(FIELD_OFFSET(CREATESTRUCTW, lpCreateParams) == 0, + "FIELD_OFFSET(CREATESTRUCTW, lpCreateParams) == %ld (expected 0)", + FIELD_OFFSET(CREATESTRUCTW, lpCreateParams)); /* LPVOID */ + ok(FIELD_OFFSET(CREATESTRUCTW, hInstance) == 4, + "FIELD_OFFSET(CREATESTRUCTW, hInstance) == %ld (expected 4)", + FIELD_OFFSET(CREATESTRUCTW, hInstance)); /* HINSTANCE */ + ok(FIELD_OFFSET(CREATESTRUCTW, hMenu) == 8, + "FIELD_OFFSET(CREATESTRUCTW, hMenu) == %ld (expected 8)", + FIELD_OFFSET(CREATESTRUCTW, hMenu)); /* HMENU */ + ok(FIELD_OFFSET(CREATESTRUCTW, hwndParent) == 12, + "FIELD_OFFSET(CREATESTRUCTW, hwndParent) == %ld (expected 12)", + FIELD_OFFSET(CREATESTRUCTW, hwndParent)); /* HWND */ + ok(FIELD_OFFSET(CREATESTRUCTW, cy) == 16, + "FIELD_OFFSET(CREATESTRUCTW, cy) == %ld (expected 16)", + FIELD_OFFSET(CREATESTRUCTW, cy)); /* INT */ + ok(FIELD_OFFSET(CREATESTRUCTW, cx) == 20, + "FIELD_OFFSET(CREATESTRUCTW, cx) == %ld (expected 20)", + FIELD_OFFSET(CREATESTRUCTW, cx)); /* INT */ + ok(FIELD_OFFSET(CREATESTRUCTW, y) == 24, + "FIELD_OFFSET(CREATESTRUCTW, y) == %ld (expected 24)", + FIELD_OFFSET(CREATESTRUCTW, y)); /* INT */ + ok(FIELD_OFFSET(CREATESTRUCTW, x) == 28, + "FIELD_OFFSET(CREATESTRUCTW, x) == %ld (expected 28)", + FIELD_OFFSET(CREATESTRUCTW, x)); /* INT */ + ok(FIELD_OFFSET(CREATESTRUCTW, style) == 32, + "FIELD_OFFSET(CREATESTRUCTW, style) == %ld (expected 32)", + FIELD_OFFSET(CREATESTRUCTW, style)); /* LONG */ + ok(FIELD_OFFSET(CREATESTRUCTW, lpszName) == 36, + "FIELD_OFFSET(CREATESTRUCTW, lpszName) == %ld (expected 36)", + FIELD_OFFSET(CREATESTRUCTW, lpszName)); /* LPCWSTR */ + ok(FIELD_OFFSET(CREATESTRUCTW, lpszClass) == 40, + "FIELD_OFFSET(CREATESTRUCTW, lpszClass) == %ld (expected 40)", + FIELD_OFFSET(CREATESTRUCTW, lpszClass)); /* LPCWSTR */ + ok(FIELD_OFFSET(CREATESTRUCTW, dwExStyle) == 44, + "FIELD_OFFSET(CREATESTRUCTW, dwExStyle) == %ld (expected 44)", + FIELD_OFFSET(CREATESTRUCTW, dwExStyle)); /* DWORD */ + ok(sizeof(CREATESTRUCTW) == 48, "sizeof(CREATESTRUCTW) == %d (expected 48)", sizeof(CREATESTRUCTW)); + + /* CURSORINFO */ + ok(FIELD_OFFSET(CURSORINFO, cbSize) == 0, + "FIELD_OFFSET(CURSORINFO, cbSize) == %ld (expected 0)", + FIELD_OFFSET(CURSORINFO, cbSize)); /* DWORD */ + ok(FIELD_OFFSET(CURSORINFO, flags) == 4, + "FIELD_OFFSET(CURSORINFO, flags) == %ld (expected 4)", + FIELD_OFFSET(CURSORINFO, flags)); /* DWORD */ + ok(FIELD_OFFSET(CURSORINFO, hCursor) == 8, + "FIELD_OFFSET(CURSORINFO, hCursor) == %ld (expected 8)", + FIELD_OFFSET(CURSORINFO, hCursor)); /* HCURSOR */ + ok(FIELD_OFFSET(CURSORINFO, ptScreenPos) == 12, + "FIELD_OFFSET(CURSORINFO, ptScreenPos) == %ld (expected 12)", + FIELD_OFFSET(CURSORINFO, ptScreenPos)); /* POINT */ + ok(sizeof(CURSORINFO) == 20, "sizeof(CURSORINFO) == %d (expected 20)", sizeof(CURSORINFO)); + + /* CWPRETSTRUCT */ + ok(FIELD_OFFSET(CWPRETSTRUCT, lResult) == 0, + "FIELD_OFFSET(CWPRETSTRUCT, lResult) == %ld (expected 0)", + FIELD_OFFSET(CWPRETSTRUCT, lResult)); /* LRESULT */ + ok(FIELD_OFFSET(CWPRETSTRUCT, lParam) == 4, + "FIELD_OFFSET(CWPRETSTRUCT, lParam) == %ld (expected 4)", + FIELD_OFFSET(CWPRETSTRUCT, lParam)); /* LPARAM */ + ok(FIELD_OFFSET(CWPRETSTRUCT, wParam) == 8, + "FIELD_OFFSET(CWPRETSTRUCT, wParam) == %ld (expected 8)", + FIELD_OFFSET(CWPRETSTRUCT, wParam)); /* WPARAM */ + ok(FIELD_OFFSET(CWPRETSTRUCT, message) == 12, + "FIELD_OFFSET(CWPRETSTRUCT, message) == %ld (expected 12)", + FIELD_OFFSET(CWPRETSTRUCT, message)); /* DWORD */ + ok(FIELD_OFFSET(CWPRETSTRUCT, hwnd) == 16, + "FIELD_OFFSET(CWPRETSTRUCT, hwnd) == %ld (expected 16)", + FIELD_OFFSET(CWPRETSTRUCT, hwnd)); /* HWND */ + ok(sizeof(CWPRETSTRUCT) == 20, "sizeof(CWPRETSTRUCT) == %d (expected 20)", sizeof(CWPRETSTRUCT)); + + /* CWPSTRUCT */ + ok(FIELD_OFFSET(CWPSTRUCT, lParam) == 0, + "FIELD_OFFSET(CWPSTRUCT, lParam) == %ld (expected 0)", + FIELD_OFFSET(CWPSTRUCT, lParam)); /* LPARAM */ + ok(FIELD_OFFSET(CWPSTRUCT, wParam) == 4, + "FIELD_OFFSET(CWPSTRUCT, wParam) == %ld (expected 4)", + FIELD_OFFSET(CWPSTRUCT, wParam)); /* WPARAM */ + ok(FIELD_OFFSET(CWPSTRUCT, message) == 8, + "FIELD_OFFSET(CWPSTRUCT, message) == %ld (expected 8)", + FIELD_OFFSET(CWPSTRUCT, message)); /* UINT */ + ok(FIELD_OFFSET(CWPSTRUCT, hwnd) == 12, + "FIELD_OFFSET(CWPSTRUCT, hwnd) == %ld (expected 12)", + FIELD_OFFSET(CWPSTRUCT, hwnd)); /* HWND */ + ok(sizeof(CWPSTRUCT) == 16, "sizeof(CWPSTRUCT) == %d (expected 16)", sizeof(CWPSTRUCT)); + + /* DEBUGHOOKINFO */ + ok(FIELD_OFFSET(DEBUGHOOKINFO, idThread) == 0, + "FIELD_OFFSET(DEBUGHOOKINFO, idThread) == %ld (expected 0)", + FIELD_OFFSET(DEBUGHOOKINFO, idThread)); /* DWORD */ + ok(FIELD_OFFSET(DEBUGHOOKINFO, idThreadInstaller) == 4, + "FIELD_OFFSET(DEBUGHOOKINFO, idThreadInstaller) == %ld (expected 4)", + FIELD_OFFSET(DEBUGHOOKINFO, idThreadInstaller)); /* DWORD */ + ok(FIELD_OFFSET(DEBUGHOOKINFO, lParam) == 8, + "FIELD_OFFSET(DEBUGHOOKINFO, lParam) == %ld (expected 8)", + FIELD_OFFSET(DEBUGHOOKINFO, lParam)); /* LPARAM */ + ok(FIELD_OFFSET(DEBUGHOOKINFO, wParam) == 12, + "FIELD_OFFSET(DEBUGHOOKINFO, wParam) == %ld (expected 12)", + FIELD_OFFSET(DEBUGHOOKINFO, wParam)); /* WPARAM */ + ok(FIELD_OFFSET(DEBUGHOOKINFO, code) == 16, + "FIELD_OFFSET(DEBUGHOOKINFO, code) == %ld (expected 16)", + FIELD_OFFSET(DEBUGHOOKINFO, code)); /* INT */ + ok(sizeof(DEBUGHOOKINFO) == 20, "sizeof(DEBUGHOOKINFO) == %d (expected 20)", sizeof(DEBUGHOOKINFO)); + + /* DELETEITEMSTRUCT */ + ok(FIELD_OFFSET(DELETEITEMSTRUCT, CtlType) == 0, + "FIELD_OFFSET(DELETEITEMSTRUCT, CtlType) == %ld (expected 0)", + FIELD_OFFSET(DELETEITEMSTRUCT, CtlType)); /* UINT */ + ok(FIELD_OFFSET(DELETEITEMSTRUCT, CtlID) == 4, + "FIELD_OFFSET(DELETEITEMSTRUCT, CtlID) == %ld (expected 4)", + FIELD_OFFSET(DELETEITEMSTRUCT, CtlID)); /* UINT */ + ok(FIELD_OFFSET(DELETEITEMSTRUCT, itemID) == 8, + "FIELD_OFFSET(DELETEITEMSTRUCT, itemID) == %ld (expected 8)", + FIELD_OFFSET(DELETEITEMSTRUCT, itemID)); /* UINT */ + ok(FIELD_OFFSET(DELETEITEMSTRUCT, hwndItem) == 12, + "FIELD_OFFSET(DELETEITEMSTRUCT, hwndItem) == %ld (expected 12)", + FIELD_OFFSET(DELETEITEMSTRUCT, hwndItem)); /* HWND */ + ok(FIELD_OFFSET(DELETEITEMSTRUCT, itemData) == 16, + "FIELD_OFFSET(DELETEITEMSTRUCT, itemData) == %ld (expected 16)", + FIELD_OFFSET(DELETEITEMSTRUCT, itemData)); /* DWORD */ + ok(sizeof(DELETEITEMSTRUCT) == 20, "sizeof(DELETEITEMSTRUCT) == %d (expected 20)", sizeof(DELETEITEMSTRUCT)); + + /* DLGITEMTEMPLATE */ + ok(FIELD_OFFSET(DLGITEMTEMPLATE, style) == 0, + "FIELD_OFFSET(DLGITEMTEMPLATE, style) == %ld (expected 0)", + FIELD_OFFSET(DLGITEMTEMPLATE, style)); /* DWORD */ + ok(FIELD_OFFSET(DLGITEMTEMPLATE, dwExtendedStyle) == 4, + "FIELD_OFFSET(DLGITEMTEMPLATE, dwExtendedStyle) == %ld (expected 4)", + FIELD_OFFSET(DLGITEMTEMPLATE, dwExtendedStyle)); /* DWORD */ + ok(FIELD_OFFSET(DLGITEMTEMPLATE, x) == 8, + "FIELD_OFFSET(DLGITEMTEMPLATE, x) == %ld (expected 8)", + FIELD_OFFSET(DLGITEMTEMPLATE, x)); /* short */ + ok(FIELD_OFFSET(DLGITEMTEMPLATE, y) == 10, + "FIELD_OFFSET(DLGITEMTEMPLATE, y) == %ld (expected 10)", + FIELD_OFFSET(DLGITEMTEMPLATE, y)); /* short */ + ok(FIELD_OFFSET(DLGITEMTEMPLATE, cx) == 12, + "FIELD_OFFSET(DLGITEMTEMPLATE, cx) == %ld (expected 12)", + FIELD_OFFSET(DLGITEMTEMPLATE, cx)); /* short */ + ok(FIELD_OFFSET(DLGITEMTEMPLATE, cy) == 14, + "FIELD_OFFSET(DLGITEMTEMPLATE, cy) == %ld (expected 14)", + FIELD_OFFSET(DLGITEMTEMPLATE, cy)); /* short */ + ok(FIELD_OFFSET(DLGITEMTEMPLATE, id) == 16, + "FIELD_OFFSET(DLGITEMTEMPLATE, id) == %ld (expected 16)", + FIELD_OFFSET(DLGITEMTEMPLATE, id)); /* WORD */ + ok(sizeof(DLGITEMTEMPLATE) == 18, "sizeof(DLGITEMTEMPLATE) == %d (expected 18)", sizeof(DLGITEMTEMPLATE)); + + /* DLGTEMPLATE */ + ok(FIELD_OFFSET(DLGTEMPLATE, style) == 0, + "FIELD_OFFSET(DLGTEMPLATE, style) == %ld (expected 0)", + FIELD_OFFSET(DLGTEMPLATE, style)); /* DWORD */ + ok(FIELD_OFFSET(DLGTEMPLATE, dwExtendedStyle) == 4, + "FIELD_OFFSET(DLGTEMPLATE, dwExtendedStyle) == %ld (expected 4)", + FIELD_OFFSET(DLGTEMPLATE, dwExtendedStyle)); /* DWORD */ + ok(FIELD_OFFSET(DLGTEMPLATE, cdit) == 8, + "FIELD_OFFSET(DLGTEMPLATE, cdit) == %ld (expected 8)", + FIELD_OFFSET(DLGTEMPLATE, cdit)); /* WORD */ + ok(FIELD_OFFSET(DLGTEMPLATE, x) == 10, + "FIELD_OFFSET(DLGTEMPLATE, x) == %ld (expected 10)", + FIELD_OFFSET(DLGTEMPLATE, x)); /* short */ + ok(FIELD_OFFSET(DLGTEMPLATE, y) == 12, + "FIELD_OFFSET(DLGTEMPLATE, y) == %ld (expected 12)", + FIELD_OFFSET(DLGTEMPLATE, y)); /* short */ + ok(FIELD_OFFSET(DLGTEMPLATE, cx) == 14, + "FIELD_OFFSET(DLGTEMPLATE, cx) == %ld (expected 14)", + FIELD_OFFSET(DLGTEMPLATE, cx)); /* short */ + ok(FIELD_OFFSET(DLGTEMPLATE, cy) == 16, + "FIELD_OFFSET(DLGTEMPLATE, cy) == %ld (expected 16)", + FIELD_OFFSET(DLGTEMPLATE, cy)); /* short */ + ok(sizeof(DLGTEMPLATE) == 18, "sizeof(DLGTEMPLATE) == %d (expected 18)", sizeof(DLGTEMPLATE)); + + /* DRAWITEMSTRUCT */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, CtlType) == 0, + "FIELD_OFFSET(DRAWITEMSTRUCT, CtlType) == %ld (expected 0)", + FIELD_OFFSET(DRAWITEMSTRUCT, CtlType)); /* UINT */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, CtlID) == 4, + "FIELD_OFFSET(DRAWITEMSTRUCT, CtlID) == %ld (expected 4)", + FIELD_OFFSET(DRAWITEMSTRUCT, CtlID)); /* UINT */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, itemID) == 8, + "FIELD_OFFSET(DRAWITEMSTRUCT, itemID) == %ld (expected 8)", + FIELD_OFFSET(DRAWITEMSTRUCT, itemID)); /* UINT */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, itemAction) == 12, + "FIELD_OFFSET(DRAWITEMSTRUCT, itemAction) == %ld (expected 12)", + FIELD_OFFSET(DRAWITEMSTRUCT, itemAction)); /* UINT */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, itemState) == 16, + "FIELD_OFFSET(DRAWITEMSTRUCT, itemState) == %ld (expected 16)", + FIELD_OFFSET(DRAWITEMSTRUCT, itemState)); /* UINT */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, hwndItem) == 20, + "FIELD_OFFSET(DRAWITEMSTRUCT, hwndItem) == %ld (expected 20)", + FIELD_OFFSET(DRAWITEMSTRUCT, hwndItem)); /* HWND */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, hDC) == 24, + "FIELD_OFFSET(DRAWITEMSTRUCT, hDC) == %ld (expected 24)", + FIELD_OFFSET(DRAWITEMSTRUCT, hDC)); /* HDC */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, rcItem) == 28, + "FIELD_OFFSET(DRAWITEMSTRUCT, rcItem) == %ld (expected 28)", + FIELD_OFFSET(DRAWITEMSTRUCT, rcItem)); /* RECT */ + ok(FIELD_OFFSET(DRAWITEMSTRUCT, itemData) == 44, + "FIELD_OFFSET(DRAWITEMSTRUCT, itemData) == %ld (expected 44)", + FIELD_OFFSET(DRAWITEMSTRUCT, itemData)); /* DWORD */ + ok(sizeof(DRAWITEMSTRUCT) == 48, "sizeof(DRAWITEMSTRUCT) == %d (expected 48)", sizeof(DRAWITEMSTRUCT)); + + /* DRAWTEXTPARAMS */ + ok(FIELD_OFFSET(DRAWTEXTPARAMS, cbSize) == 0, + "FIELD_OFFSET(DRAWTEXTPARAMS, cbSize) == %ld (expected 0)", + FIELD_OFFSET(DRAWTEXTPARAMS, cbSize)); /* UINT */ + ok(FIELD_OFFSET(DRAWTEXTPARAMS, iTabLength) == 4, + "FIELD_OFFSET(DRAWTEXTPARAMS, iTabLength) == %ld (expected 4)", + FIELD_OFFSET(DRAWTEXTPARAMS, iTabLength)); /* INT */ + ok(FIELD_OFFSET(DRAWTEXTPARAMS, iLeftMargin) == 8, + "FIELD_OFFSET(DRAWTEXTPARAMS, iLeftMargin) == %ld (expected 8)", + FIELD_OFFSET(DRAWTEXTPARAMS, iLeftMargin)); /* INT */ + ok(FIELD_OFFSET(DRAWTEXTPARAMS, iRightMargin) == 12, + "FIELD_OFFSET(DRAWTEXTPARAMS, iRightMargin) == %ld (expected 12)", + FIELD_OFFSET(DRAWTEXTPARAMS, iRightMargin)); /* INT */ + ok(FIELD_OFFSET(DRAWTEXTPARAMS, uiLengthDrawn) == 16, + "FIELD_OFFSET(DRAWTEXTPARAMS, uiLengthDrawn) == %ld (expected 16)", + FIELD_OFFSET(DRAWTEXTPARAMS, uiLengthDrawn)); /* UINT */ + ok(sizeof(DRAWTEXTPARAMS) == 20, "sizeof(DRAWTEXTPARAMS) == %d (expected 20)", sizeof(DRAWTEXTPARAMS)); + + /* EVENTMSG */ + ok(FIELD_OFFSET(EVENTMSG, message) == 0, + "FIELD_OFFSET(EVENTMSG, message) == %ld (expected 0)", + FIELD_OFFSET(EVENTMSG, message)); /* UINT */ + ok(FIELD_OFFSET(EVENTMSG, paramL) == 4, + "FIELD_OFFSET(EVENTMSG, paramL) == %ld (expected 4)", + FIELD_OFFSET(EVENTMSG, paramL)); /* UINT */ + ok(FIELD_OFFSET(EVENTMSG, paramH) == 8, + "FIELD_OFFSET(EVENTMSG, paramH) == %ld (expected 8)", + FIELD_OFFSET(EVENTMSG, paramH)); /* UINT */ + ok(FIELD_OFFSET(EVENTMSG, time) == 12, + "FIELD_OFFSET(EVENTMSG, time) == %ld (expected 12)", + FIELD_OFFSET(EVENTMSG, time)); /* DWORD */ + ok(FIELD_OFFSET(EVENTMSG, hwnd) == 16, + "FIELD_OFFSET(EVENTMSG, hwnd) == %ld (expected 16)", + FIELD_OFFSET(EVENTMSG, hwnd)); /* HWND */ + ok(sizeof(EVENTMSG) == 20, "sizeof(EVENTMSG) == %d (expected 20)", sizeof(EVENTMSG)); + + /* FILTERKEYS */ + ok(FIELD_OFFSET(FILTERKEYS, cbSize) == 0, + "FIELD_OFFSET(FILTERKEYS, cbSize) == %ld (expected 0)", + FIELD_OFFSET(FILTERKEYS, cbSize)); /* UINT */ + ok(FIELD_OFFSET(FILTERKEYS, dwFlags) == 4, + "FIELD_OFFSET(FILTERKEYS, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(FILTERKEYS, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(FILTERKEYS, iWaitMSec) == 8, + "FIELD_OFFSET(FILTERKEYS, iWaitMSec) == %ld (expected 8)", + FIELD_OFFSET(FILTERKEYS, iWaitMSec)); /* DWORD */ + ok(FIELD_OFFSET(FILTERKEYS, iDelayMSec) == 12, + "FIELD_OFFSET(FILTERKEYS, iDelayMSec) == %ld (expected 12)", + FIELD_OFFSET(FILTERKEYS, iDelayMSec)); /* DWORD */ + ok(FIELD_OFFSET(FILTERKEYS, iRepeatMSec) == 16, + "FIELD_OFFSET(FILTERKEYS, iRepeatMSec) == %ld (expected 16)", + FIELD_OFFSET(FILTERKEYS, iRepeatMSec)); /* DWORD */ + ok(FIELD_OFFSET(FILTERKEYS, iBounceMSec) == 20, + "FIELD_OFFSET(FILTERKEYS, iBounceMSec) == %ld (expected 20)", + FIELD_OFFSET(FILTERKEYS, iBounceMSec)); /* DWORD */ + ok(sizeof(FILTERKEYS) == 24, "sizeof(FILTERKEYS) == %d (expected 24)", sizeof(FILTERKEYS)); + + /* HARDWAREHOOKSTRUCT */ + ok(FIELD_OFFSET(HARDWAREHOOKSTRUCT, hWnd) == 0, + "FIELD_OFFSET(HARDWAREHOOKSTRUCT, hWnd) == %ld (expected 0)", + FIELD_OFFSET(HARDWAREHOOKSTRUCT, hWnd)); /* HWND */ + ok(FIELD_OFFSET(HARDWAREHOOKSTRUCT, wMessage) == 4, + "FIELD_OFFSET(HARDWAREHOOKSTRUCT, wMessage) == %ld (expected 4)", + FIELD_OFFSET(HARDWAREHOOKSTRUCT, wMessage)); /* UINT */ + ok(FIELD_OFFSET(HARDWAREHOOKSTRUCT, wParam) == 8, + "FIELD_OFFSET(HARDWAREHOOKSTRUCT, wParam) == %ld (expected 8)", + FIELD_OFFSET(HARDWAREHOOKSTRUCT, wParam)); /* WPARAM */ + ok(FIELD_OFFSET(HARDWAREHOOKSTRUCT, lParam) == 12, + "FIELD_OFFSET(HARDWAREHOOKSTRUCT, lParam) == %ld (expected 12)", + FIELD_OFFSET(HARDWAREHOOKSTRUCT, lParam)); /* LPARAM */ + ok(sizeof(HARDWAREHOOKSTRUCT) == 16, "sizeof(HARDWAREHOOKSTRUCT) == %d (expected 16)", sizeof(HARDWAREHOOKSTRUCT)); + + /* HARDWAREINPUT */ + ok(FIELD_OFFSET(HARDWAREINPUT, uMsg) == 0, + "FIELD_OFFSET(HARDWAREINPUT, uMsg) == %ld (expected 0)", + FIELD_OFFSET(HARDWAREINPUT, uMsg)); /* DWORD */ + ok(FIELD_OFFSET(HARDWAREINPUT, wParamL) == 4, + "FIELD_OFFSET(HARDWAREINPUT, wParamL) == %ld (expected 4)", + FIELD_OFFSET(HARDWAREINPUT, wParamL)); /* WORD */ + ok(FIELD_OFFSET(HARDWAREINPUT, wParamH) == 6, + "FIELD_OFFSET(HARDWAREINPUT, wParamH) == %ld (expected 6)", + FIELD_OFFSET(HARDWAREINPUT, wParamH)); /* WORD */ + ok(sizeof(HARDWAREINPUT) == 8, "sizeof(HARDWAREINPUT) == %d (expected 8)", sizeof(HARDWAREINPUT)); + + /* HELPINFO */ + ok(FIELD_OFFSET(HELPINFO, cbSize) == 0, + "FIELD_OFFSET(HELPINFO, cbSize) == %ld (expected 0)", + FIELD_OFFSET(HELPINFO, cbSize)); /* UINT */ + ok(FIELD_OFFSET(HELPINFO, iContextType) == 4, + "FIELD_OFFSET(HELPINFO, iContextType) == %ld (expected 4)", + FIELD_OFFSET(HELPINFO, iContextType)); /* INT */ + ok(FIELD_OFFSET(HELPINFO, iCtrlId) == 8, + "FIELD_OFFSET(HELPINFO, iCtrlId) == %ld (expected 8)", + FIELD_OFFSET(HELPINFO, iCtrlId)); /* INT */ + ok(FIELD_OFFSET(HELPINFO, hItemHandle) == 12, + "FIELD_OFFSET(HELPINFO, hItemHandle) == %ld (expected 12)", + FIELD_OFFSET(HELPINFO, hItemHandle)); /* HANDLE */ + ok(FIELD_OFFSET(HELPINFO, dwContextId) == 16, + "FIELD_OFFSET(HELPINFO, dwContextId) == %ld (expected 16)", + FIELD_OFFSET(HELPINFO, dwContextId)); /* DWORD */ + ok(FIELD_OFFSET(HELPINFO, MousePos) == 20, + "FIELD_OFFSET(HELPINFO, MousePos) == %ld (expected 20)", + FIELD_OFFSET(HELPINFO, MousePos)); /* POINT */ + ok(sizeof(HELPINFO) == 28, "sizeof(HELPINFO) == %d (expected 28)", sizeof(HELPINFO)); + + /* HELPWININFOA */ + ok(FIELD_OFFSET(HELPWININFOA, wStructSize) == 0, + "FIELD_OFFSET(HELPWININFOA, wStructSize) == %ld (expected 0)", + FIELD_OFFSET(HELPWININFOA, wStructSize)); /* int */ + ok(FIELD_OFFSET(HELPWININFOA, x) == 4, + "FIELD_OFFSET(HELPWININFOA, x) == %ld (expected 4)", + FIELD_OFFSET(HELPWININFOA, x)); /* int */ + ok(FIELD_OFFSET(HELPWININFOA, y) == 8, + "FIELD_OFFSET(HELPWININFOA, y) == %ld (expected 8)", + FIELD_OFFSET(HELPWININFOA, y)); /* int */ + ok(FIELD_OFFSET(HELPWININFOA, dx) == 12, + "FIELD_OFFSET(HELPWININFOA, dx) == %ld (expected 12)", + FIELD_OFFSET(HELPWININFOA, dx)); /* int */ + ok(FIELD_OFFSET(HELPWININFOA, dy) == 16, + "FIELD_OFFSET(HELPWININFOA, dy) == %ld (expected 16)", + FIELD_OFFSET(HELPWININFOA, dy)); /* int */ + ok(FIELD_OFFSET(HELPWININFOA, wMax) == 20, + "FIELD_OFFSET(HELPWININFOA, wMax) == %ld (expected 20)", + FIELD_OFFSET(HELPWININFOA, wMax)); /* int */ + ok(FIELD_OFFSET(HELPWININFOA, rgchMember) == 24, + "FIELD_OFFSET(HELPWININFOA, rgchMember) == %ld (expected 24)", + FIELD_OFFSET(HELPWININFOA, rgchMember)); /* CHAR[2] */ + ok(sizeof(HELPWININFOA) == 28, "sizeof(HELPWININFOA) == %d (expected 28)", sizeof(HELPWININFOA)); + + /* HELPWININFOW */ + ok(FIELD_OFFSET(HELPWININFOW, wStructSize) == 0, + "FIELD_OFFSET(HELPWININFOW, wStructSize) == %ld (expected 0)", + FIELD_OFFSET(HELPWININFOW, wStructSize)); /* int */ + ok(FIELD_OFFSET(HELPWININFOW, x) == 4, + "FIELD_OFFSET(HELPWININFOW, x) == %ld (expected 4)", + FIELD_OFFSET(HELPWININFOW, x)); /* int */ + ok(FIELD_OFFSET(HELPWININFOW, y) == 8, + "FIELD_OFFSET(HELPWININFOW, y) == %ld (expected 8)", + FIELD_OFFSET(HELPWININFOW, y)); /* int */ + ok(FIELD_OFFSET(HELPWININFOW, dx) == 12, + "FIELD_OFFSET(HELPWININFOW, dx) == %ld (expected 12)", + FIELD_OFFSET(HELPWININFOW, dx)); /* int */ + ok(FIELD_OFFSET(HELPWININFOW, dy) == 16, + "FIELD_OFFSET(HELPWININFOW, dy) == %ld (expected 16)", + FIELD_OFFSET(HELPWININFOW, dy)); /* int */ + ok(FIELD_OFFSET(HELPWININFOW, wMax) == 20, + "FIELD_OFFSET(HELPWININFOW, wMax) == %ld (expected 20)", + FIELD_OFFSET(HELPWININFOW, wMax)); /* int */ + ok(FIELD_OFFSET(HELPWININFOW, rgchMember) == 24, + "FIELD_OFFSET(HELPWININFOW, rgchMember) == %ld (expected 24)", + FIELD_OFFSET(HELPWININFOW, rgchMember)); /* WCHAR[2] */ + ok(sizeof(HELPWININFOW) == 28, "sizeof(HELPWININFOW) == %d (expected 28)", sizeof(HELPWININFOW)); + + /* HIGHCONTRASTA */ + ok(FIELD_OFFSET(HIGHCONTRASTA, cbSize) == 0, + "FIELD_OFFSET(HIGHCONTRASTA, cbSize) == %ld (expected 0)", + FIELD_OFFSET(HIGHCONTRASTA, cbSize)); /* UINT */ + ok(FIELD_OFFSET(HIGHCONTRASTA, dwFlags) == 4, + "FIELD_OFFSET(HIGHCONTRASTA, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(HIGHCONTRASTA, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(HIGHCONTRASTA, lpszDefaultScheme) == 8, + "FIELD_OFFSET(HIGHCONTRASTA, lpszDefaultScheme) == %ld (expected 8)", + FIELD_OFFSET(HIGHCONTRASTA, lpszDefaultScheme)); /* LPSTR */ + ok(sizeof(HIGHCONTRASTA) == 12, "sizeof(HIGHCONTRASTA) == %d (expected 12)", sizeof(HIGHCONTRASTA)); + + /* HIGHCONTRASTW */ + ok(FIELD_OFFSET(HIGHCONTRASTW, cbSize) == 0, + "FIELD_OFFSET(HIGHCONTRASTW, cbSize) == %ld (expected 0)", + FIELD_OFFSET(HIGHCONTRASTW, cbSize)); /* UINT */ + ok(FIELD_OFFSET(HIGHCONTRASTW, dwFlags) == 4, + "FIELD_OFFSET(HIGHCONTRASTW, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(HIGHCONTRASTW, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(HIGHCONTRASTW, lpszDefaultScheme) == 8, + "FIELD_OFFSET(HIGHCONTRASTW, lpszDefaultScheme) == %ld (expected 8)", + FIELD_OFFSET(HIGHCONTRASTW, lpszDefaultScheme)); /* LPWSTR */ + ok(sizeof(HIGHCONTRASTW) == 12, "sizeof(HIGHCONTRASTW) == %d (expected 12)", sizeof(HIGHCONTRASTW)); + + /* ICONINFO */ + ok(FIELD_OFFSET(ICONINFO, fIcon) == 0, + "FIELD_OFFSET(ICONINFO, fIcon) == %ld (expected 0)", + FIELD_OFFSET(ICONINFO, fIcon)); /* BOOL */ + ok(FIELD_OFFSET(ICONINFO, xHotspot) == 4, + "FIELD_OFFSET(ICONINFO, xHotspot) == %ld (expected 4)", + FIELD_OFFSET(ICONINFO, xHotspot)); /* DWORD */ + ok(FIELD_OFFSET(ICONINFO, yHotspot) == 8, + "FIELD_OFFSET(ICONINFO, yHotspot) == %ld (expected 8)", + FIELD_OFFSET(ICONINFO, yHotspot)); /* DWORD */ + ok(FIELD_OFFSET(ICONINFO, hbmMask) == 12, + "FIELD_OFFSET(ICONINFO, hbmMask) == %ld (expected 12)", + FIELD_OFFSET(ICONINFO, hbmMask)); /* HBITMAP */ + ok(FIELD_OFFSET(ICONINFO, hbmColor) == 16, + "FIELD_OFFSET(ICONINFO, hbmColor) == %ld (expected 16)", + FIELD_OFFSET(ICONINFO, hbmColor)); /* HBITMAP */ + ok(sizeof(ICONINFO) == 20, "sizeof(ICONINFO) == %d (expected 20)", sizeof(ICONINFO)); + + /* KBDLLHOOKSTRUCT */ + ok(FIELD_OFFSET(KBDLLHOOKSTRUCT, vkCode) == 0, + "FIELD_OFFSET(KBDLLHOOKSTRUCT, vkCode) == %ld (expected 0)", + FIELD_OFFSET(KBDLLHOOKSTRUCT, vkCode)); /* DWORD */ + ok(FIELD_OFFSET(KBDLLHOOKSTRUCT, scanCode) == 4, + "FIELD_OFFSET(KBDLLHOOKSTRUCT, scanCode) == %ld (expected 4)", + FIELD_OFFSET(KBDLLHOOKSTRUCT, scanCode)); /* DWORD */ + ok(FIELD_OFFSET(KBDLLHOOKSTRUCT, flags) == 8, + "FIELD_OFFSET(KBDLLHOOKSTRUCT, flags) == %ld (expected 8)", + FIELD_OFFSET(KBDLLHOOKSTRUCT, flags)); /* DWORD */ + ok(FIELD_OFFSET(KBDLLHOOKSTRUCT, time) == 12, + "FIELD_OFFSET(KBDLLHOOKSTRUCT, time) == %ld (expected 12)", + FIELD_OFFSET(KBDLLHOOKSTRUCT, time)); /* DWORD */ + ok(FIELD_OFFSET(KBDLLHOOKSTRUCT, dwExtraInfo) == 16, + "FIELD_OFFSET(KBDLLHOOKSTRUCT, dwExtraInfo) == %ld (expected 16)", + FIELD_OFFSET(KBDLLHOOKSTRUCT, dwExtraInfo)); /* ULONG_PTR */ + ok(sizeof(KBDLLHOOKSTRUCT) == 20, "sizeof(KBDLLHOOKSTRUCT) == %d (expected 20)", sizeof(KBDLLHOOKSTRUCT)); + + /* KEYBDINPUT */ + ok(FIELD_OFFSET(KEYBDINPUT, wVk) == 0, + "FIELD_OFFSET(KEYBDINPUT, wVk) == %ld (expected 0)", + FIELD_OFFSET(KEYBDINPUT, wVk)); /* WORD */ + ok(FIELD_OFFSET(KEYBDINPUT, wScan) == 2, + "FIELD_OFFSET(KEYBDINPUT, wScan) == %ld (expected 2)", + FIELD_OFFSET(KEYBDINPUT, wScan)); /* WORD */ + ok(FIELD_OFFSET(KEYBDINPUT, dwFlags) == 4, + "FIELD_OFFSET(KEYBDINPUT, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(KEYBDINPUT, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(KEYBDINPUT, time) == 8, + "FIELD_OFFSET(KEYBDINPUT, time) == %ld (expected 8)", + FIELD_OFFSET(KEYBDINPUT, time)); /* DWORD */ + ok(FIELD_OFFSET(KEYBDINPUT, dwExtraInfo) == 12, + "FIELD_OFFSET(KEYBDINPUT, dwExtraInfo) == %ld (expected 12)", + FIELD_OFFSET(KEYBDINPUT, dwExtraInfo)); /* ULONG_PTR */ + ok(sizeof(KEYBDINPUT) == 16, "sizeof(KEYBDINPUT) == %d (expected 16)", sizeof(KEYBDINPUT)); + + /* MDICREATESTRUCTA */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, szClass) == 0, + "FIELD_OFFSET(MDICREATESTRUCTA, szClass) == %ld (expected 0)", + FIELD_OFFSET(MDICREATESTRUCTA, szClass)); /* LPCSTR */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, szTitle) == 4, + "FIELD_OFFSET(MDICREATESTRUCTA, szTitle) == %ld (expected 4)", + FIELD_OFFSET(MDICREATESTRUCTA, szTitle)); /* LPCSTR */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, hOwner) == 8, + "FIELD_OFFSET(MDICREATESTRUCTA, hOwner) == %ld (expected 8)", + FIELD_OFFSET(MDICREATESTRUCTA, hOwner)); /* HINSTANCE */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, x) == 12, + "FIELD_OFFSET(MDICREATESTRUCTA, x) == %ld (expected 12)", + FIELD_OFFSET(MDICREATESTRUCTA, x)); /* INT */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, y) == 16, + "FIELD_OFFSET(MDICREATESTRUCTA, y) == %ld (expected 16)", + FIELD_OFFSET(MDICREATESTRUCTA, y)); /* INT */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, cx) == 20, + "FIELD_OFFSET(MDICREATESTRUCTA, cx) == %ld (expected 20)", + FIELD_OFFSET(MDICREATESTRUCTA, cx)); /* INT */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, cy) == 24, + "FIELD_OFFSET(MDICREATESTRUCTA, cy) == %ld (expected 24)", + FIELD_OFFSET(MDICREATESTRUCTA, cy)); /* INT */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, style) == 28, + "FIELD_OFFSET(MDICREATESTRUCTA, style) == %ld (expected 28)", + FIELD_OFFSET(MDICREATESTRUCTA, style)); /* DWORD */ + ok(FIELD_OFFSET(MDICREATESTRUCTA, lParam) == 32, + "FIELD_OFFSET(MDICREATESTRUCTA, lParam) == %ld (expected 32)", + FIELD_OFFSET(MDICREATESTRUCTA, lParam)); /* LPARAM */ + ok(sizeof(MDICREATESTRUCTA) == 36, "sizeof(MDICREATESTRUCTA) == %d (expected 36)", sizeof(MDICREATESTRUCTA)); + + /* MDICREATESTRUCTW */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, szClass) == 0, + "FIELD_OFFSET(MDICREATESTRUCTW, szClass) == %ld (expected 0)", + FIELD_OFFSET(MDICREATESTRUCTW, szClass)); /* LPCWSTR */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, szTitle) == 4, + "FIELD_OFFSET(MDICREATESTRUCTW, szTitle) == %ld (expected 4)", + FIELD_OFFSET(MDICREATESTRUCTW, szTitle)); /* LPCWSTR */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, hOwner) == 8, + "FIELD_OFFSET(MDICREATESTRUCTW, hOwner) == %ld (expected 8)", + FIELD_OFFSET(MDICREATESTRUCTW, hOwner)); /* HINSTANCE */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, x) == 12, + "FIELD_OFFSET(MDICREATESTRUCTW, x) == %ld (expected 12)", + FIELD_OFFSET(MDICREATESTRUCTW, x)); /* INT */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, y) == 16, + "FIELD_OFFSET(MDICREATESTRUCTW, y) == %ld (expected 16)", + FIELD_OFFSET(MDICREATESTRUCTW, y)); /* INT */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, cx) == 20, + "FIELD_OFFSET(MDICREATESTRUCTW, cx) == %ld (expected 20)", + FIELD_OFFSET(MDICREATESTRUCTW, cx)); /* INT */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, cy) == 24, + "FIELD_OFFSET(MDICREATESTRUCTW, cy) == %ld (expected 24)", + FIELD_OFFSET(MDICREATESTRUCTW, cy)); /* INT */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, style) == 28, + "FIELD_OFFSET(MDICREATESTRUCTW, style) == %ld (expected 28)", + FIELD_OFFSET(MDICREATESTRUCTW, style)); /* DWORD */ + ok(FIELD_OFFSET(MDICREATESTRUCTW, lParam) == 32, + "FIELD_OFFSET(MDICREATESTRUCTW, lParam) == %ld (expected 32)", + FIELD_OFFSET(MDICREATESTRUCTW, lParam)); /* LPARAM */ + ok(sizeof(MDICREATESTRUCTW) == 36, "sizeof(MDICREATESTRUCTW) == %d (expected 36)", sizeof(MDICREATESTRUCTW)); + + /* MDINEXTMENU */ + ok(FIELD_OFFSET(MDINEXTMENU, hmenuIn) == 0, + "FIELD_OFFSET(MDINEXTMENU, hmenuIn) == %ld (expected 0)", + FIELD_OFFSET(MDINEXTMENU, hmenuIn)); /* HMENU */ + ok(FIELD_OFFSET(MDINEXTMENU, hmenuNext) == 4, + "FIELD_OFFSET(MDINEXTMENU, hmenuNext) == %ld (expected 4)", + FIELD_OFFSET(MDINEXTMENU, hmenuNext)); /* HMENU */ + ok(FIELD_OFFSET(MDINEXTMENU, hwndNext) == 8, + "FIELD_OFFSET(MDINEXTMENU, hwndNext) == %ld (expected 8)", + FIELD_OFFSET(MDINEXTMENU, hwndNext)); /* HWND */ + ok(sizeof(MDINEXTMENU) == 12, "sizeof(MDINEXTMENU) == %d (expected 12)", sizeof(MDINEXTMENU)); + + /* MEASUREITEMSTRUCT */ + ok(FIELD_OFFSET(MEASUREITEMSTRUCT, CtlType) == 0, + "FIELD_OFFSET(MEASUREITEMSTRUCT, CtlType) == %ld (expected 0)", + FIELD_OFFSET(MEASUREITEMSTRUCT, CtlType)); /* UINT */ + ok(FIELD_OFFSET(MEASUREITEMSTRUCT, CtlID) == 4, + "FIELD_OFFSET(MEASUREITEMSTRUCT, CtlID) == %ld (expected 4)", + FIELD_OFFSET(MEASUREITEMSTRUCT, CtlID)); /* UINT */ + ok(FIELD_OFFSET(MEASUREITEMSTRUCT, itemID) == 8, + "FIELD_OFFSET(MEASUREITEMSTRUCT, itemID) == %ld (expected 8)", + FIELD_OFFSET(MEASUREITEMSTRUCT, itemID)); /* UINT */ + ok(FIELD_OFFSET(MEASUREITEMSTRUCT, itemWidth) == 12, + "FIELD_OFFSET(MEASUREITEMSTRUCT, itemWidth) == %ld (expected 12)", + FIELD_OFFSET(MEASUREITEMSTRUCT, itemWidth)); /* UINT */ + ok(FIELD_OFFSET(MEASUREITEMSTRUCT, itemHeight) == 16, + "FIELD_OFFSET(MEASUREITEMSTRUCT, itemHeight) == %ld (expected 16)", + FIELD_OFFSET(MEASUREITEMSTRUCT, itemHeight)); /* UINT */ + ok(FIELD_OFFSET(MEASUREITEMSTRUCT, itemData) == 20, + "FIELD_OFFSET(MEASUREITEMSTRUCT, itemData) == %ld (expected 20)", + FIELD_OFFSET(MEASUREITEMSTRUCT, itemData)); /* DWORD */ + ok(sizeof(MEASUREITEMSTRUCT) == 24, "sizeof(MEASUREITEMSTRUCT) == %d (expected 24)", sizeof(MEASUREITEMSTRUCT)); + + /* MENUINFO */ + ok(FIELD_OFFSET(MENUINFO, cbSize) == 0, + "FIELD_OFFSET(MENUINFO, cbSize) == %ld (expected 0)", + FIELD_OFFSET(MENUINFO, cbSize)); /* DWORD */ + ok(FIELD_OFFSET(MENUINFO, fMask) == 4, + "FIELD_OFFSET(MENUINFO, fMask) == %ld (expected 4)", + FIELD_OFFSET(MENUINFO, fMask)); /* DWORD */ + ok(FIELD_OFFSET(MENUINFO, dwStyle) == 8, + "FIELD_OFFSET(MENUINFO, dwStyle) == %ld (expected 8)", + FIELD_OFFSET(MENUINFO, dwStyle)); /* DWORD */ + ok(FIELD_OFFSET(MENUINFO, cyMax) == 12, + "FIELD_OFFSET(MENUINFO, cyMax) == %ld (expected 12)", + FIELD_OFFSET(MENUINFO, cyMax)); /* UINT */ + ok(FIELD_OFFSET(MENUINFO, hbrBack) == 16, + "FIELD_OFFSET(MENUINFO, hbrBack) == %ld (expected 16)", + FIELD_OFFSET(MENUINFO, hbrBack)); /* HBRUSH */ + ok(FIELD_OFFSET(MENUINFO, dwContextHelpID) == 20, + "FIELD_OFFSET(MENUINFO, dwContextHelpID) == %ld (expected 20)", + FIELD_OFFSET(MENUINFO, dwContextHelpID)); /* DWORD */ + ok(FIELD_OFFSET(MENUINFO, dwMenuData) == 24, + "FIELD_OFFSET(MENUINFO, dwMenuData) == %ld (expected 24)", + FIELD_OFFSET(MENUINFO, dwMenuData)); /* DWORD */ + ok(sizeof(MENUINFO) == 28, "sizeof(MENUINFO) == %d (expected 28)", sizeof(MENUINFO)); + + /* MENUITEMINFOA */ + ok(FIELD_OFFSET(MENUITEMINFOA, cbSize) == 0, + "FIELD_OFFSET(MENUITEMINFOA, cbSize) == %ld (expected 0)", + FIELD_OFFSET(MENUITEMINFOA, cbSize)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOA, fMask) == 4, + "FIELD_OFFSET(MENUITEMINFOA, fMask) == %ld (expected 4)", + FIELD_OFFSET(MENUITEMINFOA, fMask)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOA, fType) == 8, + "FIELD_OFFSET(MENUITEMINFOA, fType) == %ld (expected 8)", + FIELD_OFFSET(MENUITEMINFOA, fType)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOA, fState) == 12, + "FIELD_OFFSET(MENUITEMINFOA, fState) == %ld (expected 12)", + FIELD_OFFSET(MENUITEMINFOA, fState)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOA, wID) == 16, + "FIELD_OFFSET(MENUITEMINFOA, wID) == %ld (expected 16)", + FIELD_OFFSET(MENUITEMINFOA, wID)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOA, hSubMenu) == 20, + "FIELD_OFFSET(MENUITEMINFOA, hSubMenu) == %ld (expected 20)", + FIELD_OFFSET(MENUITEMINFOA, hSubMenu)); /* HMENU */ + ok(FIELD_OFFSET(MENUITEMINFOA, hbmpChecked) == 24, + "FIELD_OFFSET(MENUITEMINFOA, hbmpChecked) == %ld (expected 24)", + FIELD_OFFSET(MENUITEMINFOA, hbmpChecked)); /* HBITMAP */ + ok(FIELD_OFFSET(MENUITEMINFOA, hbmpUnchecked) == 28, + "FIELD_OFFSET(MENUITEMINFOA, hbmpUnchecked) == %ld (expected 28)", + FIELD_OFFSET(MENUITEMINFOA, hbmpUnchecked)); /* HBITMAP */ + ok(FIELD_OFFSET(MENUITEMINFOA, dwItemData) == 32, + "FIELD_OFFSET(MENUITEMINFOA, dwItemData) == %ld (expected 32)", + FIELD_OFFSET(MENUITEMINFOA, dwItemData)); /* DWORD */ + ok(FIELD_OFFSET(MENUITEMINFOA, dwTypeData) == 36, + "FIELD_OFFSET(MENUITEMINFOA, dwTypeData) == %ld (expected 36)", + FIELD_OFFSET(MENUITEMINFOA, dwTypeData)); /* LPSTR */ + ok(FIELD_OFFSET(MENUITEMINFOA, cch) == 40, + "FIELD_OFFSET(MENUITEMINFOA, cch) == %ld (expected 40)", + FIELD_OFFSET(MENUITEMINFOA, cch)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOA, hbmpItem) == 44, + "FIELD_OFFSET(MENUITEMINFOA, hbmpItem) == %ld (expected 44)", + FIELD_OFFSET(MENUITEMINFOA, hbmpItem)); /* HBITMAP */ + ok(sizeof(MENUITEMINFOA) == 48, "sizeof(MENUITEMINFOA) == %d (expected 48)", sizeof(MENUITEMINFOA)); + + /* MENUITEMINFOW */ + ok(FIELD_OFFSET(MENUITEMINFOW, cbSize) == 0, + "FIELD_OFFSET(MENUITEMINFOW, cbSize) == %ld (expected 0)", + FIELD_OFFSET(MENUITEMINFOW, cbSize)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOW, fMask) == 4, + "FIELD_OFFSET(MENUITEMINFOW, fMask) == %ld (expected 4)", + FIELD_OFFSET(MENUITEMINFOW, fMask)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOW, fType) == 8, + "FIELD_OFFSET(MENUITEMINFOW, fType) == %ld (expected 8)", + FIELD_OFFSET(MENUITEMINFOW, fType)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOW, fState) == 12, + "FIELD_OFFSET(MENUITEMINFOW, fState) == %ld (expected 12)", + FIELD_OFFSET(MENUITEMINFOW, fState)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOW, wID) == 16, + "FIELD_OFFSET(MENUITEMINFOW, wID) == %ld (expected 16)", + FIELD_OFFSET(MENUITEMINFOW, wID)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOW, hSubMenu) == 20, + "FIELD_OFFSET(MENUITEMINFOW, hSubMenu) == %ld (expected 20)", + FIELD_OFFSET(MENUITEMINFOW, hSubMenu)); /* HMENU */ + ok(FIELD_OFFSET(MENUITEMINFOW, hbmpChecked) == 24, + "FIELD_OFFSET(MENUITEMINFOW, hbmpChecked) == %ld (expected 24)", + FIELD_OFFSET(MENUITEMINFOW, hbmpChecked)); /* HBITMAP */ + ok(FIELD_OFFSET(MENUITEMINFOW, hbmpUnchecked) == 28, + "FIELD_OFFSET(MENUITEMINFOW, hbmpUnchecked) == %ld (expected 28)", + FIELD_OFFSET(MENUITEMINFOW, hbmpUnchecked)); /* HBITMAP */ + ok(FIELD_OFFSET(MENUITEMINFOW, dwItemData) == 32, + "FIELD_OFFSET(MENUITEMINFOW, dwItemData) == %ld (expected 32)", + FIELD_OFFSET(MENUITEMINFOW, dwItemData)); /* DWORD */ + ok(FIELD_OFFSET(MENUITEMINFOW, dwTypeData) == 36, + "FIELD_OFFSET(MENUITEMINFOW, dwTypeData) == %ld (expected 36)", + FIELD_OFFSET(MENUITEMINFOW, dwTypeData)); /* LPWSTR */ + ok(FIELD_OFFSET(MENUITEMINFOW, cch) == 40, + "FIELD_OFFSET(MENUITEMINFOW, cch) == %ld (expected 40)", + FIELD_OFFSET(MENUITEMINFOW, cch)); /* UINT */ + ok(FIELD_OFFSET(MENUITEMINFOW, hbmpItem) == 44, + "FIELD_OFFSET(MENUITEMINFOW, hbmpItem) == %ld (expected 44)", + FIELD_OFFSET(MENUITEMINFOW, hbmpItem)); /* HBITMAP */ + ok(sizeof(MENUITEMINFOW) == 48, "sizeof(MENUITEMINFOW) == %d (expected 48)", sizeof(MENUITEMINFOW)); + + /* MENUITEMTEMPLATEHEADER */ + ok(FIELD_OFFSET(MENUITEMTEMPLATEHEADER, versionNumber) == 0, + "FIELD_OFFSET(MENUITEMTEMPLATEHEADER, versionNumber) == %ld (expected 0)", + FIELD_OFFSET(MENUITEMTEMPLATEHEADER, versionNumber)); /* WORD */ + ok(FIELD_OFFSET(MENUITEMTEMPLATEHEADER, offset) == 2, + "FIELD_OFFSET(MENUITEMTEMPLATEHEADER, offset) == %ld (expected 2)", + FIELD_OFFSET(MENUITEMTEMPLATEHEADER, offset)); /* WORD */ + ok(sizeof(MENUITEMTEMPLATEHEADER) == 4, "sizeof(MENUITEMTEMPLATEHEADER) == %d (expected 4)", sizeof(MENUITEMTEMPLATEHEADER)); + + /* MINIMIZEDMETRICS */ + ok(FIELD_OFFSET(MINIMIZEDMETRICS, cbSize) == 0, + "FIELD_OFFSET(MINIMIZEDMETRICS, cbSize) == %ld (expected 0)", + FIELD_OFFSET(MINIMIZEDMETRICS, cbSize)); /* UINT */ + ok(FIELD_OFFSET(MINIMIZEDMETRICS, iWidth) == 4, + "FIELD_OFFSET(MINIMIZEDMETRICS, iWidth) == %ld (expected 4)", + FIELD_OFFSET(MINIMIZEDMETRICS, iWidth)); /* int */ + ok(FIELD_OFFSET(MINIMIZEDMETRICS, iHorzGap) == 8, + "FIELD_OFFSET(MINIMIZEDMETRICS, iHorzGap) == %ld (expected 8)", + FIELD_OFFSET(MINIMIZEDMETRICS, iHorzGap)); /* int */ + ok(FIELD_OFFSET(MINIMIZEDMETRICS, iVertGap) == 12, + "FIELD_OFFSET(MINIMIZEDMETRICS, iVertGap) == %ld (expected 12)", + FIELD_OFFSET(MINIMIZEDMETRICS, iVertGap)); /* int */ + ok(FIELD_OFFSET(MINIMIZEDMETRICS, iArrange) == 16, + "FIELD_OFFSET(MINIMIZEDMETRICS, iArrange) == %ld (expected 16)", + FIELD_OFFSET(MINIMIZEDMETRICS, iArrange)); /* int */ + ok(sizeof(MINIMIZEDMETRICS) == 20, "sizeof(MINIMIZEDMETRICS) == %d (expected 20)", sizeof(MINIMIZEDMETRICS)); + + /* MINMAXINFO */ + ok(FIELD_OFFSET(MINMAXINFO, ptReserved) == 0, + "FIELD_OFFSET(MINMAXINFO, ptReserved) == %ld (expected 0)", + FIELD_OFFSET(MINMAXINFO, ptReserved)); /* POINT */ + ok(FIELD_OFFSET(MINMAXINFO, ptMaxSize) == 8, + "FIELD_OFFSET(MINMAXINFO, ptMaxSize) == %ld (expected 8)", + FIELD_OFFSET(MINMAXINFO, ptMaxSize)); /* POINT */ + ok(FIELD_OFFSET(MINMAXINFO, ptMaxPosition) == 16, + "FIELD_OFFSET(MINMAXINFO, ptMaxPosition) == %ld (expected 16)", + FIELD_OFFSET(MINMAXINFO, ptMaxPosition)); /* POINT */ + ok(FIELD_OFFSET(MINMAXINFO, ptMinTrackSize) == 24, + "FIELD_OFFSET(MINMAXINFO, ptMinTrackSize) == %ld (expected 24)", + FIELD_OFFSET(MINMAXINFO, ptMinTrackSize)); /* POINT */ + ok(FIELD_OFFSET(MINMAXINFO, ptMaxTrackSize) == 32, + "FIELD_OFFSET(MINMAXINFO, ptMaxTrackSize) == %ld (expected 32)", + FIELD_OFFSET(MINMAXINFO, ptMaxTrackSize)); /* POINT */ + ok(sizeof(MINMAXINFO) == 40, "sizeof(MINMAXINFO) == %d (expected 40)", sizeof(MINMAXINFO)); + + /* MONITORINFO */ + ok(FIELD_OFFSET(MONITORINFO, cbSize) == 0, + "FIELD_OFFSET(MONITORINFO, cbSize) == %ld (expected 0)", + FIELD_OFFSET(MONITORINFO, cbSize)); /* DWORD */ + ok(FIELD_OFFSET(MONITORINFO, rcMonitor) == 4, + "FIELD_OFFSET(MONITORINFO, rcMonitor) == %ld (expected 4)", + FIELD_OFFSET(MONITORINFO, rcMonitor)); /* RECT */ + ok(FIELD_OFFSET(MONITORINFO, rcWork) == 20, + "FIELD_OFFSET(MONITORINFO, rcWork) == %ld (expected 20)", + FIELD_OFFSET(MONITORINFO, rcWork)); /* RECT */ + ok(FIELD_OFFSET(MONITORINFO, dwFlags) == 36, + "FIELD_OFFSET(MONITORINFO, dwFlags) == %ld (expected 36)", + FIELD_OFFSET(MONITORINFO, dwFlags)); /* DWORD */ + ok(sizeof(MONITORINFO) == 40, "sizeof(MONITORINFO) == %d (expected 40)", sizeof(MONITORINFO)); + + /* MOUSEHOOKSTRUCT */ + ok(FIELD_OFFSET(MOUSEHOOKSTRUCT, pt) == 0, + "FIELD_OFFSET(MOUSEHOOKSTRUCT, pt) == %ld (expected 0)", + FIELD_OFFSET(MOUSEHOOKSTRUCT, pt)); /* POINT */ + ok(FIELD_OFFSET(MOUSEHOOKSTRUCT, hwnd) == 8, + "FIELD_OFFSET(MOUSEHOOKSTRUCT, hwnd) == %ld (expected 8)", + FIELD_OFFSET(MOUSEHOOKSTRUCT, hwnd)); /* HWND */ + ok(FIELD_OFFSET(MOUSEHOOKSTRUCT, wHitTestCode) == 12, + "FIELD_OFFSET(MOUSEHOOKSTRUCT, wHitTestCode) == %ld (expected 12)", + FIELD_OFFSET(MOUSEHOOKSTRUCT, wHitTestCode)); /* UINT */ + ok(FIELD_OFFSET(MOUSEHOOKSTRUCT, dwExtraInfo) == 16, + "FIELD_OFFSET(MOUSEHOOKSTRUCT, dwExtraInfo) == %ld (expected 16)", + FIELD_OFFSET(MOUSEHOOKSTRUCT, dwExtraInfo)); /* DWORD */ + ok(sizeof(MOUSEHOOKSTRUCT) == 20, "sizeof(MOUSEHOOKSTRUCT) == %d (expected 20)", sizeof(MOUSEHOOKSTRUCT)); + + /* MOUSEINPUT */ + ok(FIELD_OFFSET(MOUSEINPUT, dx) == 0, + "FIELD_OFFSET(MOUSEINPUT, dx) == %ld (expected 0)", + FIELD_OFFSET(MOUSEINPUT, dx)); /* LONG */ + ok(FIELD_OFFSET(MOUSEINPUT, dy) == 4, + "FIELD_OFFSET(MOUSEINPUT, dy) == %ld (expected 4)", + FIELD_OFFSET(MOUSEINPUT, dy)); /* LONG */ + ok(FIELD_OFFSET(MOUSEINPUT, mouseData) == 8, + "FIELD_OFFSET(MOUSEINPUT, mouseData) == %ld (expected 8)", + FIELD_OFFSET(MOUSEINPUT, mouseData)); /* DWORD */ + ok(FIELD_OFFSET(MOUSEINPUT, dwFlags) == 12, + "FIELD_OFFSET(MOUSEINPUT, dwFlags) == %ld (expected 12)", + FIELD_OFFSET(MOUSEINPUT, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(MOUSEINPUT, time) == 16, + "FIELD_OFFSET(MOUSEINPUT, time) == %ld (expected 16)", + FIELD_OFFSET(MOUSEINPUT, time)); /* DWORD */ + ok(FIELD_OFFSET(MOUSEINPUT, dwExtraInfo) == 20, + "FIELD_OFFSET(MOUSEINPUT, dwExtraInfo) == %ld (expected 20)", + FIELD_OFFSET(MOUSEINPUT, dwExtraInfo)); /* ULONG_PTR */ + ok(sizeof(MOUSEINPUT) == 24, "sizeof(MOUSEINPUT) == %d (expected 24)", sizeof(MOUSEINPUT)); + + /* MOUSEKEYS */ + ok(FIELD_OFFSET(MOUSEKEYS, cbSize) == 0, + "FIELD_OFFSET(MOUSEKEYS, cbSize) == %ld (expected 0)", + FIELD_OFFSET(MOUSEKEYS, cbSize)); /* UINT */ + ok(FIELD_OFFSET(MOUSEKEYS, dwFlags) == 4, + "FIELD_OFFSET(MOUSEKEYS, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(MOUSEKEYS, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(MOUSEKEYS, iMaxSpeed) == 8, + "FIELD_OFFSET(MOUSEKEYS, iMaxSpeed) == %ld (expected 8)", + FIELD_OFFSET(MOUSEKEYS, iMaxSpeed)); /* DWORD */ + ok(FIELD_OFFSET(MOUSEKEYS, iTimeToMaxSpeed) == 12, + "FIELD_OFFSET(MOUSEKEYS, iTimeToMaxSpeed) == %ld (expected 12)", + FIELD_OFFSET(MOUSEKEYS, iTimeToMaxSpeed)); /* DWORD */ + ok(FIELD_OFFSET(MOUSEKEYS, iCtrlSpeed) == 16, + "FIELD_OFFSET(MOUSEKEYS, iCtrlSpeed) == %ld (expected 16)", + FIELD_OFFSET(MOUSEKEYS, iCtrlSpeed)); /* DWORD */ + ok(FIELD_OFFSET(MOUSEKEYS, dwReserved1) == 20, + "FIELD_OFFSET(MOUSEKEYS, dwReserved1) == %ld (expected 20)", + FIELD_OFFSET(MOUSEKEYS, dwReserved1)); /* DWORD */ + ok(FIELD_OFFSET(MOUSEKEYS, dwReserved2) == 24, + "FIELD_OFFSET(MOUSEKEYS, dwReserved2) == %ld (expected 24)", + FIELD_OFFSET(MOUSEKEYS, dwReserved2)); /* DWORD */ + ok(sizeof(MOUSEKEYS) == 28, "sizeof(MOUSEKEYS) == %d (expected 28)", sizeof(MOUSEKEYS)); + + /* MSG */ + ok(FIELD_OFFSET(MSG, hwnd) == 0, + "FIELD_OFFSET(MSG, hwnd) == %ld (expected 0)", + FIELD_OFFSET(MSG, hwnd)); /* HWND */ + ok(FIELD_OFFSET(MSG, message) == 4, + "FIELD_OFFSET(MSG, message) == %ld (expected 4)", + FIELD_OFFSET(MSG, message)); /* UINT */ + ok(FIELD_OFFSET(MSG, wParam) == 8, + "FIELD_OFFSET(MSG, wParam) == %ld (expected 8)", + FIELD_OFFSET(MSG, wParam)); /* WPARAM */ + ok(FIELD_OFFSET(MSG, lParam) == 12, + "FIELD_OFFSET(MSG, lParam) == %ld (expected 12)", + FIELD_OFFSET(MSG, lParam)); /* LPARAM */ + ok(FIELD_OFFSET(MSG, time) == 16, + "FIELD_OFFSET(MSG, time) == %ld (expected 16)", + FIELD_OFFSET(MSG, time)); /* DWORD */ + ok(FIELD_OFFSET(MSG, pt) == 20, + "FIELD_OFFSET(MSG, pt) == %ld (expected 20)", + FIELD_OFFSET(MSG, pt)); /* POINT */ + ok(sizeof(MSG) == 28, "sizeof(MSG) == %d (expected 28)", sizeof(MSG)); + + /* MSGBOXPARAMSA */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, cbSize) == 0, + "FIELD_OFFSET(MSGBOXPARAMSA, cbSize) == %ld (expected 0)", + FIELD_OFFSET(MSGBOXPARAMSA, cbSize)); /* UINT */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, hwndOwner) == 4, + "FIELD_OFFSET(MSGBOXPARAMSA, hwndOwner) == %ld (expected 4)", + FIELD_OFFSET(MSGBOXPARAMSA, hwndOwner)); /* HWND */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, hInstance) == 8, + "FIELD_OFFSET(MSGBOXPARAMSA, hInstance) == %ld (expected 8)", + FIELD_OFFSET(MSGBOXPARAMSA, hInstance)); /* HINSTANCE */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, lpszText) == 12, + "FIELD_OFFSET(MSGBOXPARAMSA, lpszText) == %ld (expected 12)", + FIELD_OFFSET(MSGBOXPARAMSA, lpszText)); /* LPCSTR */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, lpszCaption) == 16, + "FIELD_OFFSET(MSGBOXPARAMSA, lpszCaption) == %ld (expected 16)", + FIELD_OFFSET(MSGBOXPARAMSA, lpszCaption)); /* LPCSTR */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, dwStyle) == 20, + "FIELD_OFFSET(MSGBOXPARAMSA, dwStyle) == %ld (expected 20)", + FIELD_OFFSET(MSGBOXPARAMSA, dwStyle)); /* DWORD */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, lpszIcon) == 24, + "FIELD_OFFSET(MSGBOXPARAMSA, lpszIcon) == %ld (expected 24)", + FIELD_OFFSET(MSGBOXPARAMSA, lpszIcon)); /* LPCSTR */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, dwContextHelpId) == 28, + "FIELD_OFFSET(MSGBOXPARAMSA, dwContextHelpId) == %ld (expected 28)", + FIELD_OFFSET(MSGBOXPARAMSA, dwContextHelpId)); /* DWORD */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, lpfnMsgBoxCallback) == 32, + "FIELD_OFFSET(MSGBOXPARAMSA, lpfnMsgBoxCallback) == %ld (expected 32)", + FIELD_OFFSET(MSGBOXPARAMSA, lpfnMsgBoxCallback)); /* MSGBOXCALLBACK */ + ok(FIELD_OFFSET(MSGBOXPARAMSA, dwLanguageId) == 36, + "FIELD_OFFSET(MSGBOXPARAMSA, dwLanguageId) == %ld (expected 36)", + FIELD_OFFSET(MSGBOXPARAMSA, dwLanguageId)); /* DWORD */ + ok(sizeof(MSGBOXPARAMSA) == 40, "sizeof(MSGBOXPARAMSA) == %d (expected 40)", sizeof(MSGBOXPARAMSA)); + + /* MSGBOXPARAMSW */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, cbSize) == 0, + "FIELD_OFFSET(MSGBOXPARAMSW, cbSize) == %ld (expected 0)", + FIELD_OFFSET(MSGBOXPARAMSW, cbSize)); /* UINT */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, hwndOwner) == 4, + "FIELD_OFFSET(MSGBOXPARAMSW, hwndOwner) == %ld (expected 4)", + FIELD_OFFSET(MSGBOXPARAMSW, hwndOwner)); /* HWND */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, hInstance) == 8, + "FIELD_OFFSET(MSGBOXPARAMSW, hInstance) == %ld (expected 8)", + FIELD_OFFSET(MSGBOXPARAMSW, hInstance)); /* HINSTANCE */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, lpszText) == 12, + "FIELD_OFFSET(MSGBOXPARAMSW, lpszText) == %ld (expected 12)", + FIELD_OFFSET(MSGBOXPARAMSW, lpszText)); /* LPCWSTR */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, lpszCaption) == 16, + "FIELD_OFFSET(MSGBOXPARAMSW, lpszCaption) == %ld (expected 16)", + FIELD_OFFSET(MSGBOXPARAMSW, lpszCaption)); /* LPCWSTR */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, dwStyle) == 20, + "FIELD_OFFSET(MSGBOXPARAMSW, dwStyle) == %ld (expected 20)", + FIELD_OFFSET(MSGBOXPARAMSW, dwStyle)); /* DWORD */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, lpszIcon) == 24, + "FIELD_OFFSET(MSGBOXPARAMSW, lpszIcon) == %ld (expected 24)", + FIELD_OFFSET(MSGBOXPARAMSW, lpszIcon)); /* LPCWSTR */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, dwContextHelpId) == 28, + "FIELD_OFFSET(MSGBOXPARAMSW, dwContextHelpId) == %ld (expected 28)", + FIELD_OFFSET(MSGBOXPARAMSW, dwContextHelpId)); /* DWORD */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, lpfnMsgBoxCallback) == 32, + "FIELD_OFFSET(MSGBOXPARAMSW, lpfnMsgBoxCallback) == %ld (expected 32)", + FIELD_OFFSET(MSGBOXPARAMSW, lpfnMsgBoxCallback)); /* MSGBOXCALLBACK */ + ok(FIELD_OFFSET(MSGBOXPARAMSW, dwLanguageId) == 36, + "FIELD_OFFSET(MSGBOXPARAMSW, dwLanguageId) == %ld (expected 36)", + FIELD_OFFSET(MSGBOXPARAMSW, dwLanguageId)); /* DWORD */ + ok(sizeof(MSGBOXPARAMSW) == 40, "sizeof(MSGBOXPARAMSW) == %d (expected 40)", sizeof(MSGBOXPARAMSW)); + + /* MSLLHOOKSTRUCT */ + ok(FIELD_OFFSET(MSLLHOOKSTRUCT, pt) == 0, + "FIELD_OFFSET(MSLLHOOKSTRUCT, pt) == %ld (expected 0)", + FIELD_OFFSET(MSLLHOOKSTRUCT, pt)); /* POINT */ + ok(FIELD_OFFSET(MSLLHOOKSTRUCT, mouseData) == 8, + "FIELD_OFFSET(MSLLHOOKSTRUCT, mouseData) == %ld (expected 8)", + FIELD_OFFSET(MSLLHOOKSTRUCT, mouseData)); /* DWORD */ + ok(FIELD_OFFSET(MSLLHOOKSTRUCT, flags) == 12, + "FIELD_OFFSET(MSLLHOOKSTRUCT, flags) == %ld (expected 12)", + FIELD_OFFSET(MSLLHOOKSTRUCT, flags)); /* DWORD */ + ok(FIELD_OFFSET(MSLLHOOKSTRUCT, time) == 16, + "FIELD_OFFSET(MSLLHOOKSTRUCT, time) == %ld (expected 16)", + FIELD_OFFSET(MSLLHOOKSTRUCT, time)); /* DWORD */ + ok(FIELD_OFFSET(MSLLHOOKSTRUCT, dwExtraInfo) == 20, + "FIELD_OFFSET(MSLLHOOKSTRUCT, dwExtraInfo) == %ld (expected 20)", + FIELD_OFFSET(MSLLHOOKSTRUCT, dwExtraInfo)); /* ULONG_PTR */ + ok(sizeof(MSLLHOOKSTRUCT) == 24, "sizeof(MSLLHOOKSTRUCT) == %d (expected 24)", sizeof(MSLLHOOKSTRUCT)); + + /* MULTIKEYHELPA */ + ok(FIELD_OFFSET(MULTIKEYHELPA, mkSize) == 0, + "FIELD_OFFSET(MULTIKEYHELPA, mkSize) == %ld (expected 0)", + FIELD_OFFSET(MULTIKEYHELPA, mkSize)); /* DWORD */ + ok(FIELD_OFFSET(MULTIKEYHELPA, mkKeyList) == 4, + "FIELD_OFFSET(MULTIKEYHELPA, mkKeyList) == %ld (expected 4)", + FIELD_OFFSET(MULTIKEYHELPA, mkKeyList)); /* CHAR */ + ok(FIELD_OFFSET(MULTIKEYHELPA, szKeyphrase) == 5, + "FIELD_OFFSET(MULTIKEYHELPA, szKeyphrase) == %ld (expected 5)", + FIELD_OFFSET(MULTIKEYHELPA, szKeyphrase)); /* CHAR[1] */ + ok(sizeof(MULTIKEYHELPA) == 8, "sizeof(MULTIKEYHELPA) == %d (expected 8)", sizeof(MULTIKEYHELPA)); + + /* MULTIKEYHELPW */ + ok(FIELD_OFFSET(MULTIKEYHELPW, mkSize) == 0, + "FIELD_OFFSET(MULTIKEYHELPW, mkSize) == %ld (expected 0)", + FIELD_OFFSET(MULTIKEYHELPW, mkSize)); /* DWORD */ + ok(FIELD_OFFSET(MULTIKEYHELPW, mkKeyList) == 4, + "FIELD_OFFSET(MULTIKEYHELPW, mkKeyList) == %ld (expected 4)", + FIELD_OFFSET(MULTIKEYHELPW, mkKeyList)); /* WCHAR */ + ok(FIELD_OFFSET(MULTIKEYHELPW, szKeyphrase) == 6, + "FIELD_OFFSET(MULTIKEYHELPW, szKeyphrase) == %ld (expected 6)", + FIELD_OFFSET(MULTIKEYHELPW, szKeyphrase)); /* WCHAR[1] */ + ok(sizeof(MULTIKEYHELPW) == 8, "sizeof(MULTIKEYHELPW) == %d (expected 8)", sizeof(MULTIKEYHELPW)); + + /* NCCALCSIZE_PARAMS */ + ok(FIELD_OFFSET(NCCALCSIZE_PARAMS, rgrc) == 0, + "FIELD_OFFSET(NCCALCSIZE_PARAMS, rgrc) == %ld (expected 0)", + FIELD_OFFSET(NCCALCSIZE_PARAMS, rgrc)); /* RECT[3] */ + ok(FIELD_OFFSET(NCCALCSIZE_PARAMS, lppos) == 48, + "FIELD_OFFSET(NCCALCSIZE_PARAMS, lppos) == %ld (expected 48)", + FIELD_OFFSET(NCCALCSIZE_PARAMS, lppos)); /* WINDOWPOS * */ + ok(sizeof(NCCALCSIZE_PARAMS) == 52, "sizeof(NCCALCSIZE_PARAMS) == %d (expected 52)", sizeof(NCCALCSIZE_PARAMS)); + + /* NMHDR */ + ok(FIELD_OFFSET(NMHDR, hwndFrom) == 0, + "FIELD_OFFSET(NMHDR, hwndFrom) == %ld (expected 0)", + FIELD_OFFSET(NMHDR, hwndFrom)); /* HWND */ + ok(FIELD_OFFSET(NMHDR, idFrom) == 4, + "FIELD_OFFSET(NMHDR, idFrom) == %ld (expected 4)", + FIELD_OFFSET(NMHDR, idFrom)); /* UINT */ + ok(FIELD_OFFSET(NMHDR, code) == 8, + "FIELD_OFFSET(NMHDR, code) == %ld (expected 8)", + FIELD_OFFSET(NMHDR, code)); /* UINT */ + ok(sizeof(NMHDR) == 12, "sizeof(NMHDR) == %d (expected 12)", sizeof(NMHDR)); + + /* PAINTSTRUCT */ + ok(FIELD_OFFSET(PAINTSTRUCT, hdc) == 0, + "FIELD_OFFSET(PAINTSTRUCT, hdc) == %ld (expected 0)", + FIELD_OFFSET(PAINTSTRUCT, hdc)); /* HDC */ + ok(FIELD_OFFSET(PAINTSTRUCT, fErase) == 4, + "FIELD_OFFSET(PAINTSTRUCT, fErase) == %ld (expected 4)", + FIELD_OFFSET(PAINTSTRUCT, fErase)); /* BOOL */ + ok(FIELD_OFFSET(PAINTSTRUCT, rcPaint) == 8, + "FIELD_OFFSET(PAINTSTRUCT, rcPaint) == %ld (expected 8)", + FIELD_OFFSET(PAINTSTRUCT, rcPaint)); /* RECT */ + ok(FIELD_OFFSET(PAINTSTRUCT, fRestore) == 24, + "FIELD_OFFSET(PAINTSTRUCT, fRestore) == %ld (expected 24)", + FIELD_OFFSET(PAINTSTRUCT, fRestore)); /* BOOL */ + ok(FIELD_OFFSET(PAINTSTRUCT, fIncUpdate) == 28, + "FIELD_OFFSET(PAINTSTRUCT, fIncUpdate) == %ld (expected 28)", + FIELD_OFFSET(PAINTSTRUCT, fIncUpdate)); /* BOOL */ + ok(FIELD_OFFSET(PAINTSTRUCT, rgbReserved) == 32, + "FIELD_OFFSET(PAINTSTRUCT, rgbReserved) == %ld (expected 32)", + FIELD_OFFSET(PAINTSTRUCT, rgbReserved)); /* BYTE[32] */ + ok(sizeof(PAINTSTRUCT) == 64, "sizeof(PAINTSTRUCT) == %d (expected 64)", sizeof(PAINTSTRUCT)); + + /* SCROLLINFO */ + ok(FIELD_OFFSET(SCROLLINFO, cbSize) == 0, + "FIELD_OFFSET(SCROLLINFO, cbSize) == %ld (expected 0)", + FIELD_OFFSET(SCROLLINFO, cbSize)); /* UINT */ + ok(FIELD_OFFSET(SCROLLINFO, fMask) == 4, + "FIELD_OFFSET(SCROLLINFO, fMask) == %ld (expected 4)", + FIELD_OFFSET(SCROLLINFO, fMask)); /* UINT */ + ok(FIELD_OFFSET(SCROLLINFO, nMin) == 8, + "FIELD_OFFSET(SCROLLINFO, nMin) == %ld (expected 8)", + FIELD_OFFSET(SCROLLINFO, nMin)); /* INT */ + ok(FIELD_OFFSET(SCROLLINFO, nMax) == 12, + "FIELD_OFFSET(SCROLLINFO, nMax) == %ld (expected 12)", + FIELD_OFFSET(SCROLLINFO, nMax)); /* INT */ + ok(FIELD_OFFSET(SCROLLINFO, nPage) == 16, + "FIELD_OFFSET(SCROLLINFO, nPage) == %ld (expected 16)", + FIELD_OFFSET(SCROLLINFO, nPage)); /* UINT */ + ok(FIELD_OFFSET(SCROLLINFO, nPos) == 20, + "FIELD_OFFSET(SCROLLINFO, nPos) == %ld (expected 20)", + FIELD_OFFSET(SCROLLINFO, nPos)); /* INT */ + ok(FIELD_OFFSET(SCROLLINFO, nTrackPos) == 24, + "FIELD_OFFSET(SCROLLINFO, nTrackPos) == %ld (expected 24)", + FIELD_OFFSET(SCROLLINFO, nTrackPos)); /* INT */ + ok(sizeof(SCROLLINFO) == 28, "sizeof(SCROLLINFO) == %d (expected 28)", sizeof(SCROLLINFO)); + + /* SERIALKEYSA */ + ok(FIELD_OFFSET(SERIALKEYSA, cbSize) == 0, + "FIELD_OFFSET(SERIALKEYSA, cbSize) == %ld (expected 0)", + FIELD_OFFSET(SERIALKEYSA, cbSize)); /* UINT */ + ok(FIELD_OFFSET(SERIALKEYSA, dwFlags) == 4, + "FIELD_OFFSET(SERIALKEYSA, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(SERIALKEYSA, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(SERIALKEYSA, lpszActivePort) == 8, + "FIELD_OFFSET(SERIALKEYSA, lpszActivePort) == %ld (expected 8)", + FIELD_OFFSET(SERIALKEYSA, lpszActivePort)); /* LPSTR */ + ok(FIELD_OFFSET(SERIALKEYSA, lpszPort) == 12, + "FIELD_OFFSET(SERIALKEYSA, lpszPort) == %ld (expected 12)", + FIELD_OFFSET(SERIALKEYSA, lpszPort)); /* LPSTR */ + ok(FIELD_OFFSET(SERIALKEYSA, iBaudRate) == 16, + "FIELD_OFFSET(SERIALKEYSA, iBaudRate) == %ld (expected 16)", + FIELD_OFFSET(SERIALKEYSA, iBaudRate)); /* UINT */ + ok(FIELD_OFFSET(SERIALKEYSA, iPortState) == 20, + "FIELD_OFFSET(SERIALKEYSA, iPortState) == %ld (expected 20)", + FIELD_OFFSET(SERIALKEYSA, iPortState)); /* UINT */ + ok(FIELD_OFFSET(SERIALKEYSA, iActive) == 24, + "FIELD_OFFSET(SERIALKEYSA, iActive) == %ld (expected 24)", + FIELD_OFFSET(SERIALKEYSA, iActive)); /* UINT */ + ok(sizeof(SERIALKEYSA) == 28, "sizeof(SERIALKEYSA) == %d (expected 28)", sizeof(SERIALKEYSA)); + + /* SERIALKEYSW */ + ok(FIELD_OFFSET(SERIALKEYSW, cbSize) == 0, + "FIELD_OFFSET(SERIALKEYSW, cbSize) == %ld (expected 0)", + FIELD_OFFSET(SERIALKEYSW, cbSize)); /* UINT */ + ok(FIELD_OFFSET(SERIALKEYSW, dwFlags) == 4, + "FIELD_OFFSET(SERIALKEYSW, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(SERIALKEYSW, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(SERIALKEYSW, lpszActivePort) == 8, + "FIELD_OFFSET(SERIALKEYSW, lpszActivePort) == %ld (expected 8)", + FIELD_OFFSET(SERIALKEYSW, lpszActivePort)); /* LPWSTR */ + ok(FIELD_OFFSET(SERIALKEYSW, lpszPort) == 12, + "FIELD_OFFSET(SERIALKEYSW, lpszPort) == %ld (expected 12)", + FIELD_OFFSET(SERIALKEYSW, lpszPort)); /* LPWSTR */ + ok(FIELD_OFFSET(SERIALKEYSW, iBaudRate) == 16, + "FIELD_OFFSET(SERIALKEYSW, iBaudRate) == %ld (expected 16)", + FIELD_OFFSET(SERIALKEYSW, iBaudRate)); /* UINT */ + ok(FIELD_OFFSET(SERIALKEYSW, iPortState) == 20, + "FIELD_OFFSET(SERIALKEYSW, iPortState) == %ld (expected 20)", + FIELD_OFFSET(SERIALKEYSW, iPortState)); /* UINT */ + ok(FIELD_OFFSET(SERIALKEYSW, iActive) == 24, + "FIELD_OFFSET(SERIALKEYSW, iActive) == %ld (expected 24)", + FIELD_OFFSET(SERIALKEYSW, iActive)); /* UINT */ + ok(sizeof(SERIALKEYSW) == 28, "sizeof(SERIALKEYSW) == %d (expected 28)", sizeof(SERIALKEYSW)); + + /* SOUNDSENTRYA */ + ok(FIELD_OFFSET(SOUNDSENTRYA, cbSize) == 0, + "FIELD_OFFSET(SOUNDSENTRYA, cbSize) == %ld (expected 0)", + FIELD_OFFSET(SOUNDSENTRYA, cbSize)); /* UINT */ + ok(FIELD_OFFSET(SOUNDSENTRYA, dwFlags) == 4, + "FIELD_OFFSET(SOUNDSENTRYA, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(SOUNDSENTRYA, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffect) == 8, + "FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffect) == %ld (expected 8)", + FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffect)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffectMSec) == 12, + "FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffectMSec) == %ld (expected 12)", + FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffectMSec)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffectColorBits) == 16, + "FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffectColorBits) == %ld (expected 16)", + FIELD_OFFSET(SOUNDSENTRYA, iFSTextEffectColorBits)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffect) == 20, + "FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffect) == %ld (expected 20)", + FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffect)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffectMSec) == 24, + "FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffectMSec) == %ld (expected 24)", + FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffectMSec)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffectColor) == 28, + "FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffectColor) == %ld (expected 28)", + FIELD_OFFSET(SOUNDSENTRYA, iFSGrafEffectColor)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffect) == 32, + "FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffect) == %ld (expected 32)", + FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffect)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffectMSec) == 36, + "FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffectMSec) == %ld (expected 36)", + FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffectMSec)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYA, lpszWindowsEffectDLL) == 40, + "FIELD_OFFSET(SOUNDSENTRYA, lpszWindowsEffectDLL) == %ld (expected 40)", + FIELD_OFFSET(SOUNDSENTRYA, lpszWindowsEffectDLL)); /* LPSTR */ + ok(FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffectOrdinal) == 44, + "FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffectOrdinal) == %ld (expected 44)", + FIELD_OFFSET(SOUNDSENTRYA, iWindowsEffectOrdinal)); /* DWORD */ + ok(sizeof(SOUNDSENTRYA) == 48, "sizeof(SOUNDSENTRYA) == %d (expected 48)", sizeof(SOUNDSENTRYA)); + + /* SOUNDSENTRYW */ + ok(FIELD_OFFSET(SOUNDSENTRYW, cbSize) == 0, + "FIELD_OFFSET(SOUNDSENTRYW, cbSize) == %ld (expected 0)", + FIELD_OFFSET(SOUNDSENTRYW, cbSize)); /* UINT */ + ok(FIELD_OFFSET(SOUNDSENTRYW, dwFlags) == 4, + "FIELD_OFFSET(SOUNDSENTRYW, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(SOUNDSENTRYW, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffect) == 8, + "FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffect) == %ld (expected 8)", + FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffect)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffectMSec) == 12, + "FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffectMSec) == %ld (expected 12)", + FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffectMSec)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffectColorBits) == 16, + "FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffectColorBits) == %ld (expected 16)", + FIELD_OFFSET(SOUNDSENTRYW, iFSTextEffectColorBits)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffect) == 20, + "FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffect) == %ld (expected 20)", + FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffect)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffectMSec) == 24, + "FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffectMSec) == %ld (expected 24)", + FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffectMSec)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffectColor) == 28, + "FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffectColor) == %ld (expected 28)", + FIELD_OFFSET(SOUNDSENTRYW, iFSGrafEffectColor)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffect) == 32, + "FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffect) == %ld (expected 32)", + FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffect)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffectMSec) == 36, + "FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffectMSec) == %ld (expected 36)", + FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffectMSec)); /* DWORD */ + ok(FIELD_OFFSET(SOUNDSENTRYW, lpszWindowsEffectDLL) == 40, + "FIELD_OFFSET(SOUNDSENTRYW, lpszWindowsEffectDLL) == %ld (expected 40)", + FIELD_OFFSET(SOUNDSENTRYW, lpszWindowsEffectDLL)); /* LPWSTR */ + ok(FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffectOrdinal) == 44, + "FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffectOrdinal) == %ld (expected 44)", + FIELD_OFFSET(SOUNDSENTRYW, iWindowsEffectOrdinal)); /* DWORD */ + ok(sizeof(SOUNDSENTRYW) == 48, "sizeof(SOUNDSENTRYW) == %d (expected 48)", sizeof(SOUNDSENTRYW)); + + /* STICKYKEYS */ + ok(FIELD_OFFSET(STICKYKEYS, cbSize) == 0, + "FIELD_OFFSET(STICKYKEYS, cbSize) == %ld (expected 0)", + FIELD_OFFSET(STICKYKEYS, cbSize)); /* DWORD */ + ok(FIELD_OFFSET(STICKYKEYS, dwFlags) == 4, + "FIELD_OFFSET(STICKYKEYS, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(STICKYKEYS, dwFlags)); /* DWORD */ + ok(sizeof(STICKYKEYS) == 8, "sizeof(STICKYKEYS) == %d (expected 8)", sizeof(STICKYKEYS)); + + /* STYLESTRUCT */ + ok(FIELD_OFFSET(STYLESTRUCT, styleOld) == 0, + "FIELD_OFFSET(STYLESTRUCT, styleOld) == %ld (expected 0)", + FIELD_OFFSET(STYLESTRUCT, styleOld)); /* DWORD */ + ok(FIELD_OFFSET(STYLESTRUCT, styleNew) == 4, + "FIELD_OFFSET(STYLESTRUCT, styleNew) == %ld (expected 4)", + FIELD_OFFSET(STYLESTRUCT, styleNew)); /* DWORD */ + ok(sizeof(STYLESTRUCT) == 8, "sizeof(STYLESTRUCT) == %d (expected 8)", sizeof(STYLESTRUCT)); + + /* TOGGLEKEYS */ + ok(FIELD_OFFSET(TOGGLEKEYS, cbSize) == 0, + "FIELD_OFFSET(TOGGLEKEYS, cbSize) == %ld (expected 0)", + FIELD_OFFSET(TOGGLEKEYS, cbSize)); /* DWORD */ + ok(FIELD_OFFSET(TOGGLEKEYS, dwFlags) == 4, + "FIELD_OFFSET(TOGGLEKEYS, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(TOGGLEKEYS, dwFlags)); /* DWORD */ + ok(sizeof(TOGGLEKEYS) == 8, "sizeof(TOGGLEKEYS) == %d (expected 8)", sizeof(TOGGLEKEYS)); + + /* TPMPARAMS */ + ok(FIELD_OFFSET(TPMPARAMS, cbSize) == 0, + "FIELD_OFFSET(TPMPARAMS, cbSize) == %ld (expected 0)", + FIELD_OFFSET(TPMPARAMS, cbSize)); /* UINT */ + ok(FIELD_OFFSET(TPMPARAMS, rcExclude) == 4, + "FIELD_OFFSET(TPMPARAMS, rcExclude) == %ld (expected 4)", + FIELD_OFFSET(TPMPARAMS, rcExclude)); /* RECT */ + ok(sizeof(TPMPARAMS) == 20, "sizeof(TPMPARAMS) == %d (expected 20)", sizeof(TPMPARAMS)); + + /* TRACKMOUSEEVENT */ + ok(FIELD_OFFSET(TRACKMOUSEEVENT, cbSize) == 0, + "FIELD_OFFSET(TRACKMOUSEEVENT, cbSize) == %ld (expected 0)", + FIELD_OFFSET(TRACKMOUSEEVENT, cbSize)); /* DWORD */ + ok(FIELD_OFFSET(TRACKMOUSEEVENT, dwFlags) == 4, + "FIELD_OFFSET(TRACKMOUSEEVENT, dwFlags) == %ld (expected 4)", + FIELD_OFFSET(TRACKMOUSEEVENT, dwFlags)); /* DWORD */ + ok(FIELD_OFFSET(TRACKMOUSEEVENT, hwndTrack) == 8, + "FIELD_OFFSET(TRACKMOUSEEVENT, hwndTrack) == %ld (expected 8)", + FIELD_OFFSET(TRACKMOUSEEVENT, hwndTrack)); /* HWND */ + ok(FIELD_OFFSET(TRACKMOUSEEVENT, dwHoverTime) == 12, + "FIELD_OFFSET(TRACKMOUSEEVENT, dwHoverTime) == %ld (expected 12)", + FIELD_OFFSET(TRACKMOUSEEVENT, dwHoverTime)); /* DWORD */ + ok(sizeof(TRACKMOUSEEVENT) == 16, "sizeof(TRACKMOUSEEVENT) == %d (expected 16)", sizeof(TRACKMOUSEEVENT)); + + /* WINDOWINFO */ + ok(FIELD_OFFSET(WINDOWINFO, cbSize) == 0, + "FIELD_OFFSET(WINDOWINFO, cbSize) == %ld (expected 0)", + FIELD_OFFSET(WINDOWINFO, cbSize)); /* DWORD */ + ok(FIELD_OFFSET(WINDOWINFO, rcWindow) == 4, + "FIELD_OFFSET(WINDOWINFO, rcWindow) == %ld (expected 4)", + FIELD_OFFSET(WINDOWINFO, rcWindow)); /* RECT */ + ok(FIELD_OFFSET(WINDOWINFO, rcClient) == 20, + "FIELD_OFFSET(WINDOWINFO, rcClient) == %ld (expected 20)", + FIELD_OFFSET(WINDOWINFO, rcClient)); /* RECT */ + ok(FIELD_OFFSET(WINDOWINFO, dwStyle) == 36, + "FIELD_OFFSET(WINDOWINFO, dwStyle) == %ld (expected 36)", + FIELD_OFFSET(WINDOWINFO, dwStyle)); /* DWORD */ + ok(FIELD_OFFSET(WINDOWINFO, dwExStyle) == 40, + "FIELD_OFFSET(WINDOWINFO, dwExStyle) == %ld (expected 40)", + FIELD_OFFSET(WINDOWINFO, dwExStyle)); /* DWORD */ + ok(FIELD_OFFSET(WINDOWINFO, dwWindowStatus) == 44, + "FIELD_OFFSET(WINDOWINFO, dwWindowStatus) == %ld (expected 44)", + FIELD_OFFSET(WINDOWINFO, dwWindowStatus)); /* DWORD */ + ok(FIELD_OFFSET(WINDOWINFO, cxWindowBorders) == 48, + "FIELD_OFFSET(WINDOWINFO, cxWindowBorders) == %ld (expected 48)", + FIELD_OFFSET(WINDOWINFO, cxWindowBorders)); /* UINT */ + ok(FIELD_OFFSET(WINDOWINFO, cyWindowBorders) == 52, + "FIELD_OFFSET(WINDOWINFO, cyWindowBorders) == %ld (expected 52)", + FIELD_OFFSET(WINDOWINFO, cyWindowBorders)); /* UINT */ + ok(FIELD_OFFSET(WINDOWINFO, atomWindowType) == 56, + "FIELD_OFFSET(WINDOWINFO, atomWindowType) == %ld (expected 56)", + FIELD_OFFSET(WINDOWINFO, atomWindowType)); /* ATOM */ + ok(FIELD_OFFSET(WINDOWINFO, wCreatorVersion) == 58, + "FIELD_OFFSET(WINDOWINFO, wCreatorVersion) == %ld (expected 58)", + FIELD_OFFSET(WINDOWINFO, wCreatorVersion)); /* WORD */ + ok(sizeof(WINDOWINFO) == 60, "sizeof(WINDOWINFO) == %d (expected 60)", sizeof(WINDOWINFO)); + + /* WINDOWPLACEMENT */ + ok(FIELD_OFFSET(WINDOWPLACEMENT, length) == 0, + "FIELD_OFFSET(WINDOWPLACEMENT, length) == %ld (expected 0)", + FIELD_OFFSET(WINDOWPLACEMENT, length)); /* UINT */ + ok(FIELD_OFFSET(WINDOWPLACEMENT, flags) == 4, + "FIELD_OFFSET(WINDOWPLACEMENT, flags) == %ld (expected 4)", + FIELD_OFFSET(WINDOWPLACEMENT, flags)); /* UINT */ + ok(FIELD_OFFSET(WINDOWPLACEMENT, showCmd) == 8, + "FIELD_OFFSET(WINDOWPLACEMENT, showCmd) == %ld (expected 8)", + FIELD_OFFSET(WINDOWPLACEMENT, showCmd)); /* UINT */ + ok(FIELD_OFFSET(WINDOWPLACEMENT, ptMinPosition) == 12, + "FIELD_OFFSET(WINDOWPLACEMENT, ptMinPosition) == %ld (expected 12)", + FIELD_OFFSET(WINDOWPLACEMENT, ptMinPosition)); /* POINT */ + ok(FIELD_OFFSET(WINDOWPLACEMENT, ptMaxPosition) == 20, + "FIELD_OFFSET(WINDOWPLACEMENT, ptMaxPosition) == %ld (expected 20)", + FIELD_OFFSET(WINDOWPLACEMENT, ptMaxPosition)); /* POINT */ + ok(FIELD_OFFSET(WINDOWPLACEMENT, rcNormalPosition) == 28, + "FIELD_OFFSET(WINDOWPLACEMENT, rcNormalPosition) == %ld (expected 28)", + FIELD_OFFSET(WINDOWPLACEMENT, rcNormalPosition)); /* RECT */ + ok(sizeof(WINDOWPLACEMENT) == 44, "sizeof(WINDOWPLACEMENT) == %d (expected 44)", sizeof(WINDOWPLACEMENT)); + + /* WINDOWPOS */ + ok(FIELD_OFFSET(WINDOWPOS, hwnd) == 0, + "FIELD_OFFSET(WINDOWPOS, hwnd) == %ld (expected 0)", + FIELD_OFFSET(WINDOWPOS, hwnd)); /* HWND */ + ok(FIELD_OFFSET(WINDOWPOS, hwndInsertAfter) == 4, + "FIELD_OFFSET(WINDOWPOS, hwndInsertAfter) == %ld (expected 4)", + FIELD_OFFSET(WINDOWPOS, hwndInsertAfter)); /* HWND */ + ok(FIELD_OFFSET(WINDOWPOS, x) == 8, + "FIELD_OFFSET(WINDOWPOS, x) == %ld (expected 8)", + FIELD_OFFSET(WINDOWPOS, x)); /* INT */ + ok(FIELD_OFFSET(WINDOWPOS, y) == 12, + "FIELD_OFFSET(WINDOWPOS, y) == %ld (expected 12)", + FIELD_OFFSET(WINDOWPOS, y)); /* INT */ + ok(FIELD_OFFSET(WINDOWPOS, cx) == 16, + "FIELD_OFFSET(WINDOWPOS, cx) == %ld (expected 16)", + FIELD_OFFSET(WINDOWPOS, cx)); /* INT */ + ok(FIELD_OFFSET(WINDOWPOS, cy) == 20, + "FIELD_OFFSET(WINDOWPOS, cy) == %ld (expected 20)", + FIELD_OFFSET(WINDOWPOS, cy)); /* INT */ + ok(FIELD_OFFSET(WINDOWPOS, flags) == 24, + "FIELD_OFFSET(WINDOWPOS, flags) == %ld (expected 24)", + FIELD_OFFSET(WINDOWPOS, flags)); /* UINT */ + ok(sizeof(WINDOWPOS) == 28, "sizeof(WINDOWPOS) == %d (expected 28)", sizeof(WINDOWPOS)); + + /* WNDCLASSA */ + ok(FIELD_OFFSET(WNDCLASSA, style) == 0, + "FIELD_OFFSET(WNDCLASSA, style) == %ld (expected 0)", + FIELD_OFFSET(WNDCLASSA, style)); /* UINT */ + ok(FIELD_OFFSET(WNDCLASSA, lpfnWndProc) == 4, + "FIELD_OFFSET(WNDCLASSA, lpfnWndProc) == %ld (expected 4)", + FIELD_OFFSET(WNDCLASSA, lpfnWndProc)); /* WNDPROC */ + ok(FIELD_OFFSET(WNDCLASSA, cbClsExtra) == 8, + "FIELD_OFFSET(WNDCLASSA, cbClsExtra) == %ld (expected 8)", + FIELD_OFFSET(WNDCLASSA, cbClsExtra)); /* INT */ + ok(FIELD_OFFSET(WNDCLASSA, cbWndExtra) == 12, + "FIELD_OFFSET(WNDCLASSA, cbWndExtra) == %ld (expected 12)", + FIELD_OFFSET(WNDCLASSA, cbWndExtra)); /* INT */ + ok(FIELD_OFFSET(WNDCLASSA, hInstance) == 16, + "FIELD_OFFSET(WNDCLASSA, hInstance) == %ld (expected 16)", + FIELD_OFFSET(WNDCLASSA, hInstance)); /* HINSTANCE */ + ok(FIELD_OFFSET(WNDCLASSA, hIcon) == 20, + "FIELD_OFFSET(WNDCLASSA, hIcon) == %ld (expected 20)", + FIELD_OFFSET(WNDCLASSA, hIcon)); /* HICON */ + ok(FIELD_OFFSET(WNDCLASSA, hCursor) == 24, + "FIELD_OFFSET(WNDCLASSA, hCursor) == %ld (expected 24)", + FIELD_OFFSET(WNDCLASSA, hCursor)); /* HCURSOR */ + ok(FIELD_OFFSET(WNDCLASSA, hbrBackground) == 28, + "FIELD_OFFSET(WNDCLASSA, hbrBackground) == %ld (expected 28)", + FIELD_OFFSET(WNDCLASSA, hbrBackground)); /* HBRUSH */ + ok(FIELD_OFFSET(WNDCLASSA, lpszMenuName) == 32, + "FIELD_OFFSET(WNDCLASSA, lpszMenuName) == %ld (expected 32)", + FIELD_OFFSET(WNDCLASSA, lpszMenuName)); /* LPCSTR */ + ok(FIELD_OFFSET(WNDCLASSA, lpszClassName) == 36, + "FIELD_OFFSET(WNDCLASSA, lpszClassName) == %ld (expected 36)", + FIELD_OFFSET(WNDCLASSA, lpszClassName)); /* LPCSTR */ + ok(sizeof(WNDCLASSA) == 40, "sizeof(WNDCLASSA) == %d (expected 40)", sizeof(WNDCLASSA)); + + /* WNDCLASSEXA */ + ok(FIELD_OFFSET(WNDCLASSEXA, cbSize) == 0, + "FIELD_OFFSET(WNDCLASSEXA, cbSize) == %ld (expected 0)", + FIELD_OFFSET(WNDCLASSEXA, cbSize)); /* UINT */ + ok(FIELD_OFFSET(WNDCLASSEXA, style) == 4, + "FIELD_OFFSET(WNDCLASSEXA, style) == %ld (expected 4)", + FIELD_OFFSET(WNDCLASSEXA, style)); /* UINT */ + ok(FIELD_OFFSET(WNDCLASSEXA, lpfnWndProc) == 8, + "FIELD_OFFSET(WNDCLASSEXA, lpfnWndProc) == %ld (expected 8)", + FIELD_OFFSET(WNDCLASSEXA, lpfnWndProc)); /* WNDPROC */ + ok(FIELD_OFFSET(WNDCLASSEXA, cbClsExtra) == 12, + "FIELD_OFFSET(WNDCLASSEXA, cbClsExtra) == %ld (expected 12)", + FIELD_OFFSET(WNDCLASSEXA, cbClsExtra)); /* INT */ + ok(FIELD_OFFSET(WNDCLASSEXA, cbWndExtra) == 16, + "FIELD_OFFSET(WNDCLASSEXA, cbWndExtra) == %ld (expected 16)", + FIELD_OFFSET(WNDCLASSEXA, cbWndExtra)); /* INT */ + ok(FIELD_OFFSET(WNDCLASSEXA, hInstance) == 20, + "FIELD_OFFSET(WNDCLASSEXA, hInstance) == %ld (expected 20)", + FIELD_OFFSET(WNDCLASSEXA, hInstance)); /* HINSTANCE */ + ok(FIELD_OFFSET(WNDCLASSEXA, hIcon) == 24, + "FIELD_OFFSET(WNDCLASSEXA, hIcon) == %ld (expected 24)", + FIELD_OFFSET(WNDCLASSEXA, hIcon)); /* HICON */ + ok(FIELD_OFFSET(WNDCLASSEXA, hCursor) == 28, + "FIELD_OFFSET(WNDCLASSEXA, hCursor) == %ld (expected 28)", + FIELD_OFFSET(WNDCLASSEXA, hCursor)); /* HCURSOR */ + ok(FIELD_OFFSET(WNDCLASSEXA, hbrBackground) == 32, + "FIELD_OFFSET(WNDCLASSEXA, hbrBackground) == %ld (expected 32)", + FIELD_OFFSET(WNDCLASSEXA, hbrBackground)); /* HBRUSH */ + ok(FIELD_OFFSET(WNDCLASSEXA, lpszMenuName) == 36, + "FIELD_OFFSET(WNDCLASSEXA, lpszMenuName) == %ld (expected 36)", + FIELD_OFFSET(WNDCLASSEXA, lpszMenuName)); /* LPCSTR */ + ok(FIELD_OFFSET(WNDCLASSEXA, lpszClassName) == 40, + "FIELD_OFFSET(WNDCLASSEXA, lpszClassName) == %ld (expected 40)", + FIELD_OFFSET(WNDCLASSEXA, lpszClassName)); /* LPCSTR */ + ok(FIELD_OFFSET(WNDCLASSEXA, hIconSm) == 44, + "FIELD_OFFSET(WNDCLASSEXA, hIconSm) == %ld (expected 44)", + FIELD_OFFSET(WNDCLASSEXA, hIconSm)); /* HICON */ + ok(sizeof(WNDCLASSEXA) == 48, "sizeof(WNDCLASSEXA) == %d (expected 48)", sizeof(WNDCLASSEXA)); + + /* WNDCLASSEXW */ + ok(FIELD_OFFSET(WNDCLASSEXW, cbSize) == 0, + "FIELD_OFFSET(WNDCLASSEXW, cbSize) == %ld (expected 0)", + FIELD_OFFSET(WNDCLASSEXW, cbSize)); /* UINT */ + ok(FIELD_OFFSET(WNDCLASSEXW, style) == 4, + "FIELD_OFFSET(WNDCLASSEXW, style) == %ld (expected 4)", + FIELD_OFFSET(WNDCLASSEXW, style)); /* UINT */ + ok(FIELD_OFFSET(WNDCLASSEXW, lpfnWndProc) == 8, + "FIELD_OFFSET(WNDCLASSEXW, lpfnWndProc) == %ld (expected 8)", + FIELD_OFFSET(WNDCLASSEXW, lpfnWndProc)); /* WNDPROC */ + ok(FIELD_OFFSET(WNDCLASSEXW, cbClsExtra) == 12, + "FIELD_OFFSET(WNDCLASSEXW, cbClsExtra) == %ld (expected 12)", + FIELD_OFFSET(WNDCLASSEXW, cbClsExtra)); /* INT */ + ok(FIELD_OFFSET(WNDCLASSEXW, cbWndExtra) == 16, + "FIELD_OFFSET(WNDCLASSEXW, cbWndExtra) == %ld (expected 16)", + FIELD_OFFSET(WNDCLASSEXW, cbWndExtra)); /* INT */ + ok(FIELD_OFFSET(WNDCLASSEXW, hInstance) == 20, + "FIELD_OFFSET(WNDCLASSEXW, hInstance) == %ld (expected 20)", + FIELD_OFFSET(WNDCLASSEXW, hInstance)); /* HINSTANCE */ + ok(FIELD_OFFSET(WNDCLASSEXW, hIcon) == 24, + "FIELD_OFFSET(WNDCLASSEXW, hIcon) == %ld (expected 24)", + FIELD_OFFSET(WNDCLASSEXW, hIcon)); /* HICON */ + ok(FIELD_OFFSET(WNDCLASSEXW, hCursor) == 28, + "FIELD_OFFSET(WNDCLASSEXW, hCursor) == %ld (expected 28)", + FIELD_OFFSET(WNDCLASSEXW, hCursor)); /* HCURSOR */ + ok(FIELD_OFFSET(WNDCLASSEXW, hbrBackground) == 32, + "FIELD_OFFSET(WNDCLASSEXW, hbrBackground) == %ld (expected 32)", + FIELD_OFFSET(WNDCLASSEXW, hbrBackground)); /* HBRUSH */ + ok(FIELD_OFFSET(WNDCLASSEXW, lpszMenuName) == 36, + "FIELD_OFFSET(WNDCLASSEXW, lpszMenuName) == %ld (expected 36)", + FIELD_OFFSET(WNDCLASSEXW, lpszMenuName)); /* LPCWSTR */ + ok(FIELD_OFFSET(WNDCLASSEXW, lpszClassName) == 40, + "FIELD_OFFSET(WNDCLASSEXW, lpszClassName) == %ld (expected 40)", + FIELD_OFFSET(WNDCLASSEXW, lpszClassName)); /* LPCWSTR */ + ok(FIELD_OFFSET(WNDCLASSEXW, hIconSm) == 44, + "FIELD_OFFSET(WNDCLASSEXW, hIconSm) == %ld (expected 44)", + FIELD_OFFSET(WNDCLASSEXW, hIconSm)); /* HICON */ + ok(sizeof(WNDCLASSEXW) == 48, "sizeof(WNDCLASSEXW) == %d (expected 48)", sizeof(WNDCLASSEXW)); + + /* WNDCLASSW */ + ok(FIELD_OFFSET(WNDCLASSW, style) == 0, + "FIELD_OFFSET(WNDCLASSW, style) == %ld (expected 0)", + FIELD_OFFSET(WNDCLASSW, style)); /* UINT */ + ok(FIELD_OFFSET(WNDCLASSW, lpfnWndProc) == 4, + "FIELD_OFFSET(WNDCLASSW, lpfnWndProc) == %ld (expected 4)", + FIELD_OFFSET(WNDCLASSW, lpfnWndProc)); /* WNDPROC */ + ok(FIELD_OFFSET(WNDCLASSW, cbClsExtra) == 8, + "FIELD_OFFSET(WNDCLASSW, cbClsExtra) == %ld (expected 8)", + FIELD_OFFSET(WNDCLASSW, cbClsExtra)); /* INT */ + ok(FIELD_OFFSET(WNDCLASSW, cbWndExtra) == 12, + "FIELD_OFFSET(WNDCLASSW, cbWndExtra) == %ld (expected 12)", + FIELD_OFFSET(WNDCLASSW, cbWndExtra)); /* INT */ + ok(FIELD_OFFSET(WNDCLASSW, hInstance) == 16, + "FIELD_OFFSET(WNDCLASSW, hInstance) == %ld (expected 16)", + FIELD_OFFSET(WNDCLASSW, hInstance)); /* HINSTANCE */ + ok(FIELD_OFFSET(WNDCLASSW, hIcon) == 20, + "FIELD_OFFSET(WNDCLASSW, hIcon) == %ld (expected 20)", + FIELD_OFFSET(WNDCLASSW, hIcon)); /* HICON */ + ok(FIELD_OFFSET(WNDCLASSW, hCursor) == 24, + "FIELD_OFFSET(WNDCLASSW, hCursor) == %ld (expected 24)", + FIELD_OFFSET(WNDCLASSW, hCursor)); /* HCURSOR */ + ok(FIELD_OFFSET(WNDCLASSW, hbrBackground) == 28, + "FIELD_OFFSET(WNDCLASSW, hbrBackground) == %ld (expected 28)", + FIELD_OFFSET(WNDCLASSW, hbrBackground)); /* HBRUSH */ + ok(FIELD_OFFSET(WNDCLASSW, lpszMenuName) == 32, + "FIELD_OFFSET(WNDCLASSW, lpszMenuName) == %ld (expected 32)", + FIELD_OFFSET(WNDCLASSW, lpszMenuName)); /* LPCWSTR */ + ok(FIELD_OFFSET(WNDCLASSW, lpszClassName) == 36, + "FIELD_OFFSET(WNDCLASSW, lpszClassName) == %ld (expected 36)", + FIELD_OFFSET(WNDCLASSW, lpszClassName)); /* LPCWSTR */ + ok(sizeof(WNDCLASSW) == 40, "sizeof(WNDCLASSW) == %d (expected 40)", sizeof(WNDCLASSW)); + +} + +START_TEST(generated) +{ + test_pack(); +}