Added support for alternate data formats.
[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 #define WINVER 0x0501
9 #define _WIN32_IE 0x0501
10 #define _WIN32_WINNT 0x0501
11
12 #define WINE_NOWINSOCK
13
14 #include "windows.h"
15
16 #include "wine/test.h"
17
18 /***********************************************************************
19  * Compability macros
20  */
21
22 #define DWORD_PTR UINT_PTR
23 #define LONG_PTR INT_PTR
24 #define ULONG_PTR UINT_PTR
25
26 /***********************************************************************
27  * Windows API extension
28  */
29
30 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
31 # define FIELD_ALIGNMENT(type, field) __alignof(((type*)0)->field)
32 #elif defined(__GNUC__)
33 # define FIELD_ALIGNMENT(type, field) __alignof__(((type*)0)->field)
34 #else
35 /* FIXME: Not sure if is possible to do without compiler extension */
36 #endif
37
38 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
39 # define _TYPE_ALIGNMENT(type) __alignof(type)
40 #elif defined(__GNUC__)
41 # define _TYPE_ALIGNMENT(type) __alignof__(type)
42 #else
43 /*
44  * FIXME: Not sure if is possible to do without compiler extension
45  *        (if type is not just a name that is, if so the normal)
46  *         TYPE_ALIGNMENT can be used)
47  */
48 #endif
49
50 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
51 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
52 #endif
53
54 /***********************************************************************
55  * Test helper macros
56  */
57
58 #ifdef FIELD_ALIGNMENT
59 # define TEST_FIELD_ALIGNMENT(type, field, align) \
60    ok(FIELD_ALIGNMENT(type, field) == align, \
61        "FIELD_ALIGNMENT(" #type ", " #field ") == %d (expected " #align ")\n", \
62            FIELD_ALIGNMENT(type, field))
63 #else
64 # define TEST_FIELD_ALIGNMENT(type, field, align) do { } while (0)
65 #endif
66
67 #define TEST_FIELD_OFFSET(type, field, offset) \
68     ok(FIELD_OFFSET(type, field) == offset, \
69         "FIELD_OFFSET(" #type ", " #field ") == %ld (expected " #offset ")\n", \
70              FIELD_OFFSET(type, field))
71
72 #ifdef _TYPE_ALIGNMENT
73 #define TEST__TYPE_ALIGNMENT(type, align) \
74     ok(_TYPE_ALIGNMENT(type) == align, "TYPE_ALIGNMENT(" #type ") == %d (expected " #align ")\n", _TYPE_ALIGNMENT(type))
75 #else
76 # define TEST__TYPE_ALIGNMENT(type, align) do { } while (0)
77 #endif
78
79 #ifdef TYPE_ALIGNMENT
80 #define TEST_TYPE_ALIGNMENT(type, align) \
81     ok(TYPE_ALIGNMENT(type) == align, "TYPE_ALIGNMENT(" #type ") == %d (expected " #align ")\n", TYPE_ALIGNMENT(type))
82 #else
83 # define TEST_TYPE_ALIGNMENT(type, align) do { } while (0)
84 #endif
85
86 #define TEST_TYPE_SIZE(type, size) \
87     ok(sizeof(type) == size, "sizeof(" #type ") == %d (expected " #size ")\n", sizeof(type))
88
89 /***********************************************************************
90  * Test macros
91  */
92
93 #define TEST_FIELD(type, field_type, field_name, field_offset, field_size, field_align) \
94   TEST_TYPE_SIZE(field_type, field_size); \
95   TEST_FIELD_ALIGNMENT(type, field_name, field_align); \
96   TEST_FIELD_OFFSET(type, field_name, field_offset); \
97
98 #define TEST_TYPE(type, size, align) \
99   TEST_TYPE_ALIGNMENT(type, align); \
100   TEST_TYPE_SIZE(type, size)
101
102 #define TEST_TYPE_POINTER(type, size, align) \
103     TEST__TYPE_ALIGNMENT(*(type)0, align); \
104     TEST_TYPE_SIZE(*(type)0, size)
105
106 #define TEST_TYPE_SIGNED(type) \
107     ok((type) -1 < 0, "(" #type ") -1 < 0\n");
108
109 #define TEST_TYPE_UNSIGNED(type) \
110      ok((type) -1 > 0, "(" #type ") -1 > 0\n");
111
112 static void test_pack_ACCEL(void)
113 {
114     /* ACCEL (pack 4) */
115     TEST_TYPE(ACCEL, 6, 2);
116     TEST_FIELD(ACCEL, BYTE, fVirt, 0, 1, 1);
117     TEST_FIELD(ACCEL, WORD, key, 2, 2, 2);
118     TEST_FIELD(ACCEL, WORD, cmd, 4, 2, 2);
119 }
120
121 static void test_pack_ACCESSTIMEOUT(void)
122 {
123     /* ACCESSTIMEOUT (pack 4) */
124     TEST_TYPE(ACCESSTIMEOUT, 12, 4);
125     TEST_FIELD(ACCESSTIMEOUT, UINT, cbSize, 0, 4, 4);
126     TEST_FIELD(ACCESSTIMEOUT, DWORD, dwFlags, 4, 4, 4);
127     TEST_FIELD(ACCESSTIMEOUT, DWORD, iTimeOutMSec, 8, 4, 4);
128 }
129
130 static void test_pack_ANIMATIONINFO(void)
131 {
132     /* ANIMATIONINFO (pack 4) */
133     TEST_TYPE(ANIMATIONINFO, 8, 4);
134     TEST_FIELD(ANIMATIONINFO, UINT, cbSize, 0, 4, 4);
135     TEST_FIELD(ANIMATIONINFO, INT, iMinAnimate, 4, 4, 4);
136 }
137
138 static void test_pack_CBTACTIVATESTRUCT(void)
139 {
140     /* CBTACTIVATESTRUCT (pack 4) */
141     TEST_TYPE(CBTACTIVATESTRUCT, 8, 4);
142     TEST_FIELD(CBTACTIVATESTRUCT, BOOL, fMouse, 0, 4, 4);
143     TEST_FIELD(CBTACTIVATESTRUCT, HWND, hWndActive, 4, 4, 4);
144 }
145
146 static void test_pack_CBT_CREATEWNDA(void)
147 {
148     /* CBT_CREATEWNDA (pack 4) */
149     TEST_TYPE(CBT_CREATEWNDA, 8, 4);
150     TEST_FIELD(CBT_CREATEWNDA, CREATESTRUCTA *, lpcs, 0, 4, 4);
151     TEST_FIELD(CBT_CREATEWNDA, HWND, hwndInsertAfter, 4, 4, 4);
152 }
153
154 static void test_pack_CBT_CREATEWNDW(void)
155 {
156     /* CBT_CREATEWNDW (pack 4) */
157     TEST_TYPE(CBT_CREATEWNDW, 8, 4);
158     TEST_FIELD(CBT_CREATEWNDW, CREATESTRUCTW *, lpcs, 0, 4, 4);
159     TEST_FIELD(CBT_CREATEWNDW, HWND, hwndInsertAfter, 4, 4, 4);
160 }
161
162 static void test_pack_CLIENTCREATESTRUCT(void)
163 {
164     /* CLIENTCREATESTRUCT (pack 4) */
165     TEST_TYPE(CLIENTCREATESTRUCT, 8, 4);
166     TEST_FIELD(CLIENTCREATESTRUCT, HMENU, hWindowMenu, 0, 4, 4);
167     TEST_FIELD(CLIENTCREATESTRUCT, UINT, idFirstChild, 4, 4, 4);
168 }
169
170 static void test_pack_COMBOBOXINFO(void)
171 {
172     /* COMBOBOXINFO (pack 4) */
173     TEST_TYPE(COMBOBOXINFO, 52, 4);
174     TEST_FIELD(COMBOBOXINFO, DWORD, cbSize, 0, 4, 4);
175     TEST_FIELD(COMBOBOXINFO, RECT, rcItem, 4, 16, 4);
176     TEST_FIELD(COMBOBOXINFO, RECT, rcButton, 20, 16, 4);
177     TEST_FIELD(COMBOBOXINFO, DWORD, stateButton, 36, 4, 4);
178     TEST_FIELD(COMBOBOXINFO, HWND, hwndCombo, 40, 4, 4);
179     TEST_FIELD(COMBOBOXINFO, HWND, hwndItem, 44, 4, 4);
180     TEST_FIELD(COMBOBOXINFO, HWND, hwndList, 48, 4, 4);
181 }
182
183 static void test_pack_COMPAREITEMSTRUCT(void)
184 {
185     /* COMPAREITEMSTRUCT (pack 4) */
186     TEST_TYPE(COMPAREITEMSTRUCT, 32, 4);
187     TEST_FIELD(COMPAREITEMSTRUCT, UINT, CtlType, 0, 4, 4);
188     TEST_FIELD(COMPAREITEMSTRUCT, UINT, CtlID, 4, 4, 4);
189     TEST_FIELD(COMPAREITEMSTRUCT, HWND, hwndItem, 8, 4, 4);
190     TEST_FIELD(COMPAREITEMSTRUCT, UINT, itemID1, 12, 4, 4);
191     TEST_FIELD(COMPAREITEMSTRUCT, ULONG_PTR, itemData1, 16, 4, 4);
192     TEST_FIELD(COMPAREITEMSTRUCT, UINT, itemID2, 20, 4, 4);
193     TEST_FIELD(COMPAREITEMSTRUCT, ULONG_PTR, itemData2, 24, 4, 4);
194     TEST_FIELD(COMPAREITEMSTRUCT, DWORD, dwLocaleId, 28, 4, 4);
195 }
196
197 static void test_pack_COPYDATASTRUCT(void)
198 {
199     /* COPYDATASTRUCT (pack 4) */
200     TEST_TYPE(COPYDATASTRUCT, 12, 4);
201     TEST_FIELD(COPYDATASTRUCT, ULONG_PTR, dwData, 0, 4, 4);
202     TEST_FIELD(COPYDATASTRUCT, DWORD, cbData, 4, 4, 4);
203     TEST_FIELD(COPYDATASTRUCT, PVOID, lpData, 8, 4, 4);
204 }
205
206 static void test_pack_CREATESTRUCTA(void)
207 {
208     /* CREATESTRUCTA (pack 4) */
209     TEST_TYPE(CREATESTRUCTA, 48, 4);
210     TEST_FIELD(CREATESTRUCTA, LPVOID, lpCreateParams, 0, 4, 4);
211     TEST_FIELD(CREATESTRUCTA, HINSTANCE, hInstance, 4, 4, 4);
212     TEST_FIELD(CREATESTRUCTA, HMENU, hMenu, 8, 4, 4);
213     TEST_FIELD(CREATESTRUCTA, HWND, hwndParent, 12, 4, 4);
214     TEST_FIELD(CREATESTRUCTA, INT, cy, 16, 4, 4);
215     TEST_FIELD(CREATESTRUCTA, INT, cx, 20, 4, 4);
216     TEST_FIELD(CREATESTRUCTA, INT, y, 24, 4, 4);
217     TEST_FIELD(CREATESTRUCTA, INT, x, 28, 4, 4);
218     TEST_FIELD(CREATESTRUCTA, LONG, style, 32, 4, 4);
219     TEST_FIELD(CREATESTRUCTA, LPCSTR, lpszName, 36, 4, 4);
220     TEST_FIELD(CREATESTRUCTA, LPCSTR, lpszClass, 40, 4, 4);
221     TEST_FIELD(CREATESTRUCTA, DWORD, dwExStyle, 44, 4, 4);
222 }
223
224 static void test_pack_CREATESTRUCTW(void)
225 {
226     /* CREATESTRUCTW (pack 4) */
227     TEST_TYPE(CREATESTRUCTW, 48, 4);
228     TEST_FIELD(CREATESTRUCTW, LPVOID, lpCreateParams, 0, 4, 4);
229     TEST_FIELD(CREATESTRUCTW, HINSTANCE, hInstance, 4, 4, 4);
230     TEST_FIELD(CREATESTRUCTW, HMENU, hMenu, 8, 4, 4);
231     TEST_FIELD(CREATESTRUCTW, HWND, hwndParent, 12, 4, 4);
232     TEST_FIELD(CREATESTRUCTW, INT, cy, 16, 4, 4);
233     TEST_FIELD(CREATESTRUCTW, INT, cx, 20, 4, 4);
234     TEST_FIELD(CREATESTRUCTW, INT, y, 24, 4, 4);
235     TEST_FIELD(CREATESTRUCTW, INT, x, 28, 4, 4);
236     TEST_FIELD(CREATESTRUCTW, LONG, style, 32, 4, 4);
237     TEST_FIELD(CREATESTRUCTW, LPCWSTR, lpszName, 36, 4, 4);
238     TEST_FIELD(CREATESTRUCTW, LPCWSTR, lpszClass, 40, 4, 4);
239     TEST_FIELD(CREATESTRUCTW, DWORD, dwExStyle, 44, 4, 4);
240 }
241
242 static void test_pack_CURSORINFO(void)
243 {
244     /* CURSORINFO (pack 4) */
245     TEST_TYPE(CURSORINFO, 20, 4);
246     TEST_FIELD(CURSORINFO, DWORD, cbSize, 0, 4, 4);
247     TEST_FIELD(CURSORINFO, DWORD, flags, 4, 4, 4);
248     TEST_FIELD(CURSORINFO, HCURSOR, hCursor, 8, 4, 4);
249     TEST_FIELD(CURSORINFO, POINT, ptScreenPos, 12, 8, 4);
250 }
251
252 static void test_pack_CWPRETSTRUCT(void)
253 {
254     /* CWPRETSTRUCT (pack 4) */
255     TEST_TYPE(CWPRETSTRUCT, 20, 4);
256     TEST_FIELD(CWPRETSTRUCT, LRESULT, lResult, 0, 4, 4);
257     TEST_FIELD(CWPRETSTRUCT, LPARAM, lParam, 4, 4, 4);
258     TEST_FIELD(CWPRETSTRUCT, WPARAM, wParam, 8, 4, 4);
259     TEST_FIELD(CWPRETSTRUCT, DWORD, message, 12, 4, 4);
260     TEST_FIELD(CWPRETSTRUCT, HWND, hwnd, 16, 4, 4);
261 }
262
263 static void test_pack_CWPSTRUCT(void)
264 {
265     /* CWPSTRUCT (pack 4) */
266     TEST_TYPE(CWPSTRUCT, 16, 4);
267     TEST_FIELD(CWPSTRUCT, LPARAM, lParam, 0, 4, 4);
268     TEST_FIELD(CWPSTRUCT, WPARAM, wParam, 4, 4, 4);
269     TEST_FIELD(CWPSTRUCT, UINT, message, 8, 4, 4);
270     TEST_FIELD(CWPSTRUCT, HWND, hwnd, 12, 4, 4);
271 }
272
273 static void test_pack_DEBUGHOOKINFO(void)
274 {
275     /* DEBUGHOOKINFO (pack 4) */
276     TEST_TYPE(DEBUGHOOKINFO, 20, 4);
277     TEST_FIELD(DEBUGHOOKINFO, DWORD, idThread, 0, 4, 4);
278     TEST_FIELD(DEBUGHOOKINFO, DWORD, idThreadInstaller, 4, 4, 4);
279     TEST_FIELD(DEBUGHOOKINFO, LPARAM, lParam, 8, 4, 4);
280     TEST_FIELD(DEBUGHOOKINFO, WPARAM, wParam, 12, 4, 4);
281     TEST_FIELD(DEBUGHOOKINFO, INT, code, 16, 4, 4);
282 }
283
284 static void test_pack_DELETEITEMSTRUCT(void)
285 {
286     /* DELETEITEMSTRUCT (pack 4) */
287     TEST_TYPE(DELETEITEMSTRUCT, 20, 4);
288     TEST_FIELD(DELETEITEMSTRUCT, UINT, CtlType, 0, 4, 4);
289     TEST_FIELD(DELETEITEMSTRUCT, UINT, CtlID, 4, 4, 4);
290     TEST_FIELD(DELETEITEMSTRUCT, UINT, itemID, 8, 4, 4);
291     TEST_FIELD(DELETEITEMSTRUCT, HWND, hwndItem, 12, 4, 4);
292     TEST_FIELD(DELETEITEMSTRUCT, ULONG_PTR, itemData, 16, 4, 4);
293 }
294
295 static void test_pack_DESKTOPENUMPROCA(void)
296 {
297     /* DESKTOPENUMPROCA */
298     TEST_TYPE(DESKTOPENUMPROCA, 4, 4);
299 }
300
301 static void test_pack_DESKTOPENUMPROCW(void)
302 {
303     /* DESKTOPENUMPROCW */
304     TEST_TYPE(DESKTOPENUMPROCW, 4, 4);
305 }
306
307 static void test_pack_DLGITEMTEMPLATE(void)
308 {
309     /* DLGITEMTEMPLATE (pack 2) */
310     TEST_TYPE(DLGITEMTEMPLATE, 18, 2);
311     TEST_FIELD(DLGITEMTEMPLATE, DWORD, style, 0, 4, 2);
312     TEST_FIELD(DLGITEMTEMPLATE, DWORD, dwExtendedStyle, 4, 4, 2);
313     TEST_FIELD(DLGITEMTEMPLATE, short, x, 8, 2, 2);
314     TEST_FIELD(DLGITEMTEMPLATE, short, y, 10, 2, 2);
315     TEST_FIELD(DLGITEMTEMPLATE, short, cx, 12, 2, 2);
316     TEST_FIELD(DLGITEMTEMPLATE, short, cy, 14, 2, 2);
317     TEST_FIELD(DLGITEMTEMPLATE, WORD, id, 16, 2, 2);
318 }
319
320 static void test_pack_DLGPROC(void)
321 {
322     /* DLGPROC */
323     TEST_TYPE(DLGPROC, 4, 4);
324 }
325
326 static void test_pack_DLGTEMPLATE(void)
327 {
328     /* DLGTEMPLATE (pack 2) */
329     TEST_TYPE(DLGTEMPLATE, 18, 2);
330     TEST_FIELD(DLGTEMPLATE, DWORD, style, 0, 4, 2);
331     TEST_FIELD(DLGTEMPLATE, DWORD, dwExtendedStyle, 4, 4, 2);
332     TEST_FIELD(DLGTEMPLATE, WORD, cdit, 8, 2, 2);
333     TEST_FIELD(DLGTEMPLATE, short, x, 10, 2, 2);
334     TEST_FIELD(DLGTEMPLATE, short, y, 12, 2, 2);
335     TEST_FIELD(DLGTEMPLATE, short, cx, 14, 2, 2);
336     TEST_FIELD(DLGTEMPLATE, short, cy, 16, 2, 2);
337 }
338
339 static void test_pack_DRAWITEMSTRUCT(void)
340 {
341     /* DRAWITEMSTRUCT (pack 4) */
342     TEST_TYPE(DRAWITEMSTRUCT, 48, 4);
343     TEST_FIELD(DRAWITEMSTRUCT, UINT, CtlType, 0, 4, 4);
344     TEST_FIELD(DRAWITEMSTRUCT, UINT, CtlID, 4, 4, 4);
345     TEST_FIELD(DRAWITEMSTRUCT, UINT, itemID, 8, 4, 4);
346     TEST_FIELD(DRAWITEMSTRUCT, UINT, itemAction, 12, 4, 4);
347     TEST_FIELD(DRAWITEMSTRUCT, UINT, itemState, 16, 4, 4);
348     TEST_FIELD(DRAWITEMSTRUCT, HWND, hwndItem, 20, 4, 4);
349     TEST_FIELD(DRAWITEMSTRUCT, HDC, hDC, 24, 4, 4);
350     TEST_FIELD(DRAWITEMSTRUCT, RECT, rcItem, 28, 16, 4);
351     TEST_FIELD(DRAWITEMSTRUCT, ULONG_PTR, itemData, 44, 4, 4);
352 }
353
354 static void test_pack_DRAWSTATEPROC(void)
355 {
356     /* DRAWSTATEPROC */
357     TEST_TYPE(DRAWSTATEPROC, 4, 4);
358 }
359
360 static void test_pack_DRAWTEXTPARAMS(void)
361 {
362     /* DRAWTEXTPARAMS (pack 4) */
363     TEST_TYPE(DRAWTEXTPARAMS, 20, 4);
364     TEST_FIELD(DRAWTEXTPARAMS, UINT, cbSize, 0, 4, 4);
365     TEST_FIELD(DRAWTEXTPARAMS, INT, iTabLength, 4, 4, 4);
366     TEST_FIELD(DRAWTEXTPARAMS, INT, iLeftMargin, 8, 4, 4);
367     TEST_FIELD(DRAWTEXTPARAMS, INT, iRightMargin, 12, 4, 4);
368     TEST_FIELD(DRAWTEXTPARAMS, UINT, uiLengthDrawn, 16, 4, 4);
369 }
370
371 static void test_pack_EDITWORDBREAKPROCA(void)
372 {
373     /* EDITWORDBREAKPROCA */
374     TEST_TYPE(EDITWORDBREAKPROCA, 4, 4);
375 }
376
377 static void test_pack_EDITWORDBREAKPROCW(void)
378 {
379     /* EDITWORDBREAKPROCW */
380     TEST_TYPE(EDITWORDBREAKPROCW, 4, 4);
381 }
382
383 static void test_pack_EVENTMSG(void)
384 {
385     /* EVENTMSG (pack 4) */
386     TEST_TYPE(EVENTMSG, 20, 4);
387     TEST_FIELD(EVENTMSG, UINT, message, 0, 4, 4);
388     TEST_FIELD(EVENTMSG, UINT, paramL, 4, 4, 4);
389     TEST_FIELD(EVENTMSG, UINT, paramH, 8, 4, 4);
390     TEST_FIELD(EVENTMSG, DWORD, time, 12, 4, 4);
391     TEST_FIELD(EVENTMSG, HWND, hwnd, 16, 4, 4);
392 }
393
394 static void test_pack_FILTERKEYS(void)
395 {
396     /* FILTERKEYS (pack 4) */
397     TEST_TYPE(FILTERKEYS, 24, 4);
398     TEST_FIELD(FILTERKEYS, UINT, cbSize, 0, 4, 4);
399     TEST_FIELD(FILTERKEYS, DWORD, dwFlags, 4, 4, 4);
400     TEST_FIELD(FILTERKEYS, DWORD, iWaitMSec, 8, 4, 4);
401     TEST_FIELD(FILTERKEYS, DWORD, iDelayMSec, 12, 4, 4);
402     TEST_FIELD(FILTERKEYS, DWORD, iRepeatMSec, 16, 4, 4);
403     TEST_FIELD(FILTERKEYS, DWORD, iBounceMSec, 20, 4, 4);
404 }
405
406 static void test_pack_FLASHWINFO(void)
407 {
408     /* FLASHWINFO (pack 4) */
409     TEST_TYPE(FLASHWINFO, 20, 4);
410     TEST_FIELD(FLASHWINFO, UINT, cbSize, 0, 4, 4);
411     TEST_FIELD(FLASHWINFO, HWND, hwnd, 4, 4, 4);
412     TEST_FIELD(FLASHWINFO, DWORD, dwFlags, 8, 4, 4);
413     TEST_FIELD(FLASHWINFO, UINT, uCount, 12, 4, 4);
414     TEST_FIELD(FLASHWINFO, DWORD, dwTimeout, 16, 4, 4);
415 }
416
417 static void test_pack_GRAYSTRINGPROC(void)
418 {
419     /* GRAYSTRINGPROC */
420     TEST_TYPE(GRAYSTRINGPROC, 4, 4);
421 }
422
423 static void test_pack_GUITHREADINFO(void)
424 {
425     /* GUITHREADINFO (pack 4) */
426     TEST_TYPE(GUITHREADINFO, 48, 4);
427     TEST_FIELD(GUITHREADINFO, DWORD, cbSize, 0, 4, 4);
428     TEST_FIELD(GUITHREADINFO, DWORD, flags, 4, 4, 4);
429     TEST_FIELD(GUITHREADINFO, HWND, hwndActive, 8, 4, 4);
430     TEST_FIELD(GUITHREADINFO, HWND, hwndFocus, 12, 4, 4);
431     TEST_FIELD(GUITHREADINFO, HWND, hwndCapture, 16, 4, 4);
432     TEST_FIELD(GUITHREADINFO, HWND, hwndMenuOwner, 20, 4, 4);
433     TEST_FIELD(GUITHREADINFO, HWND, hwndMoveSize, 24, 4, 4);
434     TEST_FIELD(GUITHREADINFO, HWND, hwndCaret, 28, 4, 4);
435     TEST_FIELD(GUITHREADINFO, RECT, rcCaret, 32, 16, 4);
436 }
437
438 static void test_pack_HARDWAREHOOKSTRUCT(void)
439 {
440     /* HARDWAREHOOKSTRUCT (pack 4) */
441     TEST_TYPE(HARDWAREHOOKSTRUCT, 16, 4);
442     TEST_FIELD(HARDWAREHOOKSTRUCT, HWND, hwnd, 0, 4, 4);
443     TEST_FIELD(HARDWAREHOOKSTRUCT, UINT, message, 4, 4, 4);
444     TEST_FIELD(HARDWAREHOOKSTRUCT, WPARAM, wParam, 8, 4, 4);
445     TEST_FIELD(HARDWAREHOOKSTRUCT, LPARAM, lParam, 12, 4, 4);
446 }
447
448 static void test_pack_HARDWAREINPUT(void)
449 {
450     /* HARDWAREINPUT (pack 4) */
451     TEST_TYPE(HARDWAREINPUT, 8, 4);
452     TEST_FIELD(HARDWAREINPUT, DWORD, uMsg, 0, 4, 4);
453     TEST_FIELD(HARDWAREINPUT, WORD, wParamL, 4, 2, 2);
454     TEST_FIELD(HARDWAREINPUT, WORD, wParamH, 6, 2, 2);
455 }
456
457 static void test_pack_HDEVNOTIFY(void)
458 {
459     /* HDEVNOTIFY */
460     TEST_TYPE(HDEVNOTIFY, 4, 4);
461 }
462
463 static void test_pack_HDWP(void)
464 {
465     /* HDWP */
466     TEST_TYPE(HDWP, 4, 4);
467 }
468
469 static void test_pack_HELPINFO(void)
470 {
471     /* HELPINFO (pack 4) */
472     TEST_TYPE(HELPINFO, 28, 4);
473     TEST_FIELD(HELPINFO, UINT, cbSize, 0, 4, 4);
474     TEST_FIELD(HELPINFO, INT, iContextType, 4, 4, 4);
475     TEST_FIELD(HELPINFO, INT, iCtrlId, 8, 4, 4);
476     TEST_FIELD(HELPINFO, HANDLE, hItemHandle, 12, 4, 4);
477     TEST_FIELD(HELPINFO, DWORD_PTR, dwContextId, 16, 4, 4);
478     TEST_FIELD(HELPINFO, POINT, MousePos, 20, 8, 4);
479 }
480
481 static void test_pack_HELPWININFOA(void)
482 {
483     /* HELPWININFOA (pack 4) */
484     TEST_TYPE(HELPWININFOA, 28, 4);
485     TEST_FIELD(HELPWININFOA, int, wStructSize, 0, 4, 4);
486     TEST_FIELD(HELPWININFOA, int, x, 4, 4, 4);
487     TEST_FIELD(HELPWININFOA, int, y, 8, 4, 4);
488     TEST_FIELD(HELPWININFOA, int, dx, 12, 4, 4);
489     TEST_FIELD(HELPWININFOA, int, dy, 16, 4, 4);
490     TEST_FIELD(HELPWININFOA, int, wMax, 20, 4, 4);
491     TEST_FIELD(HELPWININFOA, CHAR[2], rgchMember, 24, 2, 1);
492 }
493
494 static void test_pack_HELPWININFOW(void)
495 {
496     /* HELPWININFOW (pack 4) */
497     TEST_TYPE(HELPWININFOW, 28, 4);
498     TEST_FIELD(HELPWININFOW, int, wStructSize, 0, 4, 4);
499     TEST_FIELD(HELPWININFOW, int, x, 4, 4, 4);
500     TEST_FIELD(HELPWININFOW, int, y, 8, 4, 4);
501     TEST_FIELD(HELPWININFOW, int, dx, 12, 4, 4);
502     TEST_FIELD(HELPWININFOW, int, dy, 16, 4, 4);
503     TEST_FIELD(HELPWININFOW, int, wMax, 20, 4, 4);
504     TEST_FIELD(HELPWININFOW, WCHAR[2], rgchMember, 24, 4, 2);
505 }
506
507 static void test_pack_HIGHCONTRASTA(void)
508 {
509     /* HIGHCONTRASTA (pack 4) */
510     TEST_TYPE(HIGHCONTRASTA, 12, 4);
511     TEST_FIELD(HIGHCONTRASTA, UINT, cbSize, 0, 4, 4);
512     TEST_FIELD(HIGHCONTRASTA, DWORD, dwFlags, 4, 4, 4);
513     TEST_FIELD(HIGHCONTRASTA, LPSTR, lpszDefaultScheme, 8, 4, 4);
514 }
515
516 static void test_pack_HIGHCONTRASTW(void)
517 {
518     /* HIGHCONTRASTW (pack 4) */
519     TEST_TYPE(HIGHCONTRASTW, 12, 4);
520     TEST_FIELD(HIGHCONTRASTW, UINT, cbSize, 0, 4, 4);
521     TEST_FIELD(HIGHCONTRASTW, DWORD, dwFlags, 4, 4, 4);
522     TEST_FIELD(HIGHCONTRASTW, LPWSTR, lpszDefaultScheme, 8, 4, 4);
523 }
524
525 static void test_pack_HOOKPROC(void)
526 {
527     /* HOOKPROC */
528     TEST_TYPE(HOOKPROC, 4, 4);
529 }
530
531 static void test_pack_ICONINFO(void)
532 {
533     /* ICONINFO (pack 4) */
534     TEST_TYPE(ICONINFO, 20, 4);
535     TEST_FIELD(ICONINFO, BOOL, fIcon, 0, 4, 4);
536     TEST_FIELD(ICONINFO, DWORD, xHotspot, 4, 4, 4);
537     TEST_FIELD(ICONINFO, DWORD, yHotspot, 8, 4, 4);
538     TEST_FIELD(ICONINFO, HBITMAP, hbmMask, 12, 4, 4);
539     TEST_FIELD(ICONINFO, HBITMAP, hbmColor, 16, 4, 4);
540 }
541
542 static void test_pack_ICONMETRICSA(void)
543 {
544     /* ICONMETRICSA (pack 4) */
545     TEST_TYPE(ICONMETRICSA, 76, 4);
546     TEST_FIELD(ICONMETRICSA, UINT, cbSize, 0, 4, 4);
547     TEST_FIELD(ICONMETRICSA, int, iHorzSpacing, 4, 4, 4);
548     TEST_FIELD(ICONMETRICSA, int, iVertSpacing, 8, 4, 4);
549     TEST_FIELD(ICONMETRICSA, int, iTitleWrap, 12, 4, 4);
550     TEST_FIELD(ICONMETRICSA, LOGFONTA, lfFont, 16, 60, 4);
551 }
552
553 static void test_pack_ICONMETRICSW(void)
554 {
555     /* ICONMETRICSW (pack 4) */
556     TEST_TYPE(ICONMETRICSW, 108, 4);
557     TEST_FIELD(ICONMETRICSW, UINT, cbSize, 0, 4, 4);
558     TEST_FIELD(ICONMETRICSW, int, iHorzSpacing, 4, 4, 4);
559     TEST_FIELD(ICONMETRICSW, int, iVertSpacing, 8, 4, 4);
560     TEST_FIELD(ICONMETRICSW, int, iTitleWrap, 12, 4, 4);
561     TEST_FIELD(ICONMETRICSW, LOGFONTW, lfFont, 16, 92, 4);
562 }
563
564 static void test_pack_INPUT(void)
565 {
566     /* INPUT (pack 4) */
567     TEST_FIELD(INPUT, DWORD, type, 0, 4, 4);
568 }
569
570 static void test_pack_KBDLLHOOKSTRUCT(void)
571 {
572     /* KBDLLHOOKSTRUCT (pack 4) */
573     TEST_TYPE(KBDLLHOOKSTRUCT, 20, 4);
574     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, vkCode, 0, 4, 4);
575     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, scanCode, 4, 4, 4);
576     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, flags, 8, 4, 4);
577     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, time, 12, 4, 4);
578     TEST_FIELD(KBDLLHOOKSTRUCT, ULONG_PTR, dwExtraInfo, 16, 4, 4);
579 }
580
581 static void test_pack_KEYBDINPUT(void)
582 {
583     /* KEYBDINPUT (pack 4) */
584     TEST_TYPE(KEYBDINPUT, 16, 4);
585     TEST_FIELD(KEYBDINPUT, WORD, wVk, 0, 2, 2);
586     TEST_FIELD(KEYBDINPUT, WORD, wScan, 2, 2, 2);
587     TEST_FIELD(KEYBDINPUT, DWORD, dwFlags, 4, 4, 4);
588     TEST_FIELD(KEYBDINPUT, DWORD, time, 8, 4, 4);
589     TEST_FIELD(KEYBDINPUT, ULONG_PTR, dwExtraInfo, 12, 4, 4);
590 }
591
592 static void test_pack_LPACCEL(void)
593 {
594     /* LPACCEL */
595     TEST_TYPE(LPACCEL, 4, 4);
596     TEST_TYPE_POINTER(LPACCEL, 6, 2);
597 }
598
599 static void test_pack_LPACCESSTIMEOUT(void)
600 {
601     /* LPACCESSTIMEOUT */
602     TEST_TYPE(LPACCESSTIMEOUT, 4, 4);
603     TEST_TYPE_POINTER(LPACCESSTIMEOUT, 12, 4);
604 }
605
606 static void test_pack_LPANIMATIONINFO(void)
607 {
608     /* LPANIMATIONINFO */
609     TEST_TYPE(LPANIMATIONINFO, 4, 4);
610     TEST_TYPE_POINTER(LPANIMATIONINFO, 8, 4);
611 }
612
613 static void test_pack_LPCBTACTIVATESTRUCT(void)
614 {
615     /* LPCBTACTIVATESTRUCT */
616     TEST_TYPE(LPCBTACTIVATESTRUCT, 4, 4);
617     TEST_TYPE_POINTER(LPCBTACTIVATESTRUCT, 8, 4);
618 }
619
620 static void test_pack_LPCBT_CREATEWNDA(void)
621 {
622     /* LPCBT_CREATEWNDA */
623     TEST_TYPE(LPCBT_CREATEWNDA, 4, 4);
624     TEST_TYPE_POINTER(LPCBT_CREATEWNDA, 8, 4);
625 }
626
627 static void test_pack_LPCBT_CREATEWNDW(void)
628 {
629     /* LPCBT_CREATEWNDW */
630     TEST_TYPE(LPCBT_CREATEWNDW, 4, 4);
631     TEST_TYPE_POINTER(LPCBT_CREATEWNDW, 8, 4);
632 }
633
634 static void test_pack_LPCDLGTEMPLATEA(void)
635 {
636     /* LPCDLGTEMPLATEA */
637     TEST_TYPE(LPCDLGTEMPLATEA, 4, 4);
638     TEST_TYPE_POINTER(LPCDLGTEMPLATEA, 18, 2);
639 }
640
641 static void test_pack_LPCDLGTEMPLATEW(void)
642 {
643     /* LPCDLGTEMPLATEW */
644     TEST_TYPE(LPCDLGTEMPLATEW, 4, 4);
645     TEST_TYPE_POINTER(LPCDLGTEMPLATEW, 18, 2);
646 }
647
648 static void test_pack_LPCLIENTCREATESTRUCT(void)
649 {
650     /* LPCLIENTCREATESTRUCT */
651     TEST_TYPE(LPCLIENTCREATESTRUCT, 4, 4);
652     TEST_TYPE_POINTER(LPCLIENTCREATESTRUCT, 8, 4);
653 }
654
655 static void test_pack_LPCMENUINFO(void)
656 {
657     /* LPCMENUINFO */
658     TEST_TYPE(LPCMENUINFO, 4, 4);
659     TEST_TYPE_POINTER(LPCMENUINFO, 28, 4);
660 }
661
662 static void test_pack_LPCMENUITEMINFOA(void)
663 {
664     /* LPCMENUITEMINFOA */
665     TEST_TYPE(LPCMENUITEMINFOA, 4, 4);
666     TEST_TYPE_POINTER(LPCMENUITEMINFOA, 48, 4);
667 }
668
669 static void test_pack_LPCMENUITEMINFOW(void)
670 {
671     /* LPCMENUITEMINFOW */
672     TEST_TYPE(LPCMENUITEMINFOW, 4, 4);
673     TEST_TYPE_POINTER(LPCMENUITEMINFOW, 48, 4);
674 }
675
676 static void test_pack_LPCOMBOBOXINFO(void)
677 {
678     /* LPCOMBOBOXINFO */
679     TEST_TYPE(LPCOMBOBOXINFO, 4, 4);
680     TEST_TYPE_POINTER(LPCOMBOBOXINFO, 52, 4);
681 }
682
683 static void test_pack_LPCOMPAREITEMSTRUCT(void)
684 {
685     /* LPCOMPAREITEMSTRUCT */
686     TEST_TYPE(LPCOMPAREITEMSTRUCT, 4, 4);
687     TEST_TYPE_POINTER(LPCOMPAREITEMSTRUCT, 32, 4);
688 }
689
690 static void test_pack_LPCREATESTRUCTA(void)
691 {
692     /* LPCREATESTRUCTA */
693     TEST_TYPE(LPCREATESTRUCTA, 4, 4);
694     TEST_TYPE_POINTER(LPCREATESTRUCTA, 48, 4);
695 }
696
697 static void test_pack_LPCREATESTRUCTW(void)
698 {
699     /* LPCREATESTRUCTW */
700     TEST_TYPE(LPCREATESTRUCTW, 4, 4);
701     TEST_TYPE_POINTER(LPCREATESTRUCTW, 48, 4);
702 }
703
704 static void test_pack_LPCSCROLLINFO(void)
705 {
706     /* LPCSCROLLINFO */
707     TEST_TYPE(LPCSCROLLINFO, 4, 4);
708     TEST_TYPE_POINTER(LPCSCROLLINFO, 28, 4);
709 }
710
711 static void test_pack_LPCURSORINFO(void)
712 {
713     /* LPCURSORINFO */
714     TEST_TYPE(LPCURSORINFO, 4, 4);
715     TEST_TYPE_POINTER(LPCURSORINFO, 20, 4);
716 }
717
718 static void test_pack_LPCWPRETSTRUCT(void)
719 {
720     /* LPCWPRETSTRUCT */
721     TEST_TYPE(LPCWPRETSTRUCT, 4, 4);
722     TEST_TYPE_POINTER(LPCWPRETSTRUCT, 20, 4);
723 }
724
725 static void test_pack_LPCWPSTRUCT(void)
726 {
727     /* LPCWPSTRUCT */
728     TEST_TYPE(LPCWPSTRUCT, 4, 4);
729     TEST_TYPE_POINTER(LPCWPSTRUCT, 16, 4);
730 }
731
732 static void test_pack_LPDEBUGHOOKINFO(void)
733 {
734     /* LPDEBUGHOOKINFO */
735     TEST_TYPE(LPDEBUGHOOKINFO, 4, 4);
736     TEST_TYPE_POINTER(LPDEBUGHOOKINFO, 20, 4);
737 }
738
739 static void test_pack_LPDELETEITEMSTRUCT(void)
740 {
741     /* LPDELETEITEMSTRUCT */
742     TEST_TYPE(LPDELETEITEMSTRUCT, 4, 4);
743     TEST_TYPE_POINTER(LPDELETEITEMSTRUCT, 20, 4);
744 }
745
746 static void test_pack_LPDLGITEMTEMPLATEA(void)
747 {
748     /* LPDLGITEMTEMPLATEA */
749     TEST_TYPE(LPDLGITEMTEMPLATEA, 4, 4);
750     TEST_TYPE_POINTER(LPDLGITEMTEMPLATEA, 18, 2);
751 }
752
753 static void test_pack_LPDLGITEMTEMPLATEW(void)
754 {
755     /* LPDLGITEMTEMPLATEW */
756     TEST_TYPE(LPDLGITEMTEMPLATEW, 4, 4);
757     TEST_TYPE_POINTER(LPDLGITEMTEMPLATEW, 18, 2);
758 }
759
760 static void test_pack_LPDLGTEMPLATEA(void)
761 {
762     /* LPDLGTEMPLATEA */
763     TEST_TYPE(LPDLGTEMPLATEA, 4, 4);
764     TEST_TYPE_POINTER(LPDLGTEMPLATEA, 18, 2);
765 }
766
767 static void test_pack_LPDLGTEMPLATEW(void)
768 {
769     /* LPDLGTEMPLATEW */
770     TEST_TYPE(LPDLGTEMPLATEW, 4, 4);
771     TEST_TYPE_POINTER(LPDLGTEMPLATEW, 18, 2);
772 }
773
774 static void test_pack_LPDRAWITEMSTRUCT(void)
775 {
776     /* LPDRAWITEMSTRUCT */
777     TEST_TYPE(LPDRAWITEMSTRUCT, 4, 4);
778     TEST_TYPE_POINTER(LPDRAWITEMSTRUCT, 48, 4);
779 }
780
781 static void test_pack_LPDRAWTEXTPARAMS(void)
782 {
783     /* LPDRAWTEXTPARAMS */
784     TEST_TYPE(LPDRAWTEXTPARAMS, 4, 4);
785     TEST_TYPE_POINTER(LPDRAWTEXTPARAMS, 20, 4);
786 }
787
788 static void test_pack_LPEVENTMSG(void)
789 {
790     /* LPEVENTMSG */
791     TEST_TYPE(LPEVENTMSG, 4, 4);
792     TEST_TYPE_POINTER(LPEVENTMSG, 20, 4);
793 }
794
795 static void test_pack_LPFILTERKEYS(void)
796 {
797     /* LPFILTERKEYS */
798     TEST_TYPE(LPFILTERKEYS, 4, 4);
799     TEST_TYPE_POINTER(LPFILTERKEYS, 24, 4);
800 }
801
802 static void test_pack_LPGUITHREADINFO(void)
803 {
804     /* LPGUITHREADINFO */
805     TEST_TYPE(LPGUITHREADINFO, 4, 4);
806     TEST_TYPE_POINTER(LPGUITHREADINFO, 48, 4);
807 }
808
809 static void test_pack_LPHARDWAREHOOKSTRUCT(void)
810 {
811     /* LPHARDWAREHOOKSTRUCT */
812     TEST_TYPE(LPHARDWAREHOOKSTRUCT, 4, 4);
813     TEST_TYPE_POINTER(LPHARDWAREHOOKSTRUCT, 16, 4);
814 }
815
816 static void test_pack_LPHARDWAREINPUT(void)
817 {
818     /* LPHARDWAREINPUT */
819     TEST_TYPE(LPHARDWAREINPUT, 4, 4);
820     TEST_TYPE_POINTER(LPHARDWAREINPUT, 8, 4);
821 }
822
823 static void test_pack_LPHELPINFO(void)
824 {
825     /* LPHELPINFO */
826     TEST_TYPE(LPHELPINFO, 4, 4);
827     TEST_TYPE_POINTER(LPHELPINFO, 28, 4);
828 }
829
830 static void test_pack_LPHELPWININFOA(void)
831 {
832     /* LPHELPWININFOA */
833     TEST_TYPE(LPHELPWININFOA, 4, 4);
834     TEST_TYPE_POINTER(LPHELPWININFOA, 28, 4);
835 }
836
837 static void test_pack_LPHELPWININFOW(void)
838 {
839     /* LPHELPWININFOW */
840     TEST_TYPE(LPHELPWININFOW, 4, 4);
841     TEST_TYPE_POINTER(LPHELPWININFOW, 28, 4);
842 }
843
844 static void test_pack_LPHIGHCONTRASTA(void)
845 {
846     /* LPHIGHCONTRASTA */
847     TEST_TYPE(LPHIGHCONTRASTA, 4, 4);
848     TEST_TYPE_POINTER(LPHIGHCONTRASTA, 12, 4);
849 }
850
851 static void test_pack_LPHIGHCONTRASTW(void)
852 {
853     /* LPHIGHCONTRASTW */
854     TEST_TYPE(LPHIGHCONTRASTW, 4, 4);
855     TEST_TYPE_POINTER(LPHIGHCONTRASTW, 12, 4);
856 }
857
858 static void test_pack_LPICONMETRICSA(void)
859 {
860     /* LPICONMETRICSA */
861     TEST_TYPE(LPICONMETRICSA, 4, 4);
862     TEST_TYPE_POINTER(LPICONMETRICSA, 76, 4);
863 }
864
865 static void test_pack_LPICONMETRICSW(void)
866 {
867     /* LPICONMETRICSW */
868     TEST_TYPE(LPICONMETRICSW, 4, 4);
869     TEST_TYPE_POINTER(LPICONMETRICSW, 108, 4);
870 }
871
872 static void test_pack_LPINPUT(void)
873 {
874     /* LPINPUT */
875     TEST_TYPE(LPINPUT, 4, 4);
876 }
877
878 static void test_pack_LPKBDLLHOOKSTRUCT(void)
879 {
880     /* LPKBDLLHOOKSTRUCT */
881     TEST_TYPE(LPKBDLLHOOKSTRUCT, 4, 4);
882     TEST_TYPE_POINTER(LPKBDLLHOOKSTRUCT, 20, 4);
883 }
884
885 static void test_pack_LPKEYBDINPUT(void)
886 {
887     /* LPKEYBDINPUT */
888     TEST_TYPE(LPKEYBDINPUT, 4, 4);
889     TEST_TYPE_POINTER(LPKEYBDINPUT, 16, 4);
890 }
891
892 static void test_pack_LPMDICREATESTRUCTA(void)
893 {
894     /* LPMDICREATESTRUCTA */
895     TEST_TYPE(LPMDICREATESTRUCTA, 4, 4);
896     TEST_TYPE_POINTER(LPMDICREATESTRUCTA, 36, 4);
897 }
898
899 static void test_pack_LPMDICREATESTRUCTW(void)
900 {
901     /* LPMDICREATESTRUCTW */
902     TEST_TYPE(LPMDICREATESTRUCTW, 4, 4);
903     TEST_TYPE_POINTER(LPMDICREATESTRUCTW, 36, 4);
904 }
905
906 static void test_pack_LPMDINEXTMENU(void)
907 {
908     /* LPMDINEXTMENU */
909     TEST_TYPE(LPMDINEXTMENU, 4, 4);
910     TEST_TYPE_POINTER(LPMDINEXTMENU, 12, 4);
911 }
912
913 static void test_pack_LPMEASUREITEMSTRUCT(void)
914 {
915     /* LPMEASUREITEMSTRUCT */
916     TEST_TYPE(LPMEASUREITEMSTRUCT, 4, 4);
917     TEST_TYPE_POINTER(LPMEASUREITEMSTRUCT, 24, 4);
918 }
919
920 static void test_pack_LPMENUINFO(void)
921 {
922     /* LPMENUINFO */
923     TEST_TYPE(LPMENUINFO, 4, 4);
924     TEST_TYPE_POINTER(LPMENUINFO, 28, 4);
925 }
926
927 static void test_pack_LPMENUITEMINFOA(void)
928 {
929     /* LPMENUITEMINFOA */
930     TEST_TYPE(LPMENUITEMINFOA, 4, 4);
931     TEST_TYPE_POINTER(LPMENUITEMINFOA, 48, 4);
932 }
933
934 static void test_pack_LPMENUITEMINFOW(void)
935 {
936     /* LPMENUITEMINFOW */
937     TEST_TYPE(LPMENUITEMINFOW, 4, 4);
938     TEST_TYPE_POINTER(LPMENUITEMINFOW, 48, 4);
939 }
940
941 static void test_pack_LPMINIMIZEDMETRICS(void)
942 {
943     /* LPMINIMIZEDMETRICS */
944     TEST_TYPE(LPMINIMIZEDMETRICS, 4, 4);
945     TEST_TYPE_POINTER(LPMINIMIZEDMETRICS, 20, 4);
946 }
947
948 static void test_pack_LPMINMAXINFO(void)
949 {
950     /* LPMINMAXINFO */
951     TEST_TYPE(LPMINMAXINFO, 4, 4);
952     TEST_TYPE_POINTER(LPMINMAXINFO, 40, 4);
953 }
954
955 static void test_pack_LPMONITORINFO(void)
956 {
957     /* LPMONITORINFO */
958     TEST_TYPE(LPMONITORINFO, 4, 4);
959     TEST_TYPE_POINTER(LPMONITORINFO, 40, 4);
960 }
961
962 static void test_pack_LPMONITORINFOEXA(void)
963 {
964     /* LPMONITORINFOEXA */
965     TEST_TYPE(LPMONITORINFOEXA, 4, 4);
966     TEST_TYPE_POINTER(LPMONITORINFOEXA, 72, 4);
967 }
968
969 static void test_pack_LPMONITORINFOEXW(void)
970 {
971     /* LPMONITORINFOEXW */
972     TEST_TYPE(LPMONITORINFOEXW, 4, 4);
973     TEST_TYPE_POINTER(LPMONITORINFOEXW, 104, 4);
974 }
975
976 static void test_pack_LPMOUSEHOOKSTRUCT(void)
977 {
978     /* LPMOUSEHOOKSTRUCT */
979     TEST_TYPE(LPMOUSEHOOKSTRUCT, 4, 4);
980     TEST_TYPE_POINTER(LPMOUSEHOOKSTRUCT, 20, 4);
981 }
982
983 static void test_pack_LPMOUSEINPUT(void)
984 {
985     /* LPMOUSEINPUT */
986     TEST_TYPE(LPMOUSEINPUT, 4, 4);
987     TEST_TYPE_POINTER(LPMOUSEINPUT, 24, 4);
988 }
989
990 static void test_pack_LPMOUSEKEYS(void)
991 {
992     /* LPMOUSEKEYS */
993     TEST_TYPE(LPMOUSEKEYS, 4, 4);
994     TEST_TYPE_POINTER(LPMOUSEKEYS, 28, 4);
995 }
996
997 static void test_pack_LPMSG(void)
998 {
999     /* LPMSG */
1000     TEST_TYPE(LPMSG, 4, 4);
1001     TEST_TYPE_POINTER(LPMSG, 28, 4);
1002 }
1003
1004 static void test_pack_LPMSGBOXPARAMSA(void)
1005 {
1006     /* LPMSGBOXPARAMSA */
1007     TEST_TYPE(LPMSGBOXPARAMSA, 4, 4);
1008     TEST_TYPE_POINTER(LPMSGBOXPARAMSA, 40, 4);
1009 }
1010
1011 static void test_pack_LPMSGBOXPARAMSW(void)
1012 {
1013     /* LPMSGBOXPARAMSW */
1014     TEST_TYPE(LPMSGBOXPARAMSW, 4, 4);
1015     TEST_TYPE_POINTER(LPMSGBOXPARAMSW, 40, 4);
1016 }
1017
1018 static void test_pack_LPMSLLHOOKSTRUCT(void)
1019 {
1020     /* LPMSLLHOOKSTRUCT */
1021     TEST_TYPE(LPMSLLHOOKSTRUCT, 4, 4);
1022     TEST_TYPE_POINTER(LPMSLLHOOKSTRUCT, 24, 4);
1023 }
1024
1025 static void test_pack_LPMULTIKEYHELPA(void)
1026 {
1027     /* LPMULTIKEYHELPA */
1028     TEST_TYPE(LPMULTIKEYHELPA, 4, 4);
1029     TEST_TYPE_POINTER(LPMULTIKEYHELPA, 8, 4);
1030 }
1031
1032 static void test_pack_LPMULTIKEYHELPW(void)
1033 {
1034     /* LPMULTIKEYHELPW */
1035     TEST_TYPE(LPMULTIKEYHELPW, 4, 4);
1036     TEST_TYPE_POINTER(LPMULTIKEYHELPW, 8, 4);
1037 }
1038
1039 static void test_pack_LPNCCALCSIZE_PARAMS(void)
1040 {
1041     /* LPNCCALCSIZE_PARAMS */
1042     TEST_TYPE(LPNCCALCSIZE_PARAMS, 4, 4);
1043     TEST_TYPE_POINTER(LPNCCALCSIZE_PARAMS, 52, 4);
1044 }
1045
1046 static void test_pack_LPNMHDR(void)
1047 {
1048     /* LPNMHDR */
1049     TEST_TYPE(LPNMHDR, 4, 4);
1050     TEST_TYPE_POINTER(LPNMHDR, 12, 4);
1051 }
1052
1053 static void test_pack_LPNONCLIENTMETRICSA(void)
1054 {
1055     /* LPNONCLIENTMETRICSA */
1056     TEST_TYPE(LPNONCLIENTMETRICSA, 4, 4);
1057     TEST_TYPE_POINTER(LPNONCLIENTMETRICSA, 340, 4);
1058 }
1059
1060 static void test_pack_LPNONCLIENTMETRICSW(void)
1061 {
1062     /* LPNONCLIENTMETRICSW */
1063     TEST_TYPE(LPNONCLIENTMETRICSW, 4, 4);
1064     TEST_TYPE_POINTER(LPNONCLIENTMETRICSW, 500, 4);
1065 }
1066
1067 static void test_pack_LPPAINTSTRUCT(void)
1068 {
1069     /* LPPAINTSTRUCT */
1070     TEST_TYPE(LPPAINTSTRUCT, 4, 4);
1071     TEST_TYPE_POINTER(LPPAINTSTRUCT, 64, 4);
1072 }
1073
1074 static void test_pack_LPSCROLLINFO(void)
1075 {
1076     /* LPSCROLLINFO */
1077     TEST_TYPE(LPSCROLLINFO, 4, 4);
1078     TEST_TYPE_POINTER(LPSCROLLINFO, 28, 4);
1079 }
1080
1081 static void test_pack_LPSERIALKEYSA(void)
1082 {
1083     /* LPSERIALKEYSA */
1084     TEST_TYPE(LPSERIALKEYSA, 4, 4);
1085     TEST_TYPE_POINTER(LPSERIALKEYSA, 28, 4);
1086 }
1087
1088 static void test_pack_LPSERIALKEYSW(void)
1089 {
1090     /* LPSERIALKEYSW */
1091     TEST_TYPE(LPSERIALKEYSW, 4, 4);
1092     TEST_TYPE_POINTER(LPSERIALKEYSW, 28, 4);
1093 }
1094
1095 static void test_pack_LPSOUNDSENTRYA(void)
1096 {
1097     /* LPSOUNDSENTRYA */
1098     TEST_TYPE(LPSOUNDSENTRYA, 4, 4);
1099     TEST_TYPE_POINTER(LPSOUNDSENTRYA, 48, 4);
1100 }
1101
1102 static void test_pack_LPSOUNDSENTRYW(void)
1103 {
1104     /* LPSOUNDSENTRYW */
1105     TEST_TYPE(LPSOUNDSENTRYW, 4, 4);
1106     TEST_TYPE_POINTER(LPSOUNDSENTRYW, 48, 4);
1107 }
1108
1109 static void test_pack_LPSTICKYKEYS(void)
1110 {
1111     /* LPSTICKYKEYS */
1112     TEST_TYPE(LPSTICKYKEYS, 4, 4);
1113     TEST_TYPE_POINTER(LPSTICKYKEYS, 8, 4);
1114 }
1115
1116 static void test_pack_LPSTYLESTRUCT(void)
1117 {
1118     /* LPSTYLESTRUCT */
1119     TEST_TYPE(LPSTYLESTRUCT, 4, 4);
1120     TEST_TYPE_POINTER(LPSTYLESTRUCT, 8, 4);
1121 }
1122
1123 static void test_pack_LPTITLEBARINFO(void)
1124 {
1125     /* LPTITLEBARINFO */
1126     TEST_TYPE(LPTITLEBARINFO, 4, 4);
1127     TEST_TYPE_POINTER(LPTITLEBARINFO, 44, 4);
1128 }
1129
1130 static void test_pack_LPTOGGLEKEYS(void)
1131 {
1132     /* LPTOGGLEKEYS */
1133     TEST_TYPE(LPTOGGLEKEYS, 4, 4);
1134     TEST_TYPE_POINTER(LPTOGGLEKEYS, 8, 4);
1135 }
1136
1137 static void test_pack_LPTPMPARAMS(void)
1138 {
1139     /* LPTPMPARAMS */
1140     TEST_TYPE(LPTPMPARAMS, 4, 4);
1141     TEST_TYPE_POINTER(LPTPMPARAMS, 20, 4);
1142 }
1143
1144 static void test_pack_LPTRACKMOUSEEVENT(void)
1145 {
1146     /* LPTRACKMOUSEEVENT */
1147     TEST_TYPE(LPTRACKMOUSEEVENT, 4, 4);
1148     TEST_TYPE_POINTER(LPTRACKMOUSEEVENT, 16, 4);
1149 }
1150
1151 static void test_pack_LPWINDOWINFO(void)
1152 {
1153     /* LPWINDOWINFO */
1154     TEST_TYPE(LPWINDOWINFO, 4, 4);
1155     TEST_TYPE_POINTER(LPWINDOWINFO, 60, 4);
1156 }
1157
1158 static void test_pack_LPWINDOWPLACEMENT(void)
1159 {
1160     /* LPWINDOWPLACEMENT */
1161     TEST_TYPE(LPWINDOWPLACEMENT, 4, 4);
1162     TEST_TYPE_POINTER(LPWINDOWPLACEMENT, 44, 4);
1163 }
1164
1165 static void test_pack_LPWINDOWPOS(void)
1166 {
1167     /* LPWINDOWPOS */
1168     TEST_TYPE(LPWINDOWPOS, 4, 4);
1169     TEST_TYPE_POINTER(LPWINDOWPOS, 28, 4);
1170 }
1171
1172 static void test_pack_LPWNDCLASSA(void)
1173 {
1174     /* LPWNDCLASSA */
1175     TEST_TYPE(LPWNDCLASSA, 4, 4);
1176     TEST_TYPE_POINTER(LPWNDCLASSA, 40, 4);
1177 }
1178
1179 static void test_pack_LPWNDCLASSEXA(void)
1180 {
1181     /* LPWNDCLASSEXA */
1182     TEST_TYPE(LPWNDCLASSEXA, 4, 4);
1183     TEST_TYPE_POINTER(LPWNDCLASSEXA, 48, 4);
1184 }
1185
1186 static void test_pack_LPWNDCLASSEXW(void)
1187 {
1188     /* LPWNDCLASSEXW */
1189     TEST_TYPE(LPWNDCLASSEXW, 4, 4);
1190     TEST_TYPE_POINTER(LPWNDCLASSEXW, 48, 4);
1191 }
1192
1193 static void test_pack_LPWNDCLASSW(void)
1194 {
1195     /* LPWNDCLASSW */
1196     TEST_TYPE(LPWNDCLASSW, 4, 4);
1197     TEST_TYPE_POINTER(LPWNDCLASSW, 40, 4);
1198 }
1199
1200 static void test_pack_MDICREATESTRUCTA(void)
1201 {
1202     /* MDICREATESTRUCTA (pack 4) */
1203     TEST_TYPE(MDICREATESTRUCTA, 36, 4);
1204     TEST_FIELD(MDICREATESTRUCTA, LPCSTR, szClass, 0, 4, 4);
1205     TEST_FIELD(MDICREATESTRUCTA, LPCSTR, szTitle, 4, 4, 4);
1206     TEST_FIELD(MDICREATESTRUCTA, HINSTANCE, hOwner, 8, 4, 4);
1207     TEST_FIELD(MDICREATESTRUCTA, INT, x, 12, 4, 4);
1208     TEST_FIELD(MDICREATESTRUCTA, INT, y, 16, 4, 4);
1209     TEST_FIELD(MDICREATESTRUCTA, INT, cx, 20, 4, 4);
1210     TEST_FIELD(MDICREATESTRUCTA, INT, cy, 24, 4, 4);
1211     TEST_FIELD(MDICREATESTRUCTA, DWORD, style, 28, 4, 4);
1212     TEST_FIELD(MDICREATESTRUCTA, LPARAM, lParam, 32, 4, 4);
1213 }
1214
1215 static void test_pack_MDICREATESTRUCTW(void)
1216 {
1217     /* MDICREATESTRUCTW (pack 4) */
1218     TEST_TYPE(MDICREATESTRUCTW, 36, 4);
1219     TEST_FIELD(MDICREATESTRUCTW, LPCWSTR, szClass, 0, 4, 4);
1220     TEST_FIELD(MDICREATESTRUCTW, LPCWSTR, szTitle, 4, 4, 4);
1221     TEST_FIELD(MDICREATESTRUCTW, HINSTANCE, hOwner, 8, 4, 4);
1222     TEST_FIELD(MDICREATESTRUCTW, INT, x, 12, 4, 4);
1223     TEST_FIELD(MDICREATESTRUCTW, INT, y, 16, 4, 4);
1224     TEST_FIELD(MDICREATESTRUCTW, INT, cx, 20, 4, 4);
1225     TEST_FIELD(MDICREATESTRUCTW, INT, cy, 24, 4, 4);
1226     TEST_FIELD(MDICREATESTRUCTW, DWORD, style, 28, 4, 4);
1227     TEST_FIELD(MDICREATESTRUCTW, LPARAM, lParam, 32, 4, 4);
1228 }
1229
1230 static void test_pack_MDINEXTMENU(void)
1231 {
1232     /* MDINEXTMENU (pack 4) */
1233     TEST_TYPE(MDINEXTMENU, 12, 4);
1234     TEST_FIELD(MDINEXTMENU, HMENU, hmenuIn, 0, 4, 4);
1235     TEST_FIELD(MDINEXTMENU, HMENU, hmenuNext, 4, 4, 4);
1236     TEST_FIELD(MDINEXTMENU, HWND, hwndNext, 8, 4, 4);
1237 }
1238
1239 static void test_pack_MEASUREITEMSTRUCT(void)
1240 {
1241     /* MEASUREITEMSTRUCT (pack 4) */
1242     TEST_TYPE(MEASUREITEMSTRUCT, 24, 4);
1243     TEST_FIELD(MEASUREITEMSTRUCT, UINT, CtlType, 0, 4, 4);
1244     TEST_FIELD(MEASUREITEMSTRUCT, UINT, CtlID, 4, 4, 4);
1245     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemID, 8, 4, 4);
1246     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemWidth, 12, 4, 4);
1247     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemHeight, 16, 4, 4);
1248     TEST_FIELD(MEASUREITEMSTRUCT, ULONG_PTR, itemData, 20, 4, 4);
1249 }
1250
1251 static void test_pack_MENUINFO(void)
1252 {
1253     /* MENUINFO (pack 4) */
1254     TEST_TYPE(MENUINFO, 28, 4);
1255     TEST_FIELD(MENUINFO, DWORD, cbSize, 0, 4, 4);
1256     TEST_FIELD(MENUINFO, DWORD, fMask, 4, 4, 4);
1257     TEST_FIELD(MENUINFO, DWORD, dwStyle, 8, 4, 4);
1258     TEST_FIELD(MENUINFO, UINT, cyMax, 12, 4, 4);
1259     TEST_FIELD(MENUINFO, HBRUSH, hbrBack, 16, 4, 4);
1260     TEST_FIELD(MENUINFO, DWORD, dwContextHelpID, 20, 4, 4);
1261     TEST_FIELD(MENUINFO, ULONG_PTR, dwMenuData, 24, 4, 4);
1262 }
1263
1264 static void test_pack_MENUITEMINFOA(void)
1265 {
1266     /* MENUITEMINFOA (pack 4) */
1267     TEST_TYPE(MENUITEMINFOA, 48, 4);
1268     TEST_FIELD(MENUITEMINFOA, UINT, cbSize, 0, 4, 4);
1269     TEST_FIELD(MENUITEMINFOA, UINT, fMask, 4, 4, 4);
1270     TEST_FIELD(MENUITEMINFOA, UINT, fType, 8, 4, 4);
1271     TEST_FIELD(MENUITEMINFOA, UINT, fState, 12, 4, 4);
1272     TEST_FIELD(MENUITEMINFOA, UINT, wID, 16, 4, 4);
1273     TEST_FIELD(MENUITEMINFOA, HMENU, hSubMenu, 20, 4, 4);
1274     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpChecked, 24, 4, 4);
1275     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpUnchecked, 28, 4, 4);
1276     TEST_FIELD(MENUITEMINFOA, ULONG_PTR, dwItemData, 32, 4, 4);
1277     TEST_FIELD(MENUITEMINFOA, LPSTR, dwTypeData, 36, 4, 4);
1278     TEST_FIELD(MENUITEMINFOA, UINT, cch, 40, 4, 4);
1279     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpItem, 44, 4, 4);
1280 }
1281
1282 static void test_pack_MENUITEMINFOW(void)
1283 {
1284     /* MENUITEMINFOW (pack 4) */
1285     TEST_TYPE(MENUITEMINFOW, 48, 4);
1286     TEST_FIELD(MENUITEMINFOW, UINT, cbSize, 0, 4, 4);
1287     TEST_FIELD(MENUITEMINFOW, UINT, fMask, 4, 4, 4);
1288     TEST_FIELD(MENUITEMINFOW, UINT, fType, 8, 4, 4);
1289     TEST_FIELD(MENUITEMINFOW, UINT, fState, 12, 4, 4);
1290     TEST_FIELD(MENUITEMINFOW, UINT, wID, 16, 4, 4);
1291     TEST_FIELD(MENUITEMINFOW, HMENU, hSubMenu, 20, 4, 4);
1292     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpChecked, 24, 4, 4);
1293     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpUnchecked, 28, 4, 4);
1294     TEST_FIELD(MENUITEMINFOW, ULONG_PTR, dwItemData, 32, 4, 4);
1295     TEST_FIELD(MENUITEMINFOW, LPWSTR, dwTypeData, 36, 4, 4);
1296     TEST_FIELD(MENUITEMINFOW, UINT, cch, 40, 4, 4);
1297     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpItem, 44, 4, 4);
1298 }
1299
1300 static void test_pack_MENUITEMTEMPLATE(void)
1301 {
1302     /* MENUITEMTEMPLATE (pack 4) */
1303     TEST_TYPE(MENUITEMTEMPLATE, 6, 2);
1304     TEST_FIELD(MENUITEMTEMPLATE, WORD, mtOption, 0, 2, 2);
1305     TEST_FIELD(MENUITEMTEMPLATE, WORD, mtID, 2, 2, 2);
1306     TEST_FIELD(MENUITEMTEMPLATE, WCHAR[1], mtString, 4, 2, 2);
1307 }
1308
1309 static void test_pack_MENUITEMTEMPLATEHEADER(void)
1310 {
1311     /* MENUITEMTEMPLATEHEADER (pack 4) */
1312     TEST_TYPE(MENUITEMTEMPLATEHEADER, 4, 2);
1313     TEST_FIELD(MENUITEMTEMPLATEHEADER, WORD, versionNumber, 0, 2, 2);
1314     TEST_FIELD(MENUITEMTEMPLATEHEADER, WORD, offset, 2, 2, 2);
1315 }
1316
1317 static void test_pack_MINIMIZEDMETRICS(void)
1318 {
1319     /* MINIMIZEDMETRICS (pack 4) */
1320     TEST_TYPE(MINIMIZEDMETRICS, 20, 4);
1321     TEST_FIELD(MINIMIZEDMETRICS, UINT, cbSize, 0, 4, 4);
1322     TEST_FIELD(MINIMIZEDMETRICS, int, iWidth, 4, 4, 4);
1323     TEST_FIELD(MINIMIZEDMETRICS, int, iHorzGap, 8, 4, 4);
1324     TEST_FIELD(MINIMIZEDMETRICS, int, iVertGap, 12, 4, 4);
1325     TEST_FIELD(MINIMIZEDMETRICS, int, iArrange, 16, 4, 4);
1326 }
1327
1328 static void test_pack_MINMAXINFO(void)
1329 {
1330     /* MINMAXINFO (pack 4) */
1331     TEST_TYPE(MINMAXINFO, 40, 4);
1332     TEST_FIELD(MINMAXINFO, POINT, ptReserved, 0, 8, 4);
1333     TEST_FIELD(MINMAXINFO, POINT, ptMaxSize, 8, 8, 4);
1334     TEST_FIELD(MINMAXINFO, POINT, ptMaxPosition, 16, 8, 4);
1335     TEST_FIELD(MINMAXINFO, POINT, ptMinTrackSize, 24, 8, 4);
1336     TEST_FIELD(MINMAXINFO, POINT, ptMaxTrackSize, 32, 8, 4);
1337 }
1338
1339 static void test_pack_MONITORENUMPROC(void)
1340 {
1341     /* MONITORENUMPROC */
1342     TEST_TYPE(MONITORENUMPROC, 4, 4);
1343 }
1344
1345 static void test_pack_MONITORINFO(void)
1346 {
1347     /* MONITORINFO (pack 4) */
1348     TEST_TYPE(MONITORINFO, 40, 4);
1349     TEST_FIELD(MONITORINFO, DWORD, cbSize, 0, 4, 4);
1350     TEST_FIELD(MONITORINFO, RECT, rcMonitor, 4, 16, 4);
1351     TEST_FIELD(MONITORINFO, RECT, rcWork, 20, 16, 4);
1352     TEST_FIELD(MONITORINFO, DWORD, dwFlags, 36, 4, 4);
1353 }
1354
1355 static void test_pack_MONITORINFOEXA(void)
1356 {
1357     /* MONITORINFOEXA (pack 4) */
1358     TEST_TYPE(MONITORINFOEXA, 72, 4);
1359     TEST_FIELD(MONITORINFOEXA, DWORD, cbSize, 0, 4, 4);
1360     TEST_FIELD(MONITORINFOEXA, RECT, rcMonitor, 4, 16, 4);
1361     TEST_FIELD(MONITORINFOEXA, RECT, rcWork, 20, 16, 4);
1362     TEST_FIELD(MONITORINFOEXA, DWORD, dwFlags, 36, 4, 4);
1363     TEST_FIELD(MONITORINFOEXA, CHAR[CCHDEVICENAME], szDevice, 40, 32, 1);
1364 }
1365
1366 static void test_pack_MONITORINFOEXW(void)
1367 {
1368     /* MONITORINFOEXW (pack 4) */
1369     TEST_TYPE(MONITORINFOEXW, 104, 4);
1370     TEST_FIELD(MONITORINFOEXW, DWORD, cbSize, 0, 4, 4);
1371     TEST_FIELD(MONITORINFOEXW, RECT, rcMonitor, 4, 16, 4);
1372     TEST_FIELD(MONITORINFOEXW, RECT, rcWork, 20, 16, 4);
1373     TEST_FIELD(MONITORINFOEXW, DWORD, dwFlags, 36, 4, 4);
1374     TEST_FIELD(MONITORINFOEXW, WCHAR[CCHDEVICENAME], szDevice, 40, 64, 2);
1375 }
1376
1377 static void test_pack_MOUSEHOOKSTRUCT(void)
1378 {
1379     /* MOUSEHOOKSTRUCT (pack 4) */
1380     TEST_TYPE(MOUSEHOOKSTRUCT, 20, 4);
1381     TEST_FIELD(MOUSEHOOKSTRUCT, POINT, pt, 0, 8, 4);
1382     TEST_FIELD(MOUSEHOOKSTRUCT, HWND, hwnd, 8, 4, 4);
1383     TEST_FIELD(MOUSEHOOKSTRUCT, UINT, wHitTestCode, 12, 4, 4);
1384     TEST_FIELD(MOUSEHOOKSTRUCT, ULONG_PTR, dwExtraInfo, 16, 4, 4);
1385 }
1386
1387 static void test_pack_MOUSEINPUT(void)
1388 {
1389     /* MOUSEINPUT (pack 4) */
1390     TEST_TYPE(MOUSEINPUT, 24, 4);
1391     TEST_FIELD(MOUSEINPUT, LONG, dx, 0, 4, 4);
1392     TEST_FIELD(MOUSEINPUT, LONG, dy, 4, 4, 4);
1393     TEST_FIELD(MOUSEINPUT, DWORD, mouseData, 8, 4, 4);
1394     TEST_FIELD(MOUSEINPUT, DWORD, dwFlags, 12, 4, 4);
1395     TEST_FIELD(MOUSEINPUT, DWORD, time, 16, 4, 4);
1396     TEST_FIELD(MOUSEINPUT, ULONG_PTR, dwExtraInfo, 20, 4, 4);
1397 }
1398
1399 static void test_pack_MOUSEKEYS(void)
1400 {
1401     /* MOUSEKEYS (pack 4) */
1402     TEST_TYPE(MOUSEKEYS, 28, 4);
1403     TEST_FIELD(MOUSEKEYS, UINT, cbSize, 0, 4, 4);
1404     TEST_FIELD(MOUSEKEYS, DWORD, dwFlags, 4, 4, 4);
1405     TEST_FIELD(MOUSEKEYS, DWORD, iMaxSpeed, 8, 4, 4);
1406     TEST_FIELD(MOUSEKEYS, DWORD, iTimeToMaxSpeed, 12, 4, 4);
1407     TEST_FIELD(MOUSEKEYS, DWORD, iCtrlSpeed, 16, 4, 4);
1408     TEST_FIELD(MOUSEKEYS, DWORD, dwReserved1, 20, 4, 4);
1409     TEST_FIELD(MOUSEKEYS, DWORD, dwReserved2, 24, 4, 4);
1410 }
1411
1412 static void test_pack_MSG(void)
1413 {
1414     /* MSG (pack 4) */
1415     TEST_TYPE(MSG, 28, 4);
1416     TEST_FIELD(MSG, HWND, hwnd, 0, 4, 4);
1417     TEST_FIELD(MSG, UINT, message, 4, 4, 4);
1418     TEST_FIELD(MSG, WPARAM, wParam, 8, 4, 4);
1419     TEST_FIELD(MSG, LPARAM, lParam, 12, 4, 4);
1420     TEST_FIELD(MSG, DWORD, time, 16, 4, 4);
1421     TEST_FIELD(MSG, POINT, pt, 20, 8, 4);
1422 }
1423
1424 static void test_pack_MSGBOXCALLBACK(void)
1425 {
1426     /* MSGBOXCALLBACK */
1427     TEST_TYPE(MSGBOXCALLBACK, 4, 4);
1428 }
1429
1430 static void test_pack_MSGBOXPARAMSA(void)
1431 {
1432     /* MSGBOXPARAMSA (pack 4) */
1433     TEST_TYPE(MSGBOXPARAMSA, 40, 4);
1434     TEST_FIELD(MSGBOXPARAMSA, UINT, cbSize, 0, 4, 4);
1435     TEST_FIELD(MSGBOXPARAMSA, HWND, hwndOwner, 4, 4, 4);
1436     TEST_FIELD(MSGBOXPARAMSA, HINSTANCE, hInstance, 8, 4, 4);
1437     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszText, 12, 4, 4);
1438     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszCaption, 16, 4, 4);
1439     TEST_FIELD(MSGBOXPARAMSA, DWORD, dwStyle, 20, 4, 4);
1440     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszIcon, 24, 4, 4);
1441     TEST_FIELD(MSGBOXPARAMSA, DWORD_PTR, dwContextHelpId, 28, 4, 4);
1442     TEST_FIELD(MSGBOXPARAMSA, MSGBOXCALLBACK, lpfnMsgBoxCallback, 32, 4, 4);
1443     TEST_FIELD(MSGBOXPARAMSA, DWORD, dwLanguageId, 36, 4, 4);
1444 }
1445
1446 static void test_pack_MSGBOXPARAMSW(void)
1447 {
1448     /* MSGBOXPARAMSW (pack 4) */
1449     TEST_TYPE(MSGBOXPARAMSW, 40, 4);
1450     TEST_FIELD(MSGBOXPARAMSW, UINT, cbSize, 0, 4, 4);
1451     TEST_FIELD(MSGBOXPARAMSW, HWND, hwndOwner, 4, 4, 4);
1452     TEST_FIELD(MSGBOXPARAMSW, HINSTANCE, hInstance, 8, 4, 4);
1453     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszText, 12, 4, 4);
1454     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszCaption, 16, 4, 4);
1455     TEST_FIELD(MSGBOXPARAMSW, DWORD, dwStyle, 20, 4, 4);
1456     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszIcon, 24, 4, 4);
1457     TEST_FIELD(MSGBOXPARAMSW, DWORD_PTR, dwContextHelpId, 28, 4, 4);
1458     TEST_FIELD(MSGBOXPARAMSW, MSGBOXCALLBACK, lpfnMsgBoxCallback, 32, 4, 4);
1459     TEST_FIELD(MSGBOXPARAMSW, DWORD, dwLanguageId, 36, 4, 4);
1460 }
1461
1462 static void test_pack_MSLLHOOKSTRUCT(void)
1463 {
1464     /* MSLLHOOKSTRUCT (pack 4) */
1465     TEST_TYPE(MSLLHOOKSTRUCT, 24, 4);
1466     TEST_FIELD(MSLLHOOKSTRUCT, POINT, pt, 0, 8, 4);
1467     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, mouseData, 8, 4, 4);
1468     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, flags, 12, 4, 4);
1469     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, time, 16, 4, 4);
1470     TEST_FIELD(MSLLHOOKSTRUCT, ULONG_PTR, dwExtraInfo, 20, 4, 4);
1471 }
1472
1473 static void test_pack_MULTIKEYHELPA(void)
1474 {
1475     /* MULTIKEYHELPA (pack 4) */
1476     TEST_TYPE(MULTIKEYHELPA, 8, 4);
1477     TEST_FIELD(MULTIKEYHELPA, DWORD, mkSize, 0, 4, 4);
1478     TEST_FIELD(MULTIKEYHELPA, CHAR, mkKeylist, 4, 1, 1);
1479     TEST_FIELD(MULTIKEYHELPA, CHAR[1], szKeyphrase, 5, 1, 1);
1480 }
1481
1482 static void test_pack_MULTIKEYHELPW(void)
1483 {
1484     /* MULTIKEYHELPW (pack 4) */
1485     TEST_TYPE(MULTIKEYHELPW, 8, 4);
1486     TEST_FIELD(MULTIKEYHELPW, DWORD, mkSize, 0, 4, 4);
1487     TEST_FIELD(MULTIKEYHELPW, WCHAR, mkKeylist, 4, 2, 2);
1488     TEST_FIELD(MULTIKEYHELPW, WCHAR[1], szKeyphrase, 6, 2, 2);
1489 }
1490
1491 static void test_pack_NAMEENUMPROCA(void)
1492 {
1493     /* NAMEENUMPROCA */
1494     TEST_TYPE(NAMEENUMPROCA, 4, 4);
1495 }
1496
1497 static void test_pack_NAMEENUMPROCW(void)
1498 {
1499     /* NAMEENUMPROCW */
1500     TEST_TYPE(NAMEENUMPROCW, 4, 4);
1501 }
1502
1503 static void test_pack_NCCALCSIZE_PARAMS(void)
1504 {
1505     /* NCCALCSIZE_PARAMS (pack 4) */
1506     TEST_TYPE(NCCALCSIZE_PARAMS, 52, 4);
1507     TEST_FIELD(NCCALCSIZE_PARAMS, RECT[3], rgrc, 0, 48, 4);
1508     TEST_FIELD(NCCALCSIZE_PARAMS, WINDOWPOS *, lppos, 48, 4, 4);
1509 }
1510
1511 static void test_pack_NMHDR(void)
1512 {
1513     /* NMHDR (pack 4) */
1514     TEST_TYPE(NMHDR, 12, 4);
1515     TEST_FIELD(NMHDR, HWND, hwndFrom, 0, 4, 4);
1516     TEST_FIELD(NMHDR, UINT_PTR, idFrom, 4, 4, 4);
1517     TEST_FIELD(NMHDR, UINT, code, 8, 4, 4);
1518 }
1519
1520 static void test_pack_NONCLIENTMETRICSA(void)
1521 {
1522     /* NONCLIENTMETRICSA (pack 4) */
1523     TEST_TYPE(NONCLIENTMETRICSA, 340, 4);
1524     TEST_FIELD(NONCLIENTMETRICSA, UINT, cbSize, 0, 4, 4);
1525     TEST_FIELD(NONCLIENTMETRICSA, INT, iBorderWidth, 4, 4, 4);
1526     TEST_FIELD(NONCLIENTMETRICSA, INT, iScrollWidth, 8, 4, 4);
1527     TEST_FIELD(NONCLIENTMETRICSA, INT, iScrollHeight, 12, 4, 4);
1528     TEST_FIELD(NONCLIENTMETRICSA, INT, iCaptionWidth, 16, 4, 4);
1529     TEST_FIELD(NONCLIENTMETRICSA, INT, iCaptionHeight, 20, 4, 4);
1530     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfCaptionFont, 24, 60, 4);
1531     TEST_FIELD(NONCLIENTMETRICSA, INT, iSmCaptionWidth, 84, 4, 4);
1532     TEST_FIELD(NONCLIENTMETRICSA, INT, iSmCaptionHeight, 88, 4, 4);
1533     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfSmCaptionFont, 92, 60, 4);
1534     TEST_FIELD(NONCLIENTMETRICSA, INT, iMenuWidth, 152, 4, 4);
1535     TEST_FIELD(NONCLIENTMETRICSA, INT, iMenuHeight, 156, 4, 4);
1536     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfMenuFont, 160, 60, 4);
1537     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfStatusFont, 220, 60, 4);
1538     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfMessageFont, 280, 60, 4);
1539 }
1540
1541 static void test_pack_NONCLIENTMETRICSW(void)
1542 {
1543     /* NONCLIENTMETRICSW (pack 4) */
1544     TEST_TYPE(NONCLIENTMETRICSW, 500, 4);
1545     TEST_FIELD(NONCLIENTMETRICSW, UINT, cbSize, 0, 4, 4);
1546     TEST_FIELD(NONCLIENTMETRICSW, INT, iBorderWidth, 4, 4, 4);
1547     TEST_FIELD(NONCLIENTMETRICSW, INT, iScrollWidth, 8, 4, 4);
1548     TEST_FIELD(NONCLIENTMETRICSW, INT, iScrollHeight, 12, 4, 4);
1549     TEST_FIELD(NONCLIENTMETRICSW, INT, iCaptionWidth, 16, 4, 4);
1550     TEST_FIELD(NONCLIENTMETRICSW, INT, iCaptionHeight, 20, 4, 4);
1551     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfCaptionFont, 24, 92, 4);
1552     TEST_FIELD(NONCLIENTMETRICSW, INT, iSmCaptionWidth, 116, 4, 4);
1553     TEST_FIELD(NONCLIENTMETRICSW, INT, iSmCaptionHeight, 120, 4, 4);
1554     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfSmCaptionFont, 124, 92, 4);
1555     TEST_FIELD(NONCLIENTMETRICSW, INT, iMenuWidth, 216, 4, 4);
1556     TEST_FIELD(NONCLIENTMETRICSW, INT, iMenuHeight, 220, 4, 4);
1557     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfMenuFont, 224, 92, 4);
1558     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfStatusFont, 316, 92, 4);
1559     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfMessageFont, 408, 92, 4);
1560 }
1561
1562 static void test_pack_PAINTSTRUCT(void)
1563 {
1564     /* PAINTSTRUCT (pack 4) */
1565     TEST_TYPE(PAINTSTRUCT, 64, 4);
1566     TEST_FIELD(PAINTSTRUCT, HDC, hdc, 0, 4, 4);
1567     TEST_FIELD(PAINTSTRUCT, BOOL, fErase, 4, 4, 4);
1568     TEST_FIELD(PAINTSTRUCT, RECT, rcPaint, 8, 16, 4);
1569     TEST_FIELD(PAINTSTRUCT, BOOL, fRestore, 24, 4, 4);
1570     TEST_FIELD(PAINTSTRUCT, BOOL, fIncUpdate, 28, 4, 4);
1571     TEST_FIELD(PAINTSTRUCT, BYTE[32], rgbReserved, 32, 32, 1);
1572 }
1573
1574 static void test_pack_PCOMBOBOXINFO(void)
1575 {
1576     /* PCOMBOBOXINFO */
1577     TEST_TYPE(PCOMBOBOXINFO, 4, 4);
1578     TEST_TYPE_POINTER(PCOMBOBOXINFO, 52, 4);
1579 }
1580
1581 static void test_pack_PCOMPAREITEMSTRUCT(void)
1582 {
1583     /* PCOMPAREITEMSTRUCT */
1584     TEST_TYPE(PCOMPAREITEMSTRUCT, 4, 4);
1585     TEST_TYPE_POINTER(PCOMPAREITEMSTRUCT, 32, 4);
1586 }
1587
1588 static void test_pack_PCOPYDATASTRUCT(void)
1589 {
1590     /* PCOPYDATASTRUCT */
1591     TEST_TYPE(PCOPYDATASTRUCT, 4, 4);
1592     TEST_TYPE_POINTER(PCOPYDATASTRUCT, 12, 4);
1593 }
1594
1595 static void test_pack_PCURSORINFO(void)
1596 {
1597     /* PCURSORINFO */
1598     TEST_TYPE(PCURSORINFO, 4, 4);
1599     TEST_TYPE_POINTER(PCURSORINFO, 20, 4);
1600 }
1601
1602 static void test_pack_PCWPRETSTRUCT(void)
1603 {
1604     /* PCWPRETSTRUCT */
1605     TEST_TYPE(PCWPRETSTRUCT, 4, 4);
1606     TEST_TYPE_POINTER(PCWPRETSTRUCT, 20, 4);
1607 }
1608
1609 static void test_pack_PCWPSTRUCT(void)
1610 {
1611     /* PCWPSTRUCT */
1612     TEST_TYPE(PCWPSTRUCT, 4, 4);
1613     TEST_TYPE_POINTER(PCWPSTRUCT, 16, 4);
1614 }
1615
1616 static void test_pack_PDEBUGHOOKINFO(void)
1617 {
1618     /* PDEBUGHOOKINFO */
1619     TEST_TYPE(PDEBUGHOOKINFO, 4, 4);
1620     TEST_TYPE_POINTER(PDEBUGHOOKINFO, 20, 4);
1621 }
1622
1623 static void test_pack_PDELETEITEMSTRUCT(void)
1624 {
1625     /* PDELETEITEMSTRUCT */
1626     TEST_TYPE(PDELETEITEMSTRUCT, 4, 4);
1627     TEST_TYPE_POINTER(PDELETEITEMSTRUCT, 20, 4);
1628 }
1629
1630 static void test_pack_PDLGITEMTEMPLATEA(void)
1631 {
1632     /* PDLGITEMTEMPLATEA */
1633     TEST_TYPE(PDLGITEMTEMPLATEA, 4, 4);
1634     TEST_TYPE_POINTER(PDLGITEMTEMPLATEA, 18, 2);
1635 }
1636
1637 static void test_pack_PDLGITEMTEMPLATEW(void)
1638 {
1639     /* PDLGITEMTEMPLATEW */
1640     TEST_TYPE(PDLGITEMTEMPLATEW, 4, 4);
1641     TEST_TYPE_POINTER(PDLGITEMTEMPLATEW, 18, 2);
1642 }
1643
1644 static void test_pack_PDRAWITEMSTRUCT(void)
1645 {
1646     /* PDRAWITEMSTRUCT */
1647     TEST_TYPE(PDRAWITEMSTRUCT, 4, 4);
1648     TEST_TYPE_POINTER(PDRAWITEMSTRUCT, 48, 4);
1649 }
1650
1651 static void test_pack_PEVENTMSG(void)
1652 {
1653     /* PEVENTMSG */
1654     TEST_TYPE(PEVENTMSG, 4, 4);
1655     TEST_TYPE_POINTER(PEVENTMSG, 20, 4);
1656 }
1657
1658 static void test_pack_PFLASHWINFO(void)
1659 {
1660     /* PFLASHWINFO */
1661     TEST_TYPE(PFLASHWINFO, 4, 4);
1662     TEST_TYPE_POINTER(PFLASHWINFO, 20, 4);
1663 }
1664
1665 static void test_pack_PGUITHREADINFO(void)
1666 {
1667     /* PGUITHREADINFO */
1668     TEST_TYPE(PGUITHREADINFO, 4, 4);
1669     TEST_TYPE_POINTER(PGUITHREADINFO, 48, 4);
1670 }
1671
1672 static void test_pack_PHARDWAREHOOKSTRUCT(void)
1673 {
1674     /* PHARDWAREHOOKSTRUCT */
1675     TEST_TYPE(PHARDWAREHOOKSTRUCT, 4, 4);
1676     TEST_TYPE_POINTER(PHARDWAREHOOKSTRUCT, 16, 4);
1677 }
1678
1679 static void test_pack_PHARDWAREINPUT(void)
1680 {
1681     /* PHARDWAREINPUT */
1682     TEST_TYPE(PHARDWAREINPUT, 4, 4);
1683     TEST_TYPE_POINTER(PHARDWAREINPUT, 8, 4);
1684 }
1685
1686 static void test_pack_PHDEVNOTIFY(void)
1687 {
1688     /* PHDEVNOTIFY */
1689     TEST_TYPE(PHDEVNOTIFY, 4, 4);
1690     TEST_TYPE_POINTER(PHDEVNOTIFY, 4, 4);
1691 }
1692
1693 static void test_pack_PHELPWININFOA(void)
1694 {
1695     /* PHELPWININFOA */
1696     TEST_TYPE(PHELPWININFOA, 4, 4);
1697     TEST_TYPE_POINTER(PHELPWININFOA, 28, 4);
1698 }
1699
1700 static void test_pack_PHELPWININFOW(void)
1701 {
1702     /* PHELPWININFOW */
1703     TEST_TYPE(PHELPWININFOW, 4, 4);
1704     TEST_TYPE_POINTER(PHELPWININFOW, 28, 4);
1705 }
1706
1707 static void test_pack_PICONINFO(void)
1708 {
1709     /* PICONINFO */
1710     TEST_TYPE(PICONINFO, 4, 4);
1711     TEST_TYPE_POINTER(PICONINFO, 20, 4);
1712 }
1713
1714 static void test_pack_PICONMETRICSA(void)
1715 {
1716     /* PICONMETRICSA */
1717     TEST_TYPE(PICONMETRICSA, 4, 4);
1718     TEST_TYPE_POINTER(PICONMETRICSA, 76, 4);
1719 }
1720
1721 static void test_pack_PICONMETRICSW(void)
1722 {
1723     /* PICONMETRICSW */
1724     TEST_TYPE(PICONMETRICSW, 4, 4);
1725     TEST_TYPE_POINTER(PICONMETRICSW, 108, 4);
1726 }
1727
1728 static void test_pack_PINPUT(void)
1729 {
1730     /* PINPUT */
1731     TEST_TYPE(PINPUT, 4, 4);
1732 }
1733
1734 static void test_pack_PKBDLLHOOKSTRUCT(void)
1735 {
1736     /* PKBDLLHOOKSTRUCT */
1737     TEST_TYPE(PKBDLLHOOKSTRUCT, 4, 4);
1738     TEST_TYPE_POINTER(PKBDLLHOOKSTRUCT, 20, 4);
1739 }
1740
1741 static void test_pack_PKEYBDINPUT(void)
1742 {
1743     /* PKEYBDINPUT */
1744     TEST_TYPE(PKEYBDINPUT, 4, 4);
1745     TEST_TYPE_POINTER(PKEYBDINPUT, 16, 4);
1746 }
1747
1748 static void test_pack_PMDINEXTMENU(void)
1749 {
1750     /* PMDINEXTMENU */
1751     TEST_TYPE(PMDINEXTMENU, 4, 4);
1752     TEST_TYPE_POINTER(PMDINEXTMENU, 12, 4);
1753 }
1754
1755 static void test_pack_PMEASUREITEMSTRUCT(void)
1756 {
1757     /* PMEASUREITEMSTRUCT */
1758     TEST_TYPE(PMEASUREITEMSTRUCT, 4, 4);
1759     TEST_TYPE_POINTER(PMEASUREITEMSTRUCT, 24, 4);
1760 }
1761
1762 static void test_pack_PMENUITEMTEMPLATE(void)
1763 {
1764     /* PMENUITEMTEMPLATE */
1765     TEST_TYPE(PMENUITEMTEMPLATE, 4, 4);
1766     TEST_TYPE_POINTER(PMENUITEMTEMPLATE, 6, 2);
1767 }
1768
1769 static void test_pack_PMENUITEMTEMPLATEHEADER(void)
1770 {
1771     /* PMENUITEMTEMPLATEHEADER */
1772     TEST_TYPE(PMENUITEMTEMPLATEHEADER, 4, 4);
1773     TEST_TYPE_POINTER(PMENUITEMTEMPLATEHEADER, 4, 2);
1774 }
1775
1776 static void test_pack_PMINIMIZEDMETRICS(void)
1777 {
1778     /* PMINIMIZEDMETRICS */
1779     TEST_TYPE(PMINIMIZEDMETRICS, 4, 4);
1780     TEST_TYPE_POINTER(PMINIMIZEDMETRICS, 20, 4);
1781 }
1782
1783 static void test_pack_PMINMAXINFO(void)
1784 {
1785     /* PMINMAXINFO */
1786     TEST_TYPE(PMINMAXINFO, 4, 4);
1787     TEST_TYPE_POINTER(PMINMAXINFO, 40, 4);
1788 }
1789
1790 static void test_pack_PMOUSEHOOKSTRUCT(void)
1791 {
1792     /* PMOUSEHOOKSTRUCT */
1793     TEST_TYPE(PMOUSEHOOKSTRUCT, 4, 4);
1794     TEST_TYPE_POINTER(PMOUSEHOOKSTRUCT, 20, 4);
1795 }
1796
1797 static void test_pack_PMOUSEINPUT(void)
1798 {
1799     /* PMOUSEINPUT */
1800     TEST_TYPE(PMOUSEINPUT, 4, 4);
1801     TEST_TYPE_POINTER(PMOUSEINPUT, 24, 4);
1802 }
1803
1804 static void test_pack_PMSG(void)
1805 {
1806     /* PMSG */
1807     TEST_TYPE(PMSG, 4, 4);
1808     TEST_TYPE_POINTER(PMSG, 28, 4);
1809 }
1810
1811 static void test_pack_PMSGBOXPARAMSA(void)
1812 {
1813     /* PMSGBOXPARAMSA */
1814     TEST_TYPE(PMSGBOXPARAMSA, 4, 4);
1815     TEST_TYPE_POINTER(PMSGBOXPARAMSA, 40, 4);
1816 }
1817
1818 static void test_pack_PMSGBOXPARAMSW(void)
1819 {
1820     /* PMSGBOXPARAMSW */
1821     TEST_TYPE(PMSGBOXPARAMSW, 4, 4);
1822     TEST_TYPE_POINTER(PMSGBOXPARAMSW, 40, 4);
1823 }
1824
1825 static void test_pack_PMSLLHOOKSTRUCT(void)
1826 {
1827     /* PMSLLHOOKSTRUCT */
1828     TEST_TYPE(PMSLLHOOKSTRUCT, 4, 4);
1829     TEST_TYPE_POINTER(PMSLLHOOKSTRUCT, 24, 4);
1830 }
1831
1832 static void test_pack_PMULTIKEYHELPA(void)
1833 {
1834     /* PMULTIKEYHELPA */
1835     TEST_TYPE(PMULTIKEYHELPA, 4, 4);
1836     TEST_TYPE_POINTER(PMULTIKEYHELPA, 8, 4);
1837 }
1838
1839 static void test_pack_PMULTIKEYHELPW(void)
1840 {
1841     /* PMULTIKEYHELPW */
1842     TEST_TYPE(PMULTIKEYHELPW, 4, 4);
1843     TEST_TYPE_POINTER(PMULTIKEYHELPW, 8, 4);
1844 }
1845
1846 static void test_pack_PNONCLIENTMETRICSA(void)
1847 {
1848     /* PNONCLIENTMETRICSA */
1849     TEST_TYPE(PNONCLIENTMETRICSA, 4, 4);
1850     TEST_TYPE_POINTER(PNONCLIENTMETRICSA, 340, 4);
1851 }
1852
1853 static void test_pack_PNONCLIENTMETRICSW(void)
1854 {
1855     /* PNONCLIENTMETRICSW */
1856     TEST_TYPE(PNONCLIENTMETRICSW, 4, 4);
1857     TEST_TYPE_POINTER(PNONCLIENTMETRICSW, 500, 4);
1858 }
1859
1860 static void test_pack_PPAINTSTRUCT(void)
1861 {
1862     /* PPAINTSTRUCT */
1863     TEST_TYPE(PPAINTSTRUCT, 4, 4);
1864     TEST_TYPE_POINTER(PPAINTSTRUCT, 64, 4);
1865 }
1866
1867 static void test_pack_PROPENUMPROCA(void)
1868 {
1869     /* PROPENUMPROCA */
1870     TEST_TYPE(PROPENUMPROCA, 4, 4);
1871 }
1872
1873 static void test_pack_PROPENUMPROCEXA(void)
1874 {
1875     /* PROPENUMPROCEXA */
1876     TEST_TYPE(PROPENUMPROCEXA, 4, 4);
1877 }
1878
1879 static void test_pack_PROPENUMPROCEXW(void)
1880 {
1881     /* PROPENUMPROCEXW */
1882     TEST_TYPE(PROPENUMPROCEXW, 4, 4);
1883 }
1884
1885 static void test_pack_PROPENUMPROCW(void)
1886 {
1887     /* PROPENUMPROCW */
1888     TEST_TYPE(PROPENUMPROCW, 4, 4);
1889 }
1890
1891 static void test_pack_PTITLEBARINFO(void)
1892 {
1893     /* PTITLEBARINFO */
1894     TEST_TYPE(PTITLEBARINFO, 4, 4);
1895     TEST_TYPE_POINTER(PTITLEBARINFO, 44, 4);
1896 }
1897
1898 static void test_pack_PUSEROBJECTFLAGS(void)
1899 {
1900     /* PUSEROBJECTFLAGS */
1901     TEST_TYPE(PUSEROBJECTFLAGS, 4, 4);
1902     TEST_TYPE_POINTER(PUSEROBJECTFLAGS, 12, 4);
1903 }
1904
1905 static void test_pack_PWINDOWINFO(void)
1906 {
1907     /* PWINDOWINFO */
1908     TEST_TYPE(PWINDOWINFO, 4, 4);
1909     TEST_TYPE_POINTER(PWINDOWINFO, 60, 4);
1910 }
1911
1912 static void test_pack_PWINDOWPLACEMENT(void)
1913 {
1914     /* PWINDOWPLACEMENT */
1915     TEST_TYPE(PWINDOWPLACEMENT, 4, 4);
1916     TEST_TYPE_POINTER(PWINDOWPLACEMENT, 44, 4);
1917 }
1918
1919 static void test_pack_PWINDOWPOS(void)
1920 {
1921     /* PWINDOWPOS */
1922     TEST_TYPE(PWINDOWPOS, 4, 4);
1923     TEST_TYPE_POINTER(PWINDOWPOS, 28, 4);
1924 }
1925
1926 static void test_pack_PWNDCLASSA(void)
1927 {
1928     /* PWNDCLASSA */
1929     TEST_TYPE(PWNDCLASSA, 4, 4);
1930     TEST_TYPE_POINTER(PWNDCLASSA, 40, 4);
1931 }
1932
1933 static void test_pack_PWNDCLASSEXA(void)
1934 {
1935     /* PWNDCLASSEXA */
1936     TEST_TYPE(PWNDCLASSEXA, 4, 4);
1937     TEST_TYPE_POINTER(PWNDCLASSEXA, 48, 4);
1938 }
1939
1940 static void test_pack_PWNDCLASSEXW(void)
1941 {
1942     /* PWNDCLASSEXW */
1943     TEST_TYPE(PWNDCLASSEXW, 4, 4);
1944     TEST_TYPE_POINTER(PWNDCLASSEXW, 48, 4);
1945 }
1946
1947 static void test_pack_PWNDCLASSW(void)
1948 {
1949     /* PWNDCLASSW */
1950     TEST_TYPE(PWNDCLASSW, 4, 4);
1951     TEST_TYPE_POINTER(PWNDCLASSW, 40, 4);
1952 }
1953
1954 static void test_pack_SCROLLINFO(void)
1955 {
1956     /* SCROLLINFO (pack 4) */
1957     TEST_TYPE(SCROLLINFO, 28, 4);
1958     TEST_FIELD(SCROLLINFO, UINT, cbSize, 0, 4, 4);
1959     TEST_FIELD(SCROLLINFO, UINT, fMask, 4, 4, 4);
1960     TEST_FIELD(SCROLLINFO, INT, nMin, 8, 4, 4);
1961     TEST_FIELD(SCROLLINFO, INT, nMax, 12, 4, 4);
1962     TEST_FIELD(SCROLLINFO, UINT, nPage, 16, 4, 4);
1963     TEST_FIELD(SCROLLINFO, INT, nPos, 20, 4, 4);
1964     TEST_FIELD(SCROLLINFO, INT, nTrackPos, 24, 4, 4);
1965 }
1966
1967 static void test_pack_SENDASYNCPROC(void)
1968 {
1969     /* SENDASYNCPROC */
1970     TEST_TYPE(SENDASYNCPROC, 4, 4);
1971 }
1972
1973 static void test_pack_SERIALKEYSA(void)
1974 {
1975     /* SERIALKEYSA (pack 4) */
1976     TEST_TYPE(SERIALKEYSA, 28, 4);
1977     TEST_FIELD(SERIALKEYSA, UINT, cbSize, 0, 4, 4);
1978     TEST_FIELD(SERIALKEYSA, DWORD, dwFlags, 4, 4, 4);
1979     TEST_FIELD(SERIALKEYSA, LPSTR, lpszActivePort, 8, 4, 4);
1980     TEST_FIELD(SERIALKEYSA, LPSTR, lpszPort, 12, 4, 4);
1981     TEST_FIELD(SERIALKEYSA, UINT, iBaudRate, 16, 4, 4);
1982     TEST_FIELD(SERIALKEYSA, UINT, iPortState, 20, 4, 4);
1983     TEST_FIELD(SERIALKEYSA, UINT, iActive, 24, 4, 4);
1984 }
1985
1986 static void test_pack_SERIALKEYSW(void)
1987 {
1988     /* SERIALKEYSW (pack 4) */
1989     TEST_TYPE(SERIALKEYSW, 28, 4);
1990     TEST_FIELD(SERIALKEYSW, UINT, cbSize, 0, 4, 4);
1991     TEST_FIELD(SERIALKEYSW, DWORD, dwFlags, 4, 4, 4);
1992     TEST_FIELD(SERIALKEYSW, LPWSTR, lpszActivePort, 8, 4, 4);
1993     TEST_FIELD(SERIALKEYSW, LPWSTR, lpszPort, 12, 4, 4);
1994     TEST_FIELD(SERIALKEYSW, UINT, iBaudRate, 16, 4, 4);
1995     TEST_FIELD(SERIALKEYSW, UINT, iPortState, 20, 4, 4);
1996     TEST_FIELD(SERIALKEYSW, UINT, iActive, 24, 4, 4);
1997 }
1998
1999 static void test_pack_SOUNDSENTRYA(void)
2000 {
2001     /* SOUNDSENTRYA (pack 4) */
2002     TEST_TYPE(SOUNDSENTRYA, 48, 4);
2003     TEST_FIELD(SOUNDSENTRYA, UINT, cbSize, 0, 4, 4);
2004     TEST_FIELD(SOUNDSENTRYA, DWORD, dwFlags, 4, 4, 4);
2005     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffect, 8, 4, 4);
2006     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffectMSec, 12, 4, 4);
2007     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffectColorBits, 16, 4, 4);
2008     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffect, 20, 4, 4);
2009     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffectMSec, 24, 4, 4);
2010     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffectColor, 28, 4, 4);
2011     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffect, 32, 4, 4);
2012     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffectMSec, 36, 4, 4);
2013     TEST_FIELD(SOUNDSENTRYA, LPSTR, lpszWindowsEffectDLL, 40, 4, 4);
2014     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffectOrdinal, 44, 4, 4);
2015 }
2016
2017 static void test_pack_SOUNDSENTRYW(void)
2018 {
2019     /* SOUNDSENTRYW (pack 4) */
2020     TEST_TYPE(SOUNDSENTRYW, 48, 4);
2021     TEST_FIELD(SOUNDSENTRYW, UINT, cbSize, 0, 4, 4);
2022     TEST_FIELD(SOUNDSENTRYW, DWORD, dwFlags, 4, 4, 4);
2023     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffect, 8, 4, 4);
2024     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffectMSec, 12, 4, 4);
2025     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffectColorBits, 16, 4, 4);
2026     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffect, 20, 4, 4);
2027     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffectMSec, 24, 4, 4);
2028     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffectColor, 28, 4, 4);
2029     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffect, 32, 4, 4);
2030     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffectMSec, 36, 4, 4);
2031     TEST_FIELD(SOUNDSENTRYW, LPWSTR, lpszWindowsEffectDLL, 40, 4, 4);
2032     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffectOrdinal, 44, 4, 4);
2033 }
2034
2035 static void test_pack_STICKYKEYS(void)
2036 {
2037     /* STICKYKEYS (pack 4) */
2038     TEST_TYPE(STICKYKEYS, 8, 4);
2039     TEST_FIELD(STICKYKEYS, DWORD, cbSize, 0, 4, 4);
2040     TEST_FIELD(STICKYKEYS, DWORD, dwFlags, 4, 4, 4);
2041 }
2042
2043 static void test_pack_STYLESTRUCT(void)
2044 {
2045     /* STYLESTRUCT (pack 4) */
2046     TEST_TYPE(STYLESTRUCT, 8, 4);
2047     TEST_FIELD(STYLESTRUCT, DWORD, styleOld, 0, 4, 4);
2048     TEST_FIELD(STYLESTRUCT, DWORD, styleNew, 4, 4, 4);
2049 }
2050
2051 static void test_pack_TIMERPROC(void)
2052 {
2053     /* TIMERPROC */
2054     TEST_TYPE(TIMERPROC, 4, 4);
2055 }
2056
2057 static void test_pack_TITLEBARINFO(void)
2058 {
2059     /* TITLEBARINFO (pack 4) */
2060     TEST_TYPE(TITLEBARINFO, 44, 4);
2061     TEST_FIELD(TITLEBARINFO, DWORD, cbSize, 0, 4, 4);
2062     TEST_FIELD(TITLEBARINFO, RECT, rcTitleBar, 4, 16, 4);
2063     TEST_FIELD(TITLEBARINFO, DWORD[CCHILDREN_TITLEBAR+1], rgstate, 20, 24, 4);
2064 }
2065
2066 static void test_pack_TOGGLEKEYS(void)
2067 {
2068     /* TOGGLEKEYS (pack 4) */
2069     TEST_TYPE(TOGGLEKEYS, 8, 4);
2070     TEST_FIELD(TOGGLEKEYS, DWORD, cbSize, 0, 4, 4);
2071     TEST_FIELD(TOGGLEKEYS, DWORD, dwFlags, 4, 4, 4);
2072 }
2073
2074 static void test_pack_TPMPARAMS(void)
2075 {
2076     /* TPMPARAMS (pack 4) */
2077     TEST_TYPE(TPMPARAMS, 20, 4);
2078     TEST_FIELD(TPMPARAMS, UINT, cbSize, 0, 4, 4);
2079     TEST_FIELD(TPMPARAMS, RECT, rcExclude, 4, 16, 4);
2080 }
2081
2082 static void test_pack_TRACKMOUSEEVENT(void)
2083 {
2084     /* TRACKMOUSEEVENT (pack 4) */
2085     TEST_TYPE(TRACKMOUSEEVENT, 16, 4);
2086     TEST_FIELD(TRACKMOUSEEVENT, DWORD, cbSize, 0, 4, 4);
2087     TEST_FIELD(TRACKMOUSEEVENT, DWORD, dwFlags, 4, 4, 4);
2088     TEST_FIELD(TRACKMOUSEEVENT, HWND, hwndTrack, 8, 4, 4);
2089     TEST_FIELD(TRACKMOUSEEVENT, DWORD, dwHoverTime, 12, 4, 4);
2090 }
2091
2092 static void test_pack_USEROBJECTFLAGS(void)
2093 {
2094     /* USEROBJECTFLAGS (pack 4) */
2095     TEST_TYPE(USEROBJECTFLAGS, 12, 4);
2096     TEST_FIELD(USEROBJECTFLAGS, BOOL, fInherit, 0, 4, 4);
2097     TEST_FIELD(USEROBJECTFLAGS, BOOL, fReserved, 4, 4, 4);
2098     TEST_FIELD(USEROBJECTFLAGS, DWORD, dwFlags, 8, 4, 4);
2099 }
2100
2101 static void test_pack_WINDOWINFO(void)
2102 {
2103     /* WINDOWINFO (pack 4) */
2104     TEST_TYPE(WINDOWINFO, 60, 4);
2105     TEST_FIELD(WINDOWINFO, DWORD, cbSize, 0, 4, 4);
2106     TEST_FIELD(WINDOWINFO, RECT, rcWindow, 4, 16, 4);
2107     TEST_FIELD(WINDOWINFO, RECT, rcClient, 20, 16, 4);
2108     TEST_FIELD(WINDOWINFO, DWORD, dwStyle, 36, 4, 4);
2109     TEST_FIELD(WINDOWINFO, DWORD, dwExStyle, 40, 4, 4);
2110     TEST_FIELD(WINDOWINFO, DWORD, dwWindowStatus, 44, 4, 4);
2111     TEST_FIELD(WINDOWINFO, UINT, cxWindowBorders, 48, 4, 4);
2112     TEST_FIELD(WINDOWINFO, UINT, cyWindowBorders, 52, 4, 4);
2113     TEST_FIELD(WINDOWINFO, ATOM, atomWindowType, 56, 2, 2);
2114     TEST_FIELD(WINDOWINFO, WORD, wCreatorVersion, 58, 2, 2);
2115 }
2116
2117 static void test_pack_WINDOWPLACEMENT(void)
2118 {
2119     /* WINDOWPLACEMENT (pack 4) */
2120     TEST_TYPE(WINDOWPLACEMENT, 44, 4);
2121     TEST_FIELD(WINDOWPLACEMENT, UINT, length, 0, 4, 4);
2122     TEST_FIELD(WINDOWPLACEMENT, UINT, flags, 4, 4, 4);
2123     TEST_FIELD(WINDOWPLACEMENT, UINT, showCmd, 8, 4, 4);
2124     TEST_FIELD(WINDOWPLACEMENT, POINT, ptMinPosition, 12, 8, 4);
2125     TEST_FIELD(WINDOWPLACEMENT, POINT, ptMaxPosition, 20, 8, 4);
2126     TEST_FIELD(WINDOWPLACEMENT, RECT, rcNormalPosition, 28, 16, 4);
2127 }
2128
2129 static void test_pack_WINDOWPOS(void)
2130 {
2131     /* WINDOWPOS (pack 4) */
2132     TEST_TYPE(WINDOWPOS, 28, 4);
2133     TEST_FIELD(WINDOWPOS, HWND, hwnd, 0, 4, 4);
2134     TEST_FIELD(WINDOWPOS, HWND, hwndInsertAfter, 4, 4, 4);
2135     TEST_FIELD(WINDOWPOS, INT, x, 8, 4, 4);
2136     TEST_FIELD(WINDOWPOS, INT, y, 12, 4, 4);
2137     TEST_FIELD(WINDOWPOS, INT, cx, 16, 4, 4);
2138     TEST_FIELD(WINDOWPOS, INT, cy, 20, 4, 4);
2139     TEST_FIELD(WINDOWPOS, UINT, flags, 24, 4, 4);
2140 }
2141
2142 static void test_pack_WINEVENTPROC(void)
2143 {
2144     /* WINEVENTPROC */
2145     TEST_TYPE(WINEVENTPROC, 4, 4);
2146 }
2147
2148 static void test_pack_WINSTAENUMPROCA(void)
2149 {
2150     /* WINSTAENUMPROCA */
2151     TEST_TYPE(WINSTAENUMPROCA, 4, 4);
2152 }
2153
2154 static void test_pack_WINSTAENUMPROCW(void)
2155 {
2156     /* WINSTAENUMPROCW */
2157     TEST_TYPE(WINSTAENUMPROCW, 4, 4);
2158 }
2159
2160 static void test_pack_WNDCLASSA(void)
2161 {
2162     /* WNDCLASSA (pack 4) */
2163     TEST_TYPE(WNDCLASSA, 40, 4);
2164     TEST_FIELD(WNDCLASSA, UINT, style, 0, 4, 4);
2165     TEST_FIELD(WNDCLASSA, WNDPROC, lpfnWndProc, 4, 4, 4);
2166     TEST_FIELD(WNDCLASSA, INT, cbClsExtra, 8, 4, 4);
2167     TEST_FIELD(WNDCLASSA, INT, cbWndExtra, 12, 4, 4);
2168     TEST_FIELD(WNDCLASSA, HINSTANCE, hInstance, 16, 4, 4);
2169     TEST_FIELD(WNDCLASSA, HICON, hIcon, 20, 4, 4);
2170     TEST_FIELD(WNDCLASSA, HCURSOR, hCursor, 24, 4, 4);
2171     TEST_FIELD(WNDCLASSA, HBRUSH, hbrBackground, 28, 4, 4);
2172     TEST_FIELD(WNDCLASSA, LPCSTR, lpszMenuName, 32, 4, 4);
2173     TEST_FIELD(WNDCLASSA, LPCSTR, lpszClassName, 36, 4, 4);
2174 }
2175
2176 static void test_pack_WNDCLASSEXA(void)
2177 {
2178     /* WNDCLASSEXA (pack 4) */
2179     TEST_TYPE(WNDCLASSEXA, 48, 4);
2180     TEST_FIELD(WNDCLASSEXA, UINT, cbSize, 0, 4, 4);
2181     TEST_FIELD(WNDCLASSEXA, UINT, style, 4, 4, 4);
2182     TEST_FIELD(WNDCLASSEXA, WNDPROC, lpfnWndProc, 8, 4, 4);
2183     TEST_FIELD(WNDCLASSEXA, INT, cbClsExtra, 12, 4, 4);
2184     TEST_FIELD(WNDCLASSEXA, INT, cbWndExtra, 16, 4, 4);
2185     TEST_FIELD(WNDCLASSEXA, HINSTANCE, hInstance, 20, 4, 4);
2186     TEST_FIELD(WNDCLASSEXA, HICON, hIcon, 24, 4, 4);
2187     TEST_FIELD(WNDCLASSEXA, HCURSOR, hCursor, 28, 4, 4);
2188     TEST_FIELD(WNDCLASSEXA, HBRUSH, hbrBackground, 32, 4, 4);
2189     TEST_FIELD(WNDCLASSEXA, LPCSTR, lpszMenuName, 36, 4, 4);
2190     TEST_FIELD(WNDCLASSEXA, LPCSTR, lpszClassName, 40, 4, 4);
2191     TEST_FIELD(WNDCLASSEXA, HICON, hIconSm, 44, 4, 4);
2192 }
2193
2194 static void test_pack_WNDCLASSEXW(void)
2195 {
2196     /* WNDCLASSEXW (pack 4) */
2197     TEST_TYPE(WNDCLASSEXW, 48, 4);
2198     TEST_FIELD(WNDCLASSEXW, UINT, cbSize, 0, 4, 4);
2199     TEST_FIELD(WNDCLASSEXW, UINT, style, 4, 4, 4);
2200     TEST_FIELD(WNDCLASSEXW, WNDPROC, lpfnWndProc, 8, 4, 4);
2201     TEST_FIELD(WNDCLASSEXW, INT, cbClsExtra, 12, 4, 4);
2202     TEST_FIELD(WNDCLASSEXW, INT, cbWndExtra, 16, 4, 4);
2203     TEST_FIELD(WNDCLASSEXW, HINSTANCE, hInstance, 20, 4, 4);
2204     TEST_FIELD(WNDCLASSEXW, HICON, hIcon, 24, 4, 4);
2205     TEST_FIELD(WNDCLASSEXW, HCURSOR, hCursor, 28, 4, 4);
2206     TEST_FIELD(WNDCLASSEXW, HBRUSH, hbrBackground, 32, 4, 4);
2207     TEST_FIELD(WNDCLASSEXW, LPCWSTR, lpszMenuName, 36, 4, 4);
2208     TEST_FIELD(WNDCLASSEXW, LPCWSTR, lpszClassName, 40, 4, 4);
2209     TEST_FIELD(WNDCLASSEXW, HICON, hIconSm, 44, 4, 4);
2210 }
2211
2212 static void test_pack_WNDCLASSW(void)
2213 {
2214     /* WNDCLASSW (pack 4) */
2215     TEST_TYPE(WNDCLASSW, 40, 4);
2216     TEST_FIELD(WNDCLASSW, UINT, style, 0, 4, 4);
2217     TEST_FIELD(WNDCLASSW, WNDPROC, lpfnWndProc, 4, 4, 4);
2218     TEST_FIELD(WNDCLASSW, INT, cbClsExtra, 8, 4, 4);
2219     TEST_FIELD(WNDCLASSW, INT, cbWndExtra, 12, 4, 4);
2220     TEST_FIELD(WNDCLASSW, HINSTANCE, hInstance, 16, 4, 4);
2221     TEST_FIELD(WNDCLASSW, HICON, hIcon, 20, 4, 4);
2222     TEST_FIELD(WNDCLASSW, HCURSOR, hCursor, 24, 4, 4);
2223     TEST_FIELD(WNDCLASSW, HBRUSH, hbrBackground, 28, 4, 4);
2224     TEST_FIELD(WNDCLASSW, LPCWSTR, lpszMenuName, 32, 4, 4);
2225     TEST_FIELD(WNDCLASSW, LPCWSTR, lpszClassName, 36, 4, 4);
2226 }
2227
2228 static void test_pack_WNDENUMPROC(void)
2229 {
2230     /* WNDENUMPROC */
2231     TEST_TYPE(WNDENUMPROC, 4, 4);
2232 }
2233
2234 static void test_pack_WNDPROC(void)
2235 {
2236     /* WNDPROC */
2237     TEST_TYPE(WNDPROC, 4, 4);
2238 }
2239
2240 static void test_pack(void)
2241 {
2242     test_pack_ACCEL();
2243     test_pack_ACCESSTIMEOUT();
2244     test_pack_ANIMATIONINFO();
2245     test_pack_CBTACTIVATESTRUCT();
2246     test_pack_CBT_CREATEWNDA();
2247     test_pack_CBT_CREATEWNDW();
2248     test_pack_CLIENTCREATESTRUCT();
2249     test_pack_COMBOBOXINFO();
2250     test_pack_COMPAREITEMSTRUCT();
2251     test_pack_COPYDATASTRUCT();
2252     test_pack_CREATESTRUCTA();
2253     test_pack_CREATESTRUCTW();
2254     test_pack_CURSORINFO();
2255     test_pack_CWPRETSTRUCT();
2256     test_pack_CWPSTRUCT();
2257     test_pack_DEBUGHOOKINFO();
2258     test_pack_DELETEITEMSTRUCT();
2259     test_pack_DESKTOPENUMPROCA();
2260     test_pack_DESKTOPENUMPROCW();
2261     test_pack_DLGITEMTEMPLATE();
2262     test_pack_DLGPROC();
2263     test_pack_DLGTEMPLATE();
2264     test_pack_DRAWITEMSTRUCT();
2265     test_pack_DRAWSTATEPROC();
2266     test_pack_DRAWTEXTPARAMS();
2267     test_pack_EDITWORDBREAKPROCA();
2268     test_pack_EDITWORDBREAKPROCW();
2269     test_pack_EVENTMSG();
2270     test_pack_FILTERKEYS();
2271     test_pack_FLASHWINFO();
2272     test_pack_GRAYSTRINGPROC();
2273     test_pack_GUITHREADINFO();
2274     test_pack_HARDWAREHOOKSTRUCT();
2275     test_pack_HARDWAREINPUT();
2276     test_pack_HDEVNOTIFY();
2277     test_pack_HDWP();
2278     test_pack_HELPINFO();
2279     test_pack_HELPWININFOA();
2280     test_pack_HELPWININFOW();
2281     test_pack_HIGHCONTRASTA();
2282     test_pack_HIGHCONTRASTW();
2283     test_pack_HOOKPROC();
2284     test_pack_ICONINFO();
2285     test_pack_ICONMETRICSA();
2286     test_pack_ICONMETRICSW();
2287     test_pack_INPUT();
2288     test_pack_KBDLLHOOKSTRUCT();
2289     test_pack_KEYBDINPUT();
2290     test_pack_LPACCEL();
2291     test_pack_LPACCESSTIMEOUT();
2292     test_pack_LPANIMATIONINFO();
2293     test_pack_LPCBTACTIVATESTRUCT();
2294     test_pack_LPCBT_CREATEWNDA();
2295     test_pack_LPCBT_CREATEWNDW();
2296     test_pack_LPCDLGTEMPLATEA();
2297     test_pack_LPCDLGTEMPLATEW();
2298     test_pack_LPCLIENTCREATESTRUCT();
2299     test_pack_LPCMENUINFO();
2300     test_pack_LPCMENUITEMINFOA();
2301     test_pack_LPCMENUITEMINFOW();
2302     test_pack_LPCOMBOBOXINFO();
2303     test_pack_LPCOMPAREITEMSTRUCT();
2304     test_pack_LPCREATESTRUCTA();
2305     test_pack_LPCREATESTRUCTW();
2306     test_pack_LPCSCROLLINFO();
2307     test_pack_LPCURSORINFO();
2308     test_pack_LPCWPRETSTRUCT();
2309     test_pack_LPCWPSTRUCT();
2310     test_pack_LPDEBUGHOOKINFO();
2311     test_pack_LPDELETEITEMSTRUCT();
2312     test_pack_LPDLGITEMTEMPLATEA();
2313     test_pack_LPDLGITEMTEMPLATEW();
2314     test_pack_LPDLGTEMPLATEA();
2315     test_pack_LPDLGTEMPLATEW();
2316     test_pack_LPDRAWITEMSTRUCT();
2317     test_pack_LPDRAWTEXTPARAMS();
2318     test_pack_LPEVENTMSG();
2319     test_pack_LPFILTERKEYS();
2320     test_pack_LPGUITHREADINFO();
2321     test_pack_LPHARDWAREHOOKSTRUCT();
2322     test_pack_LPHARDWAREINPUT();
2323     test_pack_LPHELPINFO();
2324     test_pack_LPHELPWININFOA();
2325     test_pack_LPHELPWININFOW();
2326     test_pack_LPHIGHCONTRASTA();
2327     test_pack_LPHIGHCONTRASTW();
2328     test_pack_LPICONMETRICSA();
2329     test_pack_LPICONMETRICSW();
2330     test_pack_LPINPUT();
2331     test_pack_LPKBDLLHOOKSTRUCT();
2332     test_pack_LPKEYBDINPUT();
2333     test_pack_LPMDICREATESTRUCTA();
2334     test_pack_LPMDICREATESTRUCTW();
2335     test_pack_LPMDINEXTMENU();
2336     test_pack_LPMEASUREITEMSTRUCT();
2337     test_pack_LPMENUINFO();
2338     test_pack_LPMENUITEMINFOA();
2339     test_pack_LPMENUITEMINFOW();
2340     test_pack_LPMINIMIZEDMETRICS();
2341     test_pack_LPMINMAXINFO();
2342     test_pack_LPMONITORINFO();
2343     test_pack_LPMONITORINFOEXA();
2344     test_pack_LPMONITORINFOEXW();
2345     test_pack_LPMOUSEHOOKSTRUCT();
2346     test_pack_LPMOUSEINPUT();
2347     test_pack_LPMOUSEKEYS();
2348     test_pack_LPMSG();
2349     test_pack_LPMSGBOXPARAMSA();
2350     test_pack_LPMSGBOXPARAMSW();
2351     test_pack_LPMSLLHOOKSTRUCT();
2352     test_pack_LPMULTIKEYHELPA();
2353     test_pack_LPMULTIKEYHELPW();
2354     test_pack_LPNCCALCSIZE_PARAMS();
2355     test_pack_LPNMHDR();
2356     test_pack_LPNONCLIENTMETRICSA();
2357     test_pack_LPNONCLIENTMETRICSW();
2358     test_pack_LPPAINTSTRUCT();
2359     test_pack_LPSCROLLINFO();
2360     test_pack_LPSERIALKEYSA();
2361     test_pack_LPSERIALKEYSW();
2362     test_pack_LPSOUNDSENTRYA();
2363     test_pack_LPSOUNDSENTRYW();
2364     test_pack_LPSTICKYKEYS();
2365     test_pack_LPSTYLESTRUCT();
2366     test_pack_LPTITLEBARINFO();
2367     test_pack_LPTOGGLEKEYS();
2368     test_pack_LPTPMPARAMS();
2369     test_pack_LPTRACKMOUSEEVENT();
2370     test_pack_LPWINDOWINFO();
2371     test_pack_LPWINDOWPLACEMENT();
2372     test_pack_LPWINDOWPOS();
2373     test_pack_LPWNDCLASSA();
2374     test_pack_LPWNDCLASSEXA();
2375     test_pack_LPWNDCLASSEXW();
2376     test_pack_LPWNDCLASSW();
2377     test_pack_MDICREATESTRUCTA();
2378     test_pack_MDICREATESTRUCTW();
2379     test_pack_MDINEXTMENU();
2380     test_pack_MEASUREITEMSTRUCT();
2381     test_pack_MENUINFO();
2382     test_pack_MENUITEMINFOA();
2383     test_pack_MENUITEMINFOW();
2384     test_pack_MENUITEMTEMPLATE();
2385     test_pack_MENUITEMTEMPLATEHEADER();
2386     test_pack_MINIMIZEDMETRICS();
2387     test_pack_MINMAXINFO();
2388     test_pack_MONITORENUMPROC();
2389     test_pack_MONITORINFO();
2390     test_pack_MONITORINFOEXA();
2391     test_pack_MONITORINFOEXW();
2392     test_pack_MOUSEHOOKSTRUCT();
2393     test_pack_MOUSEINPUT();
2394     test_pack_MOUSEKEYS();
2395     test_pack_MSG();
2396     test_pack_MSGBOXCALLBACK();
2397     test_pack_MSGBOXPARAMSA();
2398     test_pack_MSGBOXPARAMSW();
2399     test_pack_MSLLHOOKSTRUCT();
2400     test_pack_MULTIKEYHELPA();
2401     test_pack_MULTIKEYHELPW();
2402     test_pack_NAMEENUMPROCA();
2403     test_pack_NAMEENUMPROCW();
2404     test_pack_NCCALCSIZE_PARAMS();
2405     test_pack_NMHDR();
2406     test_pack_NONCLIENTMETRICSA();
2407     test_pack_NONCLIENTMETRICSW();
2408     test_pack_PAINTSTRUCT();
2409     test_pack_PCOMBOBOXINFO();
2410     test_pack_PCOMPAREITEMSTRUCT();
2411     test_pack_PCOPYDATASTRUCT();
2412     test_pack_PCURSORINFO();
2413     test_pack_PCWPRETSTRUCT();
2414     test_pack_PCWPSTRUCT();
2415     test_pack_PDEBUGHOOKINFO();
2416     test_pack_PDELETEITEMSTRUCT();
2417     test_pack_PDLGITEMTEMPLATEA();
2418     test_pack_PDLGITEMTEMPLATEW();
2419     test_pack_PDRAWITEMSTRUCT();
2420     test_pack_PEVENTMSG();
2421     test_pack_PFLASHWINFO();
2422     test_pack_PGUITHREADINFO();
2423     test_pack_PHARDWAREHOOKSTRUCT();
2424     test_pack_PHARDWAREINPUT();
2425     test_pack_PHDEVNOTIFY();
2426     test_pack_PHELPWININFOA();
2427     test_pack_PHELPWININFOW();
2428     test_pack_PICONINFO();
2429     test_pack_PICONMETRICSA();
2430     test_pack_PICONMETRICSW();
2431     test_pack_PINPUT();
2432     test_pack_PKBDLLHOOKSTRUCT();
2433     test_pack_PKEYBDINPUT();
2434     test_pack_PMDINEXTMENU();
2435     test_pack_PMEASUREITEMSTRUCT();
2436     test_pack_PMENUITEMTEMPLATE();
2437     test_pack_PMENUITEMTEMPLATEHEADER();
2438     test_pack_PMINIMIZEDMETRICS();
2439     test_pack_PMINMAXINFO();
2440     test_pack_PMOUSEHOOKSTRUCT();
2441     test_pack_PMOUSEINPUT();
2442     test_pack_PMSG();
2443     test_pack_PMSGBOXPARAMSA();
2444     test_pack_PMSGBOXPARAMSW();
2445     test_pack_PMSLLHOOKSTRUCT();
2446     test_pack_PMULTIKEYHELPA();
2447     test_pack_PMULTIKEYHELPW();
2448     test_pack_PNONCLIENTMETRICSA();
2449     test_pack_PNONCLIENTMETRICSW();
2450     test_pack_PPAINTSTRUCT();
2451     test_pack_PROPENUMPROCA();
2452     test_pack_PROPENUMPROCEXA();
2453     test_pack_PROPENUMPROCEXW();
2454     test_pack_PROPENUMPROCW();
2455     test_pack_PTITLEBARINFO();
2456     test_pack_PUSEROBJECTFLAGS();
2457     test_pack_PWINDOWINFO();
2458     test_pack_PWINDOWPLACEMENT();
2459     test_pack_PWINDOWPOS();
2460     test_pack_PWNDCLASSA();
2461     test_pack_PWNDCLASSEXA();
2462     test_pack_PWNDCLASSEXW();
2463     test_pack_PWNDCLASSW();
2464     test_pack_SCROLLINFO();
2465     test_pack_SENDASYNCPROC();
2466     test_pack_SERIALKEYSA();
2467     test_pack_SERIALKEYSW();
2468     test_pack_SOUNDSENTRYA();
2469     test_pack_SOUNDSENTRYW();
2470     test_pack_STICKYKEYS();
2471     test_pack_STYLESTRUCT();
2472     test_pack_TIMERPROC();
2473     test_pack_TITLEBARINFO();
2474     test_pack_TOGGLEKEYS();
2475     test_pack_TPMPARAMS();
2476     test_pack_TRACKMOUSEEVENT();
2477     test_pack_USEROBJECTFLAGS();
2478     test_pack_WINDOWINFO();
2479     test_pack_WINDOWPLACEMENT();
2480     test_pack_WINDOWPOS();
2481     test_pack_WINEVENTPROC();
2482     test_pack_WINSTAENUMPROCA();
2483     test_pack_WINSTAENUMPROCW();
2484     test_pack_WNDCLASSA();
2485     test_pack_WNDCLASSEXA();
2486     test_pack_WNDCLASSEXW();
2487     test_pack_WNDCLASSW();
2488     test_pack_WNDENUMPROC();
2489     test_pack_WNDPROC();
2490 }
2491
2492 START_TEST(generated)
2493 {
2494     test_pack();
2495 }