Keep track of per-column information inside the listview.
[wine] / dlls / user / tests / generated.c
1 /* File generated automatically from tools/winapi/test.dat; do not edit! */
2 /* This file can be copied, modified and distributed without restriction. */
3
4 /*
5  * Unit tests for data structure packing
6  */
7
8 #include <stdio.h>
9
10 #include "wine/test.h"
11 #include "basetsd.h"
12 #include "winnt.h"
13 #include "windef.h"
14 #include "winbase.h"
15 #include "wingdi.h"
16 #include "winuser.h"
17
18 /***********************************************************************
19  * Windows API extension
20  */
21
22 #if (_MSC_VER >= 1300) && defined(__cplusplus)
23 # define FIELD_ALIGNMENT(type, field) __alignof(((type*)0)->field)
24 #elif defined(__GNUC__)
25 # define FIELD_ALIGNMENT(type, field) __alignof__(((type*)0)->field)
26 #else
27 /* FIXME: Not sure if is possible to do without compiler extension */
28 #endif
29
30 /***********************************************************************
31  * Test helper macros
32  */
33
34 #ifdef FIELD_ALIGNMENT
35 # define TEST_FIELD_ALIGNMENT(type, field, align) \
36    ok(FIELD_ALIGNMENT(type, field) == align, \
37        "FIELD_ALIGNMENT(" #type ", " #field ") == %d (expected " #align ")", \
38            FIELD_ALIGNMENT(type, field))
39 #else
40 # define TEST_FIELD_ALIGNMENT(type, field, align) do { } while (0)
41 #endif
42
43 #define TEST_FIELD_OFFSET(type, field, offset) \
44     ok(FIELD_OFFSET(type, field) == offset, \
45         "FIELD_OFFSET(" #type ", " #field ") == %ld (expected " #offset ")", \
46              FIELD_OFFSET(type, field))
47
48 #define TEST_TYPE_ALIGNMENT(type, align) \
49     ok(TYPE_ALIGNMENT(type) == align, "TYPE_ALIGNMENT(" #type ") == %d (expected " #align ")", TYPE_ALIGNMENT(type))
50
51 #define TEST_TYPE_SIZE(type, size) \
52     ok(sizeof(type) == size, "sizeof(" #type ") == %d (expected " #size ")", sizeof(type))
53
54 /***********************************************************************
55  * Test macros
56  */
57
58 #define TEST_FIELD(type, field_type, field_name, field_offset, field_size, field_align) \
59   TEST_TYPE_SIZE(field_type, field_size); \
60   TEST_FIELD_ALIGNMENT(type, field_name, field_align); \
61   TEST_FIELD_OFFSET(type, field_name, field_offset); \
62
63 #define TEST_TYPE(type, size, align) \
64   TEST_TYPE_ALIGNMENT(type, align); \
65   TEST_TYPE_SIZE(type, size)
66
67 void test_pack(void)
68 {
69     /* ACCEL (pack 4) */
70     TEST_TYPE(ACCEL, 6, 2);
71     TEST_FIELD(ACCEL, BYTE, fVirt, 0, 1, 1);
72     TEST_FIELD(ACCEL, BYTE, pad0, 1, 1, 1);
73     TEST_FIELD(ACCEL, WORD, key, 2, 2, 2);
74     TEST_FIELD(ACCEL, WORD, cmd, 4, 2, 2);
75
76     /* ACCESSTIMEOUT (pack 4) */
77     TEST_TYPE(ACCESSTIMEOUT, 12, 4);
78     TEST_FIELD(ACCESSTIMEOUT, UINT, cbSize, 0, 4, 4);
79     TEST_FIELD(ACCESSTIMEOUT, DWORD, dwFlags, 4, 4, 4);
80     TEST_FIELD(ACCESSTIMEOUT, DWORD, iTimeOutMSec, 8, 4, 4);
81
82     /* ANIMATIONINFO (pack 4) */
83     TEST_TYPE(ANIMATIONINFO, 8, 4);
84     TEST_FIELD(ANIMATIONINFO, UINT, cbSize, 0, 4, 4);
85     TEST_FIELD(ANIMATIONINFO, INT, iMinAnimate, 4, 4, 4);
86
87     /* CBTACTIVATESTRUCT (pack 4) */
88     TEST_TYPE(CBTACTIVATESTRUCT, 8, 4);
89     TEST_FIELD(CBTACTIVATESTRUCT, BOOL, fMouse, 0, 4, 4);
90     TEST_FIELD(CBTACTIVATESTRUCT, HWND, hWndActive, 4, 4, 4);
91
92     /* CBT_CREATEWNDA (pack 4) */
93     TEST_TYPE(CBT_CREATEWNDA, 8, 4);
94     TEST_FIELD(CBT_CREATEWNDA, CREATESTRUCTA *, lpcs, 0, 4, 4);
95     TEST_FIELD(CBT_CREATEWNDA, HWND, hwndInsertAfter, 4, 4, 4);
96
97     /* CBT_CREATEWNDW (pack 4) */
98     TEST_TYPE(CBT_CREATEWNDW, 8, 4);
99     TEST_FIELD(CBT_CREATEWNDW, CREATESTRUCTW *, lpcs, 0, 4, 4);
100     TEST_FIELD(CBT_CREATEWNDW, HWND, hwndInsertAfter, 4, 4, 4);
101
102     /* CLIENTCREATESTRUCT (pack 4) */
103     TEST_TYPE(CLIENTCREATESTRUCT, 8, 4);
104     TEST_FIELD(CLIENTCREATESTRUCT, HMENU, hWindowMenu, 0, 4, 4);
105     TEST_FIELD(CLIENTCREATESTRUCT, UINT, idFirstChild, 4, 4, 4);
106
107     /* COMPAREITEMSTRUCT (pack 4) */
108     TEST_TYPE(COMPAREITEMSTRUCT, 32, 4);
109     TEST_FIELD(COMPAREITEMSTRUCT, UINT, CtlType, 0, 4, 4);
110     TEST_FIELD(COMPAREITEMSTRUCT, UINT, CtlID, 4, 4, 4);
111     TEST_FIELD(COMPAREITEMSTRUCT, HWND, hwndItem, 8, 4, 4);
112     TEST_FIELD(COMPAREITEMSTRUCT, UINT, itemID1, 12, 4, 4);
113     TEST_FIELD(COMPAREITEMSTRUCT, DWORD, itemData1, 16, 4, 4);
114     TEST_FIELD(COMPAREITEMSTRUCT, UINT, itemID2, 20, 4, 4);
115     TEST_FIELD(COMPAREITEMSTRUCT, DWORD, itemData2, 24, 4, 4);
116     TEST_FIELD(COMPAREITEMSTRUCT, DWORD, dwLocaleId, 28, 4, 4);
117
118     /* COPYDATASTRUCT (pack 4) */
119     TEST_TYPE(COPYDATASTRUCT, 12, 4);
120     TEST_FIELD(COPYDATASTRUCT, DWORD, dwData, 0, 4, 4);
121     TEST_FIELD(COPYDATASTRUCT, DWORD, cbData, 4, 4, 4);
122     TEST_FIELD(COPYDATASTRUCT, LPVOID, lpData, 8, 4, 4);
123
124     /* CREATESTRUCTA (pack 4) */
125     TEST_TYPE(CREATESTRUCTA, 48, 4);
126     TEST_FIELD(CREATESTRUCTA, LPVOID, lpCreateParams, 0, 4, 4);
127     TEST_FIELD(CREATESTRUCTA, HINSTANCE, hInstance, 4, 4, 4);
128     TEST_FIELD(CREATESTRUCTA, HMENU, hMenu, 8, 4, 4);
129     TEST_FIELD(CREATESTRUCTA, HWND, hwndParent, 12, 4, 4);
130     TEST_FIELD(CREATESTRUCTA, INT, cy, 16, 4, 4);
131     TEST_FIELD(CREATESTRUCTA, INT, cx, 20, 4, 4);
132     TEST_FIELD(CREATESTRUCTA, INT, y, 24, 4, 4);
133     TEST_FIELD(CREATESTRUCTA, INT, x, 28, 4, 4);
134     TEST_FIELD(CREATESTRUCTA, LONG, style, 32, 4, 4);
135     TEST_FIELD(CREATESTRUCTA, LPCSTR, lpszName, 36, 4, 4);
136     TEST_FIELD(CREATESTRUCTA, LPCSTR, lpszClass, 40, 4, 4);
137     TEST_FIELD(CREATESTRUCTA, DWORD, dwExStyle, 44, 4, 4);
138
139     /* CREATESTRUCTW (pack 4) */
140     TEST_TYPE(CREATESTRUCTW, 48, 4);
141     TEST_FIELD(CREATESTRUCTW, LPVOID, lpCreateParams, 0, 4, 4);
142     TEST_FIELD(CREATESTRUCTW, HINSTANCE, hInstance, 4, 4, 4);
143     TEST_FIELD(CREATESTRUCTW, HMENU, hMenu, 8, 4, 4);
144     TEST_FIELD(CREATESTRUCTW, HWND, hwndParent, 12, 4, 4);
145     TEST_FIELD(CREATESTRUCTW, INT, cy, 16, 4, 4);
146     TEST_FIELD(CREATESTRUCTW, INT, cx, 20, 4, 4);
147     TEST_FIELD(CREATESTRUCTW, INT, y, 24, 4, 4);
148     TEST_FIELD(CREATESTRUCTW, INT, x, 28, 4, 4);
149     TEST_FIELD(CREATESTRUCTW, LONG, style, 32, 4, 4);
150     TEST_FIELD(CREATESTRUCTW, LPCWSTR, lpszName, 36, 4, 4);
151     TEST_FIELD(CREATESTRUCTW, LPCWSTR, lpszClass, 40, 4, 4);
152     TEST_FIELD(CREATESTRUCTW, DWORD, dwExStyle, 44, 4, 4);
153
154     /* CURSORINFO (pack 4) */
155     TEST_TYPE(CURSORINFO, 20, 4);
156     TEST_FIELD(CURSORINFO, DWORD, cbSize, 0, 4, 4);
157     TEST_FIELD(CURSORINFO, DWORD, flags, 4, 4, 4);
158     TEST_FIELD(CURSORINFO, HCURSOR, hCursor, 8, 4, 4);
159     TEST_FIELD(CURSORINFO, POINT, ptScreenPos, 12, 8, 4);
160
161     /* CWPRETSTRUCT (pack 4) */
162     TEST_TYPE(CWPRETSTRUCT, 20, 4);
163     TEST_FIELD(CWPRETSTRUCT, LRESULT, lResult, 0, 4, 4);
164     TEST_FIELD(CWPRETSTRUCT, LPARAM, lParam, 4, 4, 4);
165     TEST_FIELD(CWPRETSTRUCT, WPARAM, wParam, 8, 4, 4);
166     TEST_FIELD(CWPRETSTRUCT, DWORD, message, 12, 4, 4);
167     TEST_FIELD(CWPRETSTRUCT, HWND, hwnd, 16, 4, 4);
168
169     /* CWPSTRUCT (pack 4) */
170     TEST_TYPE(CWPSTRUCT, 16, 4);
171     TEST_FIELD(CWPSTRUCT, LPARAM, lParam, 0, 4, 4);
172     TEST_FIELD(CWPSTRUCT, WPARAM, wParam, 4, 4, 4);
173     TEST_FIELD(CWPSTRUCT, UINT, message, 8, 4, 4);
174     TEST_FIELD(CWPSTRUCT, HWND, hwnd, 12, 4, 4);
175
176     /* DEBUGHOOKINFO (pack 4) */
177     TEST_TYPE(DEBUGHOOKINFO, 20, 4);
178     TEST_FIELD(DEBUGHOOKINFO, DWORD, idThread, 0, 4, 4);
179     TEST_FIELD(DEBUGHOOKINFO, DWORD, idThreadInstaller, 4, 4, 4);
180     TEST_FIELD(DEBUGHOOKINFO, LPARAM, lParam, 8, 4, 4);
181     TEST_FIELD(DEBUGHOOKINFO, WPARAM, wParam, 12, 4, 4);
182     TEST_FIELD(DEBUGHOOKINFO, INT, code, 16, 4, 4);
183
184     /* DELETEITEMSTRUCT (pack 4) */
185     TEST_TYPE(DELETEITEMSTRUCT, 20, 4);
186     TEST_FIELD(DELETEITEMSTRUCT, UINT, CtlType, 0, 4, 4);
187     TEST_FIELD(DELETEITEMSTRUCT, UINT, CtlID, 4, 4, 4);
188     TEST_FIELD(DELETEITEMSTRUCT, UINT, itemID, 8, 4, 4);
189     TEST_FIELD(DELETEITEMSTRUCT, HWND, hwndItem, 12, 4, 4);
190     TEST_FIELD(DELETEITEMSTRUCT, DWORD, itemData, 16, 4, 4);
191
192     /* DLGITEMTEMPLATE (pack 2) */
193     TEST_TYPE(DLGITEMTEMPLATE, 18, 2);
194     TEST_FIELD(DLGITEMTEMPLATE, DWORD, style, 0, 4, 2);
195     TEST_FIELD(DLGITEMTEMPLATE, DWORD, dwExtendedStyle, 4, 4, 2);
196     TEST_FIELD(DLGITEMTEMPLATE, short, x, 8, 2, 2);
197     TEST_FIELD(DLGITEMTEMPLATE, short, y, 10, 2, 2);
198     TEST_FIELD(DLGITEMTEMPLATE, short, cx, 12, 2, 2);
199     TEST_FIELD(DLGITEMTEMPLATE, short, cy, 14, 2, 2);
200     TEST_FIELD(DLGITEMTEMPLATE, WORD, id, 16, 2, 2);
201
202     /* DLGTEMPLATE (pack 2) */
203     TEST_TYPE(DLGTEMPLATE, 18, 2);
204     TEST_FIELD(DLGTEMPLATE, DWORD, style, 0, 4, 2);
205     TEST_FIELD(DLGTEMPLATE, DWORD, dwExtendedStyle, 4, 4, 2);
206     TEST_FIELD(DLGTEMPLATE, WORD, cdit, 8, 2, 2);
207     TEST_FIELD(DLGTEMPLATE, short, x, 10, 2, 2);
208     TEST_FIELD(DLGTEMPLATE, short, y, 12, 2, 2);
209     TEST_FIELD(DLGTEMPLATE, short, cx, 14, 2, 2);
210     TEST_FIELD(DLGTEMPLATE, short, cy, 16, 2, 2);
211
212     /* DRAWTEXTPARAMS (pack 4) */
213     TEST_TYPE(DRAWTEXTPARAMS, 20, 4);
214     TEST_FIELD(DRAWTEXTPARAMS, UINT, cbSize, 0, 4, 4);
215     TEST_FIELD(DRAWTEXTPARAMS, INT, iTabLength, 4, 4, 4);
216     TEST_FIELD(DRAWTEXTPARAMS, INT, iLeftMargin, 8, 4, 4);
217     TEST_FIELD(DRAWTEXTPARAMS, INT, iRightMargin, 12, 4, 4);
218     TEST_FIELD(DRAWTEXTPARAMS, UINT, uiLengthDrawn, 16, 4, 4);
219
220     /* EVENTMSG (pack 4) */
221     TEST_TYPE(EVENTMSG, 20, 4);
222     TEST_FIELD(EVENTMSG, UINT, message, 0, 4, 4);
223     TEST_FIELD(EVENTMSG, UINT, paramL, 4, 4, 4);
224     TEST_FIELD(EVENTMSG, UINT, paramH, 8, 4, 4);
225     TEST_FIELD(EVENTMSG, DWORD, time, 12, 4, 4);
226     TEST_FIELD(EVENTMSG, HWND, hwnd, 16, 4, 4);
227
228     /* FILTERKEYS (pack 4) */
229     TEST_TYPE(FILTERKEYS, 24, 4);
230     TEST_FIELD(FILTERKEYS, UINT, cbSize, 0, 4, 4);
231     TEST_FIELD(FILTERKEYS, DWORD, dwFlags, 4, 4, 4);
232     TEST_FIELD(FILTERKEYS, DWORD, iWaitMSec, 8, 4, 4);
233     TEST_FIELD(FILTERKEYS, DWORD, iDelayMSec, 12, 4, 4);
234     TEST_FIELD(FILTERKEYS, DWORD, iRepeatMSec, 16, 4, 4);
235     TEST_FIELD(FILTERKEYS, DWORD, iBounceMSec, 20, 4, 4);
236
237     /* HARDWAREHOOKSTRUCT (pack 4) */
238     TEST_TYPE(HARDWAREHOOKSTRUCT, 16, 4);
239     TEST_FIELD(HARDWAREHOOKSTRUCT, HWND, hWnd, 0, 4, 4);
240     TEST_FIELD(HARDWAREHOOKSTRUCT, UINT, wMessage, 4, 4, 4);
241     TEST_FIELD(HARDWAREHOOKSTRUCT, WPARAM, wParam, 8, 4, 4);
242     TEST_FIELD(HARDWAREHOOKSTRUCT, LPARAM, lParam, 12, 4, 4);
243
244     /* HARDWAREINPUT (pack 4) */
245     TEST_TYPE(HARDWAREINPUT, 8, 4);
246     TEST_FIELD(HARDWAREINPUT, DWORD, uMsg, 0, 4, 4);
247     TEST_FIELD(HARDWAREINPUT, WORD, wParamL, 4, 2, 2);
248     TEST_FIELD(HARDWAREINPUT, WORD, wParamH, 6, 2, 2);
249
250     /* HELPINFO (pack 4) */
251     TEST_TYPE(HELPINFO, 28, 4);
252     TEST_FIELD(HELPINFO, UINT, cbSize, 0, 4, 4);
253     TEST_FIELD(HELPINFO, INT, iContextType, 4, 4, 4);
254     TEST_FIELD(HELPINFO, INT, iCtrlId, 8, 4, 4);
255     TEST_FIELD(HELPINFO, HANDLE, hItemHandle, 12, 4, 4);
256     TEST_FIELD(HELPINFO, DWORD, dwContextId, 16, 4, 4);
257     TEST_FIELD(HELPINFO, POINT, MousePos, 20, 8, 4);
258
259     /* HELPWININFOA (pack 4) */
260     TEST_TYPE(HELPWININFOA, 28, 4);
261     TEST_FIELD(HELPWININFOA, int, wStructSize, 0, 4, 4);
262     TEST_FIELD(HELPWININFOA, int, x, 4, 4, 4);
263     TEST_FIELD(HELPWININFOA, int, y, 8, 4, 4);
264     TEST_FIELD(HELPWININFOA, int, dx, 12, 4, 4);
265     TEST_FIELD(HELPWININFOA, int, dy, 16, 4, 4);
266     TEST_FIELD(HELPWININFOA, int, wMax, 20, 4, 4);
267     TEST_FIELD(HELPWININFOA, CHAR[2], rgchMember, 24, 2, 1);
268
269     /* HELPWININFOW (pack 4) */
270     TEST_TYPE(HELPWININFOW, 28, 4);
271     TEST_FIELD(HELPWININFOW, int, wStructSize, 0, 4, 4);
272     TEST_FIELD(HELPWININFOW, int, x, 4, 4, 4);
273     TEST_FIELD(HELPWININFOW, int, y, 8, 4, 4);
274     TEST_FIELD(HELPWININFOW, int, dx, 12, 4, 4);
275     TEST_FIELD(HELPWININFOW, int, dy, 16, 4, 4);
276     TEST_FIELD(HELPWININFOW, int, wMax, 20, 4, 4);
277     TEST_FIELD(HELPWININFOW, WCHAR[2], rgchMember, 24, 4, 2);
278
279     /* HIGHCONTRASTA (pack 4) */
280     TEST_TYPE(HIGHCONTRASTA, 12, 4);
281     TEST_FIELD(HIGHCONTRASTA, UINT, cbSize, 0, 4, 4);
282     TEST_FIELD(HIGHCONTRASTA, DWORD, dwFlags, 4, 4, 4);
283     TEST_FIELD(HIGHCONTRASTA, LPSTR, lpszDefaultScheme, 8, 4, 4);
284
285     /* HIGHCONTRASTW (pack 4) */
286     TEST_TYPE(HIGHCONTRASTW, 12, 4);
287     TEST_FIELD(HIGHCONTRASTW, UINT, cbSize, 0, 4, 4);
288     TEST_FIELD(HIGHCONTRASTW, DWORD, dwFlags, 4, 4, 4);
289     TEST_FIELD(HIGHCONTRASTW, LPWSTR, lpszDefaultScheme, 8, 4, 4);
290
291     /* ICONINFO (pack 4) */
292     TEST_TYPE(ICONINFO, 20, 4);
293     TEST_FIELD(ICONINFO, BOOL, fIcon, 0, 4, 4);
294     TEST_FIELD(ICONINFO, DWORD, xHotspot, 4, 4, 4);
295     TEST_FIELD(ICONINFO, DWORD, yHotspot, 8, 4, 4);
296     TEST_FIELD(ICONINFO, HBITMAP, hbmMask, 12, 4, 4);
297     TEST_FIELD(ICONINFO, HBITMAP, hbmColor, 16, 4, 4);
298
299     /* ICONMETRICSA (pack 4) */
300     TEST_TYPE(ICONMETRICSA, 76, 4);
301     TEST_FIELD(ICONMETRICSA, UINT, cbSize, 0, 4, 4);
302     TEST_FIELD(ICONMETRICSA, int, iHorzSpacing, 4, 4, 4);
303     TEST_FIELD(ICONMETRICSA, int, iVertSpacing, 8, 4, 4);
304     TEST_FIELD(ICONMETRICSA, int, iTitleWrap, 12, 4, 4);
305     TEST_FIELD(ICONMETRICSA, LOGFONTA, lfFont, 16, 60, 4);
306
307     /* ICONMETRICSW (pack 4) */
308     TEST_TYPE(ICONMETRICSW, 108, 4);
309     TEST_FIELD(ICONMETRICSW, UINT, cbSize, 0, 4, 4);
310     TEST_FIELD(ICONMETRICSW, int, iHorzSpacing, 4, 4, 4);
311     TEST_FIELD(ICONMETRICSW, int, iVertSpacing, 8, 4, 4);
312     TEST_FIELD(ICONMETRICSW, int, iTitleWrap, 12, 4, 4);
313     TEST_FIELD(ICONMETRICSW, LOGFONTW, lfFont, 16, 92, 4);
314
315     /* INPUT (pack 4) */
316     TEST_FIELD(INPUT, DWORD, type, 0, 4, 4);
317
318     /* KBDLLHOOKSTRUCT (pack 4) */
319     TEST_TYPE(KBDLLHOOKSTRUCT, 20, 4);
320     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, vkCode, 0, 4, 4);
321     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, scanCode, 4, 4, 4);
322     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, flags, 8, 4, 4);
323     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, time, 12, 4, 4);
324     TEST_FIELD(KBDLLHOOKSTRUCT, ULONG_PTR, dwExtraInfo, 16, 4, 4);
325
326     /* KEYBDINPUT (pack 4) */
327     TEST_TYPE(KEYBDINPUT, 16, 4);
328     TEST_FIELD(KEYBDINPUT, WORD, wVk, 0, 2, 2);
329     TEST_FIELD(KEYBDINPUT, WORD, wScan, 2, 2, 2);
330     TEST_FIELD(KEYBDINPUT, DWORD, dwFlags, 4, 4, 4);
331     TEST_FIELD(KEYBDINPUT, DWORD, time, 8, 4, 4);
332     TEST_FIELD(KEYBDINPUT, ULONG_PTR, dwExtraInfo, 12, 4, 4);
333
334     /* MDICREATESTRUCTA (pack 4) */
335     TEST_TYPE(MDICREATESTRUCTA, 36, 4);
336     TEST_FIELD(MDICREATESTRUCTA, LPCSTR, szClass, 0, 4, 4);
337     TEST_FIELD(MDICREATESTRUCTA, LPCSTR, szTitle, 4, 4, 4);
338     TEST_FIELD(MDICREATESTRUCTA, HINSTANCE, hOwner, 8, 4, 4);
339     TEST_FIELD(MDICREATESTRUCTA, INT, x, 12, 4, 4);
340     TEST_FIELD(MDICREATESTRUCTA, INT, y, 16, 4, 4);
341     TEST_FIELD(MDICREATESTRUCTA, INT, cx, 20, 4, 4);
342     TEST_FIELD(MDICREATESTRUCTA, INT, cy, 24, 4, 4);
343     TEST_FIELD(MDICREATESTRUCTA, DWORD, style, 28, 4, 4);
344     TEST_FIELD(MDICREATESTRUCTA, LPARAM, lParam, 32, 4, 4);
345
346     /* MDICREATESTRUCTW (pack 4) */
347     TEST_TYPE(MDICREATESTRUCTW, 36, 4);
348     TEST_FIELD(MDICREATESTRUCTW, LPCWSTR, szClass, 0, 4, 4);
349     TEST_FIELD(MDICREATESTRUCTW, LPCWSTR, szTitle, 4, 4, 4);
350     TEST_FIELD(MDICREATESTRUCTW, HINSTANCE, hOwner, 8, 4, 4);
351     TEST_FIELD(MDICREATESTRUCTW, INT, x, 12, 4, 4);
352     TEST_FIELD(MDICREATESTRUCTW, INT, y, 16, 4, 4);
353     TEST_FIELD(MDICREATESTRUCTW, INT, cx, 20, 4, 4);
354     TEST_FIELD(MDICREATESTRUCTW, INT, cy, 24, 4, 4);
355     TEST_FIELD(MDICREATESTRUCTW, DWORD, style, 28, 4, 4);
356     TEST_FIELD(MDICREATESTRUCTW, LPARAM, lParam, 32, 4, 4);
357
358     /* MDINEXTMENU (pack 4) */
359     TEST_TYPE(MDINEXTMENU, 12, 4);
360     TEST_FIELD(MDINEXTMENU, HMENU, hmenuIn, 0, 4, 4);
361     TEST_FIELD(MDINEXTMENU, HMENU, hmenuNext, 4, 4, 4);
362     TEST_FIELD(MDINEXTMENU, HWND, hwndNext, 8, 4, 4);
363
364     /* MEASUREITEMSTRUCT (pack 4) */
365     TEST_TYPE(MEASUREITEMSTRUCT, 24, 4);
366     TEST_FIELD(MEASUREITEMSTRUCT, UINT, CtlType, 0, 4, 4);
367     TEST_FIELD(MEASUREITEMSTRUCT, UINT, CtlID, 4, 4, 4);
368     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemID, 8, 4, 4);
369     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemWidth, 12, 4, 4);
370     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemHeight, 16, 4, 4);
371     TEST_FIELD(MEASUREITEMSTRUCT, DWORD, itemData, 20, 4, 4);
372
373     /* MENUINFO (pack 4) */
374     TEST_TYPE(MENUINFO, 28, 4);
375     TEST_FIELD(MENUINFO, DWORD, cbSize, 0, 4, 4);
376     TEST_FIELD(MENUINFO, DWORD, fMask, 4, 4, 4);
377     TEST_FIELD(MENUINFO, DWORD, dwStyle, 8, 4, 4);
378     TEST_FIELD(MENUINFO, UINT, cyMax, 12, 4, 4);
379     TEST_FIELD(MENUINFO, HBRUSH, hbrBack, 16, 4, 4);
380     TEST_FIELD(MENUINFO, DWORD, dwContextHelpID, 20, 4, 4);
381     TEST_FIELD(MENUINFO, DWORD, dwMenuData, 24, 4, 4);
382
383     /* MENUITEMINFOA (pack 4) */
384     TEST_TYPE(MENUITEMINFOA, 48, 4);
385     TEST_FIELD(MENUITEMINFOA, UINT, cbSize, 0, 4, 4);
386     TEST_FIELD(MENUITEMINFOA, UINT, fMask, 4, 4, 4);
387     TEST_FIELD(MENUITEMINFOA, UINT, fType, 8, 4, 4);
388     TEST_FIELD(MENUITEMINFOA, UINT, fState, 12, 4, 4);
389     TEST_FIELD(MENUITEMINFOA, UINT, wID, 16, 4, 4);
390     TEST_FIELD(MENUITEMINFOA, HMENU, hSubMenu, 20, 4, 4);
391     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpChecked, 24, 4, 4);
392     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpUnchecked, 28, 4, 4);
393     TEST_FIELD(MENUITEMINFOA, DWORD, dwItemData, 32, 4, 4);
394     TEST_FIELD(MENUITEMINFOA, LPSTR, dwTypeData, 36, 4, 4);
395     TEST_FIELD(MENUITEMINFOA, UINT, cch, 40, 4, 4);
396     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpItem, 44, 4, 4);
397
398     /* MENUITEMINFOW (pack 4) */
399     TEST_TYPE(MENUITEMINFOW, 48, 4);
400     TEST_FIELD(MENUITEMINFOW, UINT, cbSize, 0, 4, 4);
401     TEST_FIELD(MENUITEMINFOW, UINT, fMask, 4, 4, 4);
402     TEST_FIELD(MENUITEMINFOW, UINT, fType, 8, 4, 4);
403     TEST_FIELD(MENUITEMINFOW, UINT, fState, 12, 4, 4);
404     TEST_FIELD(MENUITEMINFOW, UINT, wID, 16, 4, 4);
405     TEST_FIELD(MENUITEMINFOW, HMENU, hSubMenu, 20, 4, 4);
406     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpChecked, 24, 4, 4);
407     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpUnchecked, 28, 4, 4);
408     TEST_FIELD(MENUITEMINFOW, DWORD, dwItemData, 32, 4, 4);
409     TEST_FIELD(MENUITEMINFOW, LPWSTR, dwTypeData, 36, 4, 4);
410     TEST_FIELD(MENUITEMINFOW, UINT, cch, 40, 4, 4);
411     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpItem, 44, 4, 4);
412
413     /* MENUITEMTEMPLATE (pack 4) */
414     TEST_TYPE(MENUITEMTEMPLATE, 6, 2);
415     TEST_FIELD(MENUITEMTEMPLATE, WORD, mtOption, 0, 2, 2);
416     TEST_FIELD(MENUITEMTEMPLATE, WORD, mtID, 2, 2, 2);
417     TEST_FIELD(MENUITEMTEMPLATE, WCHAR[1], mtString, 4, 2, 2);
418
419     /* MENUITEMTEMPLATEHEADER (pack 4) */
420     TEST_TYPE(MENUITEMTEMPLATEHEADER, 4, 2);
421     TEST_FIELD(MENUITEMTEMPLATEHEADER, WORD, versionNumber, 0, 2, 2);
422     TEST_FIELD(MENUITEMTEMPLATEHEADER, WORD, offset, 2, 2, 2);
423
424     /* MINIMIZEDMETRICS (pack 4) */
425     TEST_TYPE(MINIMIZEDMETRICS, 20, 4);
426     TEST_FIELD(MINIMIZEDMETRICS, UINT, cbSize, 0, 4, 4);
427     TEST_FIELD(MINIMIZEDMETRICS, int, iWidth, 4, 4, 4);
428     TEST_FIELD(MINIMIZEDMETRICS, int, iHorzGap, 8, 4, 4);
429     TEST_FIELD(MINIMIZEDMETRICS, int, iVertGap, 12, 4, 4);
430     TEST_FIELD(MINIMIZEDMETRICS, int, iArrange, 16, 4, 4);
431
432     /* MINMAXINFO (pack 4) */
433     TEST_TYPE(MINMAXINFO, 40, 4);
434     TEST_FIELD(MINMAXINFO, POINT, ptReserved, 0, 8, 4);
435     TEST_FIELD(MINMAXINFO, POINT, ptMaxSize, 8, 8, 4);
436     TEST_FIELD(MINMAXINFO, POINT, ptMaxPosition, 16, 8, 4);
437     TEST_FIELD(MINMAXINFO, POINT, ptMinTrackSize, 24, 8, 4);
438     TEST_FIELD(MINMAXINFO, POINT, ptMaxTrackSize, 32, 8, 4);
439
440     /* MONITORINFO (pack 4) */
441     TEST_TYPE(MONITORINFO, 40, 4);
442     TEST_FIELD(MONITORINFO, DWORD, cbSize, 0, 4, 4);
443     TEST_FIELD(MONITORINFO, RECT, rcMonitor, 4, 16, 4);
444     TEST_FIELD(MONITORINFO, RECT, rcWork, 20, 16, 4);
445     TEST_FIELD(MONITORINFO, DWORD, dwFlags, 36, 4, 4);
446
447     /* MONITORINFOEXA (pack 4) */
448     TEST_TYPE(MONITORINFOEXA, 72, 4);
449     TEST_FIELD(MONITORINFOEXA, MONITORINFO, dummy, 0, 40, 4);
450     TEST_FIELD(MONITORINFOEXA, CHAR[CCHDEVICENAME], szDevice, 40, 32, 1);
451
452     /* MONITORINFOEXW (pack 4) */
453     TEST_TYPE(MONITORINFOEXW, 104, 4);
454     TEST_FIELD(MONITORINFOEXW, MONITORINFO, dummy, 0, 40, 4);
455     TEST_FIELD(MONITORINFOEXW, WCHAR[CCHDEVICENAME], szDevice, 40, 64, 2);
456
457     /* MOUSEHOOKSTRUCT (pack 4) */
458     TEST_TYPE(MOUSEHOOKSTRUCT, 20, 4);
459     TEST_FIELD(MOUSEHOOKSTRUCT, POINT, pt, 0, 8, 4);
460     TEST_FIELD(MOUSEHOOKSTRUCT, HWND, hwnd, 8, 4, 4);
461     TEST_FIELD(MOUSEHOOKSTRUCT, UINT, wHitTestCode, 12, 4, 4);
462     TEST_FIELD(MOUSEHOOKSTRUCT, DWORD, dwExtraInfo, 16, 4, 4);
463
464     /* MOUSEINPUT (pack 4) */
465     TEST_TYPE(MOUSEINPUT, 24, 4);
466     TEST_FIELD(MOUSEINPUT, LONG, dx, 0, 4, 4);
467     TEST_FIELD(MOUSEINPUT, LONG, dy, 4, 4, 4);
468     TEST_FIELD(MOUSEINPUT, DWORD, mouseData, 8, 4, 4);
469     TEST_FIELD(MOUSEINPUT, DWORD, dwFlags, 12, 4, 4);
470     TEST_FIELD(MOUSEINPUT, DWORD, time, 16, 4, 4);
471     TEST_FIELD(MOUSEINPUT, ULONG_PTR, dwExtraInfo, 20, 4, 4);
472
473     /* MOUSEKEYS (pack 4) */
474     TEST_TYPE(MOUSEKEYS, 28, 4);
475     TEST_FIELD(MOUSEKEYS, UINT, cbSize, 0, 4, 4);
476     TEST_FIELD(MOUSEKEYS, DWORD, dwFlags, 4, 4, 4);
477     TEST_FIELD(MOUSEKEYS, DWORD, iMaxSpeed, 8, 4, 4);
478     TEST_FIELD(MOUSEKEYS, DWORD, iTimeToMaxSpeed, 12, 4, 4);
479     TEST_FIELD(MOUSEKEYS, DWORD, iCtrlSpeed, 16, 4, 4);
480     TEST_FIELD(MOUSEKEYS, DWORD, dwReserved1, 20, 4, 4);
481     TEST_FIELD(MOUSEKEYS, DWORD, dwReserved2, 24, 4, 4);
482
483     /* MSG (pack 4) */
484     TEST_TYPE(MSG, 28, 4);
485     TEST_FIELD(MSG, HWND, hwnd, 0, 4, 4);
486     TEST_FIELD(MSG, UINT, message, 4, 4, 4);
487     TEST_FIELD(MSG, WPARAM, wParam, 8, 4, 4);
488     TEST_FIELD(MSG, LPARAM, lParam, 12, 4, 4);
489     TEST_FIELD(MSG, DWORD, time, 16, 4, 4);
490     TEST_FIELD(MSG, POINT, pt, 20, 8, 4);
491
492     /* MSGBOXPARAMSA (pack 4) */
493     TEST_TYPE(MSGBOXPARAMSA, 40, 4);
494     TEST_FIELD(MSGBOXPARAMSA, UINT, cbSize, 0, 4, 4);
495     TEST_FIELD(MSGBOXPARAMSA, HWND, hwndOwner, 4, 4, 4);
496     TEST_FIELD(MSGBOXPARAMSA, HINSTANCE, hInstance, 8, 4, 4);
497     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszText, 12, 4, 4);
498     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszCaption, 16, 4, 4);
499     TEST_FIELD(MSGBOXPARAMSA, DWORD, dwStyle, 20, 4, 4);
500     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszIcon, 24, 4, 4);
501     TEST_FIELD(MSGBOXPARAMSA, DWORD, dwContextHelpId, 28, 4, 4);
502     TEST_FIELD(MSGBOXPARAMSA, MSGBOXCALLBACK, lpfnMsgBoxCallback, 32, 4, 4);
503     TEST_FIELD(MSGBOXPARAMSA, DWORD, dwLanguageId, 36, 4, 4);
504
505     /* MSGBOXPARAMSW (pack 4) */
506     TEST_TYPE(MSGBOXPARAMSW, 40, 4);
507     TEST_FIELD(MSGBOXPARAMSW, UINT, cbSize, 0, 4, 4);
508     TEST_FIELD(MSGBOXPARAMSW, HWND, hwndOwner, 4, 4, 4);
509     TEST_FIELD(MSGBOXPARAMSW, HINSTANCE, hInstance, 8, 4, 4);
510     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszText, 12, 4, 4);
511     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszCaption, 16, 4, 4);
512     TEST_FIELD(MSGBOXPARAMSW, DWORD, dwStyle, 20, 4, 4);
513     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszIcon, 24, 4, 4);
514     TEST_FIELD(MSGBOXPARAMSW, DWORD, dwContextHelpId, 28, 4, 4);
515     TEST_FIELD(MSGBOXPARAMSW, MSGBOXCALLBACK, lpfnMsgBoxCallback, 32, 4, 4);
516     TEST_FIELD(MSGBOXPARAMSW, DWORD, dwLanguageId, 36, 4, 4);
517
518     /* MSLLHOOKSTRUCT (pack 4) */
519     TEST_TYPE(MSLLHOOKSTRUCT, 24, 4);
520     TEST_FIELD(MSLLHOOKSTRUCT, POINT, pt, 0, 8, 4);
521     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, mouseData, 8, 4, 4);
522     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, flags, 12, 4, 4);
523     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, time, 16, 4, 4);
524     TEST_FIELD(MSLLHOOKSTRUCT, ULONG_PTR, dwExtraInfo, 20, 4, 4);
525
526     /* MULTIKEYHELPA (pack 4) */
527     TEST_TYPE(MULTIKEYHELPA, 8, 4);
528     TEST_FIELD(MULTIKEYHELPA, DWORD, mkSize, 0, 4, 4);
529     TEST_FIELD(MULTIKEYHELPA, CHAR, mkKeyList, 4, 1, 1);
530     TEST_FIELD(MULTIKEYHELPA, CHAR[1], szKeyphrase, 5, 1, 1);
531
532     /* MULTIKEYHELPW (pack 4) */
533     TEST_TYPE(MULTIKEYHELPW, 8, 4);
534     TEST_FIELD(MULTIKEYHELPW, DWORD, mkSize, 0, 4, 4);
535     TEST_FIELD(MULTIKEYHELPW, WCHAR, mkKeyList, 4, 2, 2);
536     TEST_FIELD(MULTIKEYHELPW, WCHAR[1], szKeyphrase, 6, 2, 2);
537
538     /* NCCALCSIZE_PARAMS (pack 4) */
539     TEST_TYPE(NCCALCSIZE_PARAMS, 52, 4);
540     TEST_FIELD(NCCALCSIZE_PARAMS, RECT[3], rgrc, 0, 48, 4);
541     TEST_FIELD(NCCALCSIZE_PARAMS, WINDOWPOS *, lppos, 48, 4, 4);
542
543     /* NMHDR (pack 4) */
544     TEST_TYPE(NMHDR, 12, 4);
545     TEST_FIELD(NMHDR, HWND, hwndFrom, 0, 4, 4);
546     TEST_FIELD(NMHDR, UINT, idFrom, 4, 4, 4);
547     TEST_FIELD(NMHDR, UINT, code, 8, 4, 4);
548
549     /* NONCLIENTMETRICSA (pack 4) */
550     TEST_TYPE(NONCLIENTMETRICSA, 340, 4);
551     TEST_FIELD(NONCLIENTMETRICSA, UINT, cbSize, 0, 4, 4);
552     TEST_FIELD(NONCLIENTMETRICSA, INT, iBorderWidth, 4, 4, 4);
553     TEST_FIELD(NONCLIENTMETRICSA, INT, iScrollWidth, 8, 4, 4);
554     TEST_FIELD(NONCLIENTMETRICSA, INT, iScrollHeight, 12, 4, 4);
555     TEST_FIELD(NONCLIENTMETRICSA, INT, iCaptionWidth, 16, 4, 4);
556     TEST_FIELD(NONCLIENTMETRICSA, INT, iCaptionHeight, 20, 4, 4);
557     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfCaptionFont, 24, 60, 4);
558     TEST_FIELD(NONCLIENTMETRICSA, INT, iSmCaptionWidth, 84, 4, 4);
559     TEST_FIELD(NONCLIENTMETRICSA, INT, iSmCaptionHeight, 88, 4, 4);
560     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfSmCaptionFont, 92, 60, 4);
561     TEST_FIELD(NONCLIENTMETRICSA, INT, iMenuWidth, 152, 4, 4);
562     TEST_FIELD(NONCLIENTMETRICSA, INT, iMenuHeight, 156, 4, 4);
563     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfMenuFont, 160, 60, 4);
564     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfStatusFont, 220, 60, 4);
565     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfMessageFont, 280, 60, 4);
566
567     /* NONCLIENTMETRICSW (pack 4) */
568     TEST_TYPE(NONCLIENTMETRICSW, 500, 4);
569     TEST_FIELD(NONCLIENTMETRICSW, UINT, cbSize, 0, 4, 4);
570     TEST_FIELD(NONCLIENTMETRICSW, INT, iBorderWidth, 4, 4, 4);
571     TEST_FIELD(NONCLIENTMETRICSW, INT, iScrollWidth, 8, 4, 4);
572     TEST_FIELD(NONCLIENTMETRICSW, INT, iScrollHeight, 12, 4, 4);
573     TEST_FIELD(NONCLIENTMETRICSW, INT, iCaptionWidth, 16, 4, 4);
574     TEST_FIELD(NONCLIENTMETRICSW, INT, iCaptionHeight, 20, 4, 4);
575     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfCaptionFont, 24, 92, 4);
576     TEST_FIELD(NONCLIENTMETRICSW, INT, iSmCaptionWidth, 116, 4, 4);
577     TEST_FIELD(NONCLIENTMETRICSW, INT, iSmCaptionHeight, 120, 4, 4);
578     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfSmCaptionFont, 124, 92, 4);
579     TEST_FIELD(NONCLIENTMETRICSW, INT, iMenuWidth, 216, 4, 4);
580     TEST_FIELD(NONCLIENTMETRICSW, INT, iMenuHeight, 220, 4, 4);
581     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfMenuFont, 224, 92, 4);
582     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfStatusFont, 316, 92, 4);
583     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfMessageFont, 408, 92, 4);
584
585     /* PAINTSTRUCT (pack 4) */
586     TEST_TYPE(PAINTSTRUCT, 64, 4);
587     TEST_FIELD(PAINTSTRUCT, HDC, hdc, 0, 4, 4);
588     TEST_FIELD(PAINTSTRUCT, BOOL, fErase, 4, 4, 4);
589     TEST_FIELD(PAINTSTRUCT, RECT, rcPaint, 8, 16, 4);
590     TEST_FIELD(PAINTSTRUCT, BOOL, fRestore, 24, 4, 4);
591     TEST_FIELD(PAINTSTRUCT, BOOL, fIncUpdate, 28, 4, 4);
592     TEST_FIELD(PAINTSTRUCT, BYTE[32], rgbReserved, 32, 32, 1);
593
594     /* SCROLLINFO (pack 4) */
595     TEST_TYPE(SCROLLINFO, 28, 4);
596     TEST_FIELD(SCROLLINFO, UINT, cbSize, 0, 4, 4);
597     TEST_FIELD(SCROLLINFO, UINT, fMask, 4, 4, 4);
598     TEST_FIELD(SCROLLINFO, INT, nMin, 8, 4, 4);
599     TEST_FIELD(SCROLLINFO, INT, nMax, 12, 4, 4);
600     TEST_FIELD(SCROLLINFO, UINT, nPage, 16, 4, 4);
601     TEST_FIELD(SCROLLINFO, INT, nPos, 20, 4, 4);
602     TEST_FIELD(SCROLLINFO, INT, nTrackPos, 24, 4, 4);
603
604     /* SERIALKEYSA (pack 4) */
605     TEST_TYPE(SERIALKEYSA, 28, 4);
606     TEST_FIELD(SERIALKEYSA, UINT, cbSize, 0, 4, 4);
607     TEST_FIELD(SERIALKEYSA, DWORD, dwFlags, 4, 4, 4);
608     TEST_FIELD(SERIALKEYSA, LPSTR, lpszActivePort, 8, 4, 4);
609     TEST_FIELD(SERIALKEYSA, LPSTR, lpszPort, 12, 4, 4);
610     TEST_FIELD(SERIALKEYSA, UINT, iBaudRate, 16, 4, 4);
611     TEST_FIELD(SERIALKEYSA, UINT, iPortState, 20, 4, 4);
612     TEST_FIELD(SERIALKEYSA, UINT, iActive, 24, 4, 4);
613
614     /* SERIALKEYSW (pack 4) */
615     TEST_TYPE(SERIALKEYSW, 28, 4);
616     TEST_FIELD(SERIALKEYSW, UINT, cbSize, 0, 4, 4);
617     TEST_FIELD(SERIALKEYSW, DWORD, dwFlags, 4, 4, 4);
618     TEST_FIELD(SERIALKEYSW, LPWSTR, lpszActivePort, 8, 4, 4);
619     TEST_FIELD(SERIALKEYSW, LPWSTR, lpszPort, 12, 4, 4);
620     TEST_FIELD(SERIALKEYSW, UINT, iBaudRate, 16, 4, 4);
621     TEST_FIELD(SERIALKEYSW, UINT, iPortState, 20, 4, 4);
622     TEST_FIELD(SERIALKEYSW, UINT, iActive, 24, 4, 4);
623
624     /* SOUNDSENTRYA (pack 4) */
625     TEST_TYPE(SOUNDSENTRYA, 48, 4);
626     TEST_FIELD(SOUNDSENTRYA, UINT, cbSize, 0, 4, 4);
627     TEST_FIELD(SOUNDSENTRYA, DWORD, dwFlags, 4, 4, 4);
628     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffect, 8, 4, 4);
629     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffectMSec, 12, 4, 4);
630     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffectColorBits, 16, 4, 4);
631     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffect, 20, 4, 4);
632     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffectMSec, 24, 4, 4);
633     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffectColor, 28, 4, 4);
634     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffect, 32, 4, 4);
635     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffectMSec, 36, 4, 4);
636     TEST_FIELD(SOUNDSENTRYA, LPSTR, lpszWindowsEffectDLL, 40, 4, 4);
637     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffectOrdinal, 44, 4, 4);
638
639     /* SOUNDSENTRYW (pack 4) */
640     TEST_TYPE(SOUNDSENTRYW, 48, 4);
641     TEST_FIELD(SOUNDSENTRYW, UINT, cbSize, 0, 4, 4);
642     TEST_FIELD(SOUNDSENTRYW, DWORD, dwFlags, 4, 4, 4);
643     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffect, 8, 4, 4);
644     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffectMSec, 12, 4, 4);
645     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffectColorBits, 16, 4, 4);
646     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffect, 20, 4, 4);
647     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffectMSec, 24, 4, 4);
648     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffectColor, 28, 4, 4);
649     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffect, 32, 4, 4);
650     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffectMSec, 36, 4, 4);
651     TEST_FIELD(SOUNDSENTRYW, LPWSTR, lpszWindowsEffectDLL, 40, 4, 4);
652     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffectOrdinal, 44, 4, 4);
653
654     /* STICKYKEYS (pack 4) */
655     TEST_TYPE(STICKYKEYS, 8, 4);
656     TEST_FIELD(STICKYKEYS, DWORD, cbSize, 0, 4, 4);
657     TEST_FIELD(STICKYKEYS, DWORD, dwFlags, 4, 4, 4);
658
659     /* STYLESTRUCT (pack 4) */
660     TEST_TYPE(STYLESTRUCT, 8, 4);
661     TEST_FIELD(STYLESTRUCT, DWORD, styleOld, 0, 4, 4);
662     TEST_FIELD(STYLESTRUCT, DWORD, styleNew, 4, 4, 4);
663
664     /* TOGGLEKEYS (pack 4) */
665     TEST_TYPE(TOGGLEKEYS, 8, 4);
666     TEST_FIELD(TOGGLEKEYS, DWORD, cbSize, 0, 4, 4);
667     TEST_FIELD(TOGGLEKEYS, DWORD, dwFlags, 4, 4, 4);
668
669     /* TPMPARAMS (pack 4) */
670     TEST_TYPE(TPMPARAMS, 20, 4);
671     TEST_FIELD(TPMPARAMS, UINT, cbSize, 0, 4, 4);
672     TEST_FIELD(TPMPARAMS, RECT, rcExclude, 4, 16, 4);
673
674     /* TRACKMOUSEEVENT (pack 4) */
675     TEST_TYPE(TRACKMOUSEEVENT, 16, 4);
676     TEST_FIELD(TRACKMOUSEEVENT, DWORD, cbSize, 0, 4, 4);
677     TEST_FIELD(TRACKMOUSEEVENT, DWORD, dwFlags, 4, 4, 4);
678     TEST_FIELD(TRACKMOUSEEVENT, HWND, hwndTrack, 8, 4, 4);
679     TEST_FIELD(TRACKMOUSEEVENT, DWORD, dwHoverTime, 12, 4, 4);
680
681     /* WINDOWINFO (pack 4) */
682     TEST_TYPE(WINDOWINFO, 60, 4);
683     TEST_FIELD(WINDOWINFO, DWORD, cbSize, 0, 4, 4);
684     TEST_FIELD(WINDOWINFO, RECT, rcWindow, 4, 16, 4);
685     TEST_FIELD(WINDOWINFO, RECT, rcClient, 20, 16, 4);
686     TEST_FIELD(WINDOWINFO, DWORD, dwStyle, 36, 4, 4);
687     TEST_FIELD(WINDOWINFO, DWORD, dwExStyle, 40, 4, 4);
688     TEST_FIELD(WINDOWINFO, DWORD, dwWindowStatus, 44, 4, 4);
689     TEST_FIELD(WINDOWINFO, UINT, cxWindowBorders, 48, 4, 4);
690     TEST_FIELD(WINDOWINFO, UINT, cyWindowBorders, 52, 4, 4);
691     TEST_FIELD(WINDOWINFO, ATOM, atomWindowType, 56, 2, 2);
692     TEST_FIELD(WINDOWINFO, WORD, wCreatorVersion, 58, 2, 2);
693
694     /* WINDOWPOS (pack 4) */
695     TEST_TYPE(WINDOWPOS, 28, 4);
696     TEST_FIELD(WINDOWPOS, HWND, hwnd, 0, 4, 4);
697     TEST_FIELD(WINDOWPOS, HWND, hwndInsertAfter, 4, 4, 4);
698     TEST_FIELD(WINDOWPOS, INT, x, 8, 4, 4);
699     TEST_FIELD(WINDOWPOS, INT, y, 12, 4, 4);
700     TEST_FIELD(WINDOWPOS, INT, cx, 16, 4, 4);
701     TEST_FIELD(WINDOWPOS, INT, cy, 20, 4, 4);
702     TEST_FIELD(WINDOWPOS, UINT, flags, 24, 4, 4);
703
704     /* WNDCLASSA (pack 4) */
705     TEST_TYPE(WNDCLASSA, 40, 4);
706     TEST_FIELD(WNDCLASSA, UINT, style, 0, 4, 4);
707     TEST_FIELD(WNDCLASSA, WNDPROC, lpfnWndProc, 4, 4, 4);
708     TEST_FIELD(WNDCLASSA, INT, cbClsExtra, 8, 4, 4);
709     TEST_FIELD(WNDCLASSA, INT, cbWndExtra, 12, 4, 4);
710     TEST_FIELD(WNDCLASSA, HINSTANCE, hInstance, 16, 4, 4);
711     TEST_FIELD(WNDCLASSA, HICON, hIcon, 20, 4, 4);
712     TEST_FIELD(WNDCLASSA, HCURSOR, hCursor, 24, 4, 4);
713     TEST_FIELD(WNDCLASSA, HBRUSH, hbrBackground, 28, 4, 4);
714     TEST_FIELD(WNDCLASSA, LPCSTR, lpszMenuName, 32, 4, 4);
715     TEST_FIELD(WNDCLASSA, LPCSTR, lpszClassName, 36, 4, 4);
716
717     /* WNDCLASSEXA (pack 4) */
718     TEST_TYPE(WNDCLASSEXA, 48, 4);
719     TEST_FIELD(WNDCLASSEXA, UINT, cbSize, 0, 4, 4);
720     TEST_FIELD(WNDCLASSEXA, UINT, style, 4, 4, 4);
721     TEST_FIELD(WNDCLASSEXA, WNDPROC, lpfnWndProc, 8, 4, 4);
722     TEST_FIELD(WNDCLASSEXA, INT, cbClsExtra, 12, 4, 4);
723     TEST_FIELD(WNDCLASSEXA, INT, cbWndExtra, 16, 4, 4);
724     TEST_FIELD(WNDCLASSEXA, HINSTANCE, hInstance, 20, 4, 4);
725     TEST_FIELD(WNDCLASSEXA, HICON, hIcon, 24, 4, 4);
726     TEST_FIELD(WNDCLASSEXA, HCURSOR, hCursor, 28, 4, 4);
727     TEST_FIELD(WNDCLASSEXA, HBRUSH, hbrBackground, 32, 4, 4);
728     TEST_FIELD(WNDCLASSEXA, LPCSTR, lpszMenuName, 36, 4, 4);
729     TEST_FIELD(WNDCLASSEXA, LPCSTR, lpszClassName, 40, 4, 4);
730     TEST_FIELD(WNDCLASSEXA, HICON, hIconSm, 44, 4, 4);
731
732     /* WNDCLASSEXW (pack 4) */
733     TEST_TYPE(WNDCLASSEXW, 48, 4);
734     TEST_FIELD(WNDCLASSEXW, UINT, cbSize, 0, 4, 4);
735     TEST_FIELD(WNDCLASSEXW, UINT, style, 4, 4, 4);
736     TEST_FIELD(WNDCLASSEXW, WNDPROC, lpfnWndProc, 8, 4, 4);
737     TEST_FIELD(WNDCLASSEXW, INT, cbClsExtra, 12, 4, 4);
738     TEST_FIELD(WNDCLASSEXW, INT, cbWndExtra, 16, 4, 4);
739     TEST_FIELD(WNDCLASSEXW, HINSTANCE, hInstance, 20, 4, 4);
740     TEST_FIELD(WNDCLASSEXW, HICON, hIcon, 24, 4, 4);
741     TEST_FIELD(WNDCLASSEXW, HCURSOR, hCursor, 28, 4, 4);
742     TEST_FIELD(WNDCLASSEXW, HBRUSH, hbrBackground, 32, 4, 4);
743     TEST_FIELD(WNDCLASSEXW, LPCWSTR, lpszMenuName, 36, 4, 4);
744     TEST_FIELD(WNDCLASSEXW, LPCWSTR, lpszClassName, 40, 4, 4);
745     TEST_FIELD(WNDCLASSEXW, HICON, hIconSm, 44, 4, 4);
746
747     /* WNDCLASSW (pack 4) */
748     TEST_TYPE(WNDCLASSW, 40, 4);
749     TEST_FIELD(WNDCLASSW, UINT, style, 0, 4, 4);
750     TEST_FIELD(WNDCLASSW, WNDPROC, lpfnWndProc, 4, 4, 4);
751     TEST_FIELD(WNDCLASSW, INT, cbClsExtra, 8, 4, 4);
752     TEST_FIELD(WNDCLASSW, INT, cbWndExtra, 12, 4, 4);
753     TEST_FIELD(WNDCLASSW, HINSTANCE, hInstance, 16, 4, 4);
754     TEST_FIELD(WNDCLASSW, HICON, hIcon, 20, 4, 4);
755     TEST_FIELD(WNDCLASSW, HCURSOR, hCursor, 24, 4, 4);
756     TEST_FIELD(WNDCLASSW, HBRUSH, hbrBackground, 28, 4, 4);
757     TEST_FIELD(WNDCLASSW, LPCWSTR, lpszMenuName, 32, 4, 4);
758     TEST_FIELD(WNDCLASSW, LPCWSTR, lpszClassName, 36, 4, 4);
759
760 }
761
762 START_TEST(generated)
763 {
764     test_pack();
765 }