Declaration, implemention and test for BuildTrusteeWithSid.
[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_KBDLLHOOKSTRUCT(void)
565 {
566     /* KBDLLHOOKSTRUCT (pack 4) */
567     TEST_TYPE(KBDLLHOOKSTRUCT, 20, 4);
568     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, vkCode, 0, 4, 4);
569     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, scanCode, 4, 4, 4);
570     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, flags, 8, 4, 4);
571     TEST_FIELD(KBDLLHOOKSTRUCT, DWORD, time, 12, 4, 4);
572     TEST_FIELD(KBDLLHOOKSTRUCT, ULONG_PTR, dwExtraInfo, 16, 4, 4);
573 }
574
575 static void test_pack_KEYBDINPUT(void)
576 {
577     /* KEYBDINPUT (pack 4) */
578     TEST_TYPE(KEYBDINPUT, 16, 4);
579     TEST_FIELD(KEYBDINPUT, WORD, wVk, 0, 2, 2);
580     TEST_FIELD(KEYBDINPUT, WORD, wScan, 2, 2, 2);
581     TEST_FIELD(KEYBDINPUT, DWORD, dwFlags, 4, 4, 4);
582     TEST_FIELD(KEYBDINPUT, DWORD, time, 8, 4, 4);
583     TEST_FIELD(KEYBDINPUT, ULONG_PTR, dwExtraInfo, 12, 4, 4);
584 }
585
586 static void test_pack_LPACCEL(void)
587 {
588     /* LPACCEL */
589     TEST_TYPE(LPACCEL, 4, 4);
590     TEST_TYPE_POINTER(LPACCEL, 6, 2);
591 }
592
593 static void test_pack_LPACCESSTIMEOUT(void)
594 {
595     /* LPACCESSTIMEOUT */
596     TEST_TYPE(LPACCESSTIMEOUT, 4, 4);
597     TEST_TYPE_POINTER(LPACCESSTIMEOUT, 12, 4);
598 }
599
600 static void test_pack_LPANIMATIONINFO(void)
601 {
602     /* LPANIMATIONINFO */
603     TEST_TYPE(LPANIMATIONINFO, 4, 4);
604     TEST_TYPE_POINTER(LPANIMATIONINFO, 8, 4);
605 }
606
607 static void test_pack_LPCBTACTIVATESTRUCT(void)
608 {
609     /* LPCBTACTIVATESTRUCT */
610     TEST_TYPE(LPCBTACTIVATESTRUCT, 4, 4);
611     TEST_TYPE_POINTER(LPCBTACTIVATESTRUCT, 8, 4);
612 }
613
614 static void test_pack_LPCBT_CREATEWNDA(void)
615 {
616     /* LPCBT_CREATEWNDA */
617     TEST_TYPE(LPCBT_CREATEWNDA, 4, 4);
618     TEST_TYPE_POINTER(LPCBT_CREATEWNDA, 8, 4);
619 }
620
621 static void test_pack_LPCBT_CREATEWNDW(void)
622 {
623     /* LPCBT_CREATEWNDW */
624     TEST_TYPE(LPCBT_CREATEWNDW, 4, 4);
625     TEST_TYPE_POINTER(LPCBT_CREATEWNDW, 8, 4);
626 }
627
628 static void test_pack_LPCDLGTEMPLATEA(void)
629 {
630     /* LPCDLGTEMPLATEA */
631     TEST_TYPE(LPCDLGTEMPLATEA, 4, 4);
632     TEST_TYPE_POINTER(LPCDLGTEMPLATEA, 18, 2);
633 }
634
635 static void test_pack_LPCDLGTEMPLATEW(void)
636 {
637     /* LPCDLGTEMPLATEW */
638     TEST_TYPE(LPCDLGTEMPLATEW, 4, 4);
639     TEST_TYPE_POINTER(LPCDLGTEMPLATEW, 18, 2);
640 }
641
642 static void test_pack_LPCLIENTCREATESTRUCT(void)
643 {
644     /* LPCLIENTCREATESTRUCT */
645     TEST_TYPE(LPCLIENTCREATESTRUCT, 4, 4);
646     TEST_TYPE_POINTER(LPCLIENTCREATESTRUCT, 8, 4);
647 }
648
649 static void test_pack_LPCMENUINFO(void)
650 {
651     /* LPCMENUINFO */
652     TEST_TYPE(LPCMENUINFO, 4, 4);
653     TEST_TYPE_POINTER(LPCMENUINFO, 28, 4);
654 }
655
656 static void test_pack_LPCMENUITEMINFOA(void)
657 {
658     /* LPCMENUITEMINFOA */
659     TEST_TYPE(LPCMENUITEMINFOA, 4, 4);
660     TEST_TYPE_POINTER(LPCMENUITEMINFOA, 48, 4);
661 }
662
663 static void test_pack_LPCMENUITEMINFOW(void)
664 {
665     /* LPCMENUITEMINFOW */
666     TEST_TYPE(LPCMENUITEMINFOW, 4, 4);
667     TEST_TYPE_POINTER(LPCMENUITEMINFOW, 48, 4);
668 }
669
670 static void test_pack_LPCOMBOBOXINFO(void)
671 {
672     /* LPCOMBOBOXINFO */
673     TEST_TYPE(LPCOMBOBOXINFO, 4, 4);
674     TEST_TYPE_POINTER(LPCOMBOBOXINFO, 52, 4);
675 }
676
677 static void test_pack_LPCOMPAREITEMSTRUCT(void)
678 {
679     /* LPCOMPAREITEMSTRUCT */
680     TEST_TYPE(LPCOMPAREITEMSTRUCT, 4, 4);
681     TEST_TYPE_POINTER(LPCOMPAREITEMSTRUCT, 32, 4);
682 }
683
684 static void test_pack_LPCREATESTRUCTA(void)
685 {
686     /* LPCREATESTRUCTA */
687     TEST_TYPE(LPCREATESTRUCTA, 4, 4);
688     TEST_TYPE_POINTER(LPCREATESTRUCTA, 48, 4);
689 }
690
691 static void test_pack_LPCREATESTRUCTW(void)
692 {
693     /* LPCREATESTRUCTW */
694     TEST_TYPE(LPCREATESTRUCTW, 4, 4);
695     TEST_TYPE_POINTER(LPCREATESTRUCTW, 48, 4);
696 }
697
698 static void test_pack_LPCSCROLLINFO(void)
699 {
700     /* LPCSCROLLINFO */
701     TEST_TYPE(LPCSCROLLINFO, 4, 4);
702     TEST_TYPE_POINTER(LPCSCROLLINFO, 28, 4);
703 }
704
705 static void test_pack_LPCURSORINFO(void)
706 {
707     /* LPCURSORINFO */
708     TEST_TYPE(LPCURSORINFO, 4, 4);
709     TEST_TYPE_POINTER(LPCURSORINFO, 20, 4);
710 }
711
712 static void test_pack_LPCWPRETSTRUCT(void)
713 {
714     /* LPCWPRETSTRUCT */
715     TEST_TYPE(LPCWPRETSTRUCT, 4, 4);
716     TEST_TYPE_POINTER(LPCWPRETSTRUCT, 20, 4);
717 }
718
719 static void test_pack_LPCWPSTRUCT(void)
720 {
721     /* LPCWPSTRUCT */
722     TEST_TYPE(LPCWPSTRUCT, 4, 4);
723     TEST_TYPE_POINTER(LPCWPSTRUCT, 16, 4);
724 }
725
726 static void test_pack_LPDEBUGHOOKINFO(void)
727 {
728     /* LPDEBUGHOOKINFO */
729     TEST_TYPE(LPDEBUGHOOKINFO, 4, 4);
730     TEST_TYPE_POINTER(LPDEBUGHOOKINFO, 20, 4);
731 }
732
733 static void test_pack_LPDELETEITEMSTRUCT(void)
734 {
735     /* LPDELETEITEMSTRUCT */
736     TEST_TYPE(LPDELETEITEMSTRUCT, 4, 4);
737     TEST_TYPE_POINTER(LPDELETEITEMSTRUCT, 20, 4);
738 }
739
740 static void test_pack_LPDLGITEMTEMPLATEA(void)
741 {
742     /* LPDLGITEMTEMPLATEA */
743     TEST_TYPE(LPDLGITEMTEMPLATEA, 4, 4);
744     TEST_TYPE_POINTER(LPDLGITEMTEMPLATEA, 18, 2);
745 }
746
747 static void test_pack_LPDLGITEMTEMPLATEW(void)
748 {
749     /* LPDLGITEMTEMPLATEW */
750     TEST_TYPE(LPDLGITEMTEMPLATEW, 4, 4);
751     TEST_TYPE_POINTER(LPDLGITEMTEMPLATEW, 18, 2);
752 }
753
754 static void test_pack_LPDLGTEMPLATEA(void)
755 {
756     /* LPDLGTEMPLATEA */
757     TEST_TYPE(LPDLGTEMPLATEA, 4, 4);
758     TEST_TYPE_POINTER(LPDLGTEMPLATEA, 18, 2);
759 }
760
761 static void test_pack_LPDLGTEMPLATEW(void)
762 {
763     /* LPDLGTEMPLATEW */
764     TEST_TYPE(LPDLGTEMPLATEW, 4, 4);
765     TEST_TYPE_POINTER(LPDLGTEMPLATEW, 18, 2);
766 }
767
768 static void test_pack_LPDRAWITEMSTRUCT(void)
769 {
770     /* LPDRAWITEMSTRUCT */
771     TEST_TYPE(LPDRAWITEMSTRUCT, 4, 4);
772     TEST_TYPE_POINTER(LPDRAWITEMSTRUCT, 48, 4);
773 }
774
775 static void test_pack_LPDRAWTEXTPARAMS(void)
776 {
777     /* LPDRAWTEXTPARAMS */
778     TEST_TYPE(LPDRAWTEXTPARAMS, 4, 4);
779     TEST_TYPE_POINTER(LPDRAWTEXTPARAMS, 20, 4);
780 }
781
782 static void test_pack_LPEVENTMSG(void)
783 {
784     /* LPEVENTMSG */
785     TEST_TYPE(LPEVENTMSG, 4, 4);
786     TEST_TYPE_POINTER(LPEVENTMSG, 20, 4);
787 }
788
789 static void test_pack_LPFILTERKEYS(void)
790 {
791     /* LPFILTERKEYS */
792     TEST_TYPE(LPFILTERKEYS, 4, 4);
793     TEST_TYPE_POINTER(LPFILTERKEYS, 24, 4);
794 }
795
796 static void test_pack_LPGUITHREADINFO(void)
797 {
798     /* LPGUITHREADINFO */
799     TEST_TYPE(LPGUITHREADINFO, 4, 4);
800     TEST_TYPE_POINTER(LPGUITHREADINFO, 48, 4);
801 }
802
803 static void test_pack_LPHARDWAREHOOKSTRUCT(void)
804 {
805     /* LPHARDWAREHOOKSTRUCT */
806     TEST_TYPE(LPHARDWAREHOOKSTRUCT, 4, 4);
807     TEST_TYPE_POINTER(LPHARDWAREHOOKSTRUCT, 16, 4);
808 }
809
810 static void test_pack_LPHARDWAREINPUT(void)
811 {
812     /* LPHARDWAREINPUT */
813     TEST_TYPE(LPHARDWAREINPUT, 4, 4);
814     TEST_TYPE_POINTER(LPHARDWAREINPUT, 8, 4);
815 }
816
817 static void test_pack_LPHELPINFO(void)
818 {
819     /* LPHELPINFO */
820     TEST_TYPE(LPHELPINFO, 4, 4);
821     TEST_TYPE_POINTER(LPHELPINFO, 28, 4);
822 }
823
824 static void test_pack_LPHELPWININFOA(void)
825 {
826     /* LPHELPWININFOA */
827     TEST_TYPE(LPHELPWININFOA, 4, 4);
828     TEST_TYPE_POINTER(LPHELPWININFOA, 28, 4);
829 }
830
831 static void test_pack_LPHELPWININFOW(void)
832 {
833     /* LPHELPWININFOW */
834     TEST_TYPE(LPHELPWININFOW, 4, 4);
835     TEST_TYPE_POINTER(LPHELPWININFOW, 28, 4);
836 }
837
838 static void test_pack_LPHIGHCONTRASTA(void)
839 {
840     /* LPHIGHCONTRASTA */
841     TEST_TYPE(LPHIGHCONTRASTA, 4, 4);
842     TEST_TYPE_POINTER(LPHIGHCONTRASTA, 12, 4);
843 }
844
845 static void test_pack_LPHIGHCONTRASTW(void)
846 {
847     /* LPHIGHCONTRASTW */
848     TEST_TYPE(LPHIGHCONTRASTW, 4, 4);
849     TEST_TYPE_POINTER(LPHIGHCONTRASTW, 12, 4);
850 }
851
852 static void test_pack_LPICONMETRICSA(void)
853 {
854     /* LPICONMETRICSA */
855     TEST_TYPE(LPICONMETRICSA, 4, 4);
856     TEST_TYPE_POINTER(LPICONMETRICSA, 76, 4);
857 }
858
859 static void test_pack_LPICONMETRICSW(void)
860 {
861     /* LPICONMETRICSW */
862     TEST_TYPE(LPICONMETRICSW, 4, 4);
863     TEST_TYPE_POINTER(LPICONMETRICSW, 108, 4);
864 }
865
866 static void test_pack_LPKBDLLHOOKSTRUCT(void)
867 {
868     /* LPKBDLLHOOKSTRUCT */
869     TEST_TYPE(LPKBDLLHOOKSTRUCT, 4, 4);
870     TEST_TYPE_POINTER(LPKBDLLHOOKSTRUCT, 20, 4);
871 }
872
873 static void test_pack_LPKEYBDINPUT(void)
874 {
875     /* LPKEYBDINPUT */
876     TEST_TYPE(LPKEYBDINPUT, 4, 4);
877     TEST_TYPE_POINTER(LPKEYBDINPUT, 16, 4);
878 }
879
880 static void test_pack_LPMDICREATESTRUCTA(void)
881 {
882     /* LPMDICREATESTRUCTA */
883     TEST_TYPE(LPMDICREATESTRUCTA, 4, 4);
884     TEST_TYPE_POINTER(LPMDICREATESTRUCTA, 36, 4);
885 }
886
887 static void test_pack_LPMDICREATESTRUCTW(void)
888 {
889     /* LPMDICREATESTRUCTW */
890     TEST_TYPE(LPMDICREATESTRUCTW, 4, 4);
891     TEST_TYPE_POINTER(LPMDICREATESTRUCTW, 36, 4);
892 }
893
894 static void test_pack_LPMDINEXTMENU(void)
895 {
896     /* LPMDINEXTMENU */
897     TEST_TYPE(LPMDINEXTMENU, 4, 4);
898     TEST_TYPE_POINTER(LPMDINEXTMENU, 12, 4);
899 }
900
901 static void test_pack_LPMEASUREITEMSTRUCT(void)
902 {
903     /* LPMEASUREITEMSTRUCT */
904     TEST_TYPE(LPMEASUREITEMSTRUCT, 4, 4);
905     TEST_TYPE_POINTER(LPMEASUREITEMSTRUCT, 24, 4);
906 }
907
908 static void test_pack_LPMENUINFO(void)
909 {
910     /* LPMENUINFO */
911     TEST_TYPE(LPMENUINFO, 4, 4);
912     TEST_TYPE_POINTER(LPMENUINFO, 28, 4);
913 }
914
915 static void test_pack_LPMENUITEMINFOA(void)
916 {
917     /* LPMENUITEMINFOA */
918     TEST_TYPE(LPMENUITEMINFOA, 4, 4);
919     TEST_TYPE_POINTER(LPMENUITEMINFOA, 48, 4);
920 }
921
922 static void test_pack_LPMENUITEMINFOW(void)
923 {
924     /* LPMENUITEMINFOW */
925     TEST_TYPE(LPMENUITEMINFOW, 4, 4);
926     TEST_TYPE_POINTER(LPMENUITEMINFOW, 48, 4);
927 }
928
929 static void test_pack_LPMINIMIZEDMETRICS(void)
930 {
931     /* LPMINIMIZEDMETRICS */
932     TEST_TYPE(LPMINIMIZEDMETRICS, 4, 4);
933     TEST_TYPE_POINTER(LPMINIMIZEDMETRICS, 20, 4);
934 }
935
936 static void test_pack_LPMINMAXINFO(void)
937 {
938     /* LPMINMAXINFO */
939     TEST_TYPE(LPMINMAXINFO, 4, 4);
940     TEST_TYPE_POINTER(LPMINMAXINFO, 40, 4);
941 }
942
943 static void test_pack_LPMONITORINFO(void)
944 {
945     /* LPMONITORINFO */
946     TEST_TYPE(LPMONITORINFO, 4, 4);
947     TEST_TYPE_POINTER(LPMONITORINFO, 40, 4);
948 }
949
950 static void test_pack_LPMONITORINFOEXA(void)
951 {
952     /* LPMONITORINFOEXA */
953     TEST_TYPE(LPMONITORINFOEXA, 4, 4);
954     TEST_TYPE_POINTER(LPMONITORINFOEXA, 72, 4);
955 }
956
957 static void test_pack_LPMONITORINFOEXW(void)
958 {
959     /* LPMONITORINFOEXW */
960     TEST_TYPE(LPMONITORINFOEXW, 4, 4);
961     TEST_TYPE_POINTER(LPMONITORINFOEXW, 104, 4);
962 }
963
964 static void test_pack_LPMOUSEHOOKSTRUCT(void)
965 {
966     /* LPMOUSEHOOKSTRUCT */
967     TEST_TYPE(LPMOUSEHOOKSTRUCT, 4, 4);
968     TEST_TYPE_POINTER(LPMOUSEHOOKSTRUCT, 20, 4);
969 }
970
971 static void test_pack_LPMOUSEINPUT(void)
972 {
973     /* LPMOUSEINPUT */
974     TEST_TYPE(LPMOUSEINPUT, 4, 4);
975     TEST_TYPE_POINTER(LPMOUSEINPUT, 24, 4);
976 }
977
978 static void test_pack_LPMOUSEKEYS(void)
979 {
980     /* LPMOUSEKEYS */
981     TEST_TYPE(LPMOUSEKEYS, 4, 4);
982     TEST_TYPE_POINTER(LPMOUSEKEYS, 28, 4);
983 }
984
985 static void test_pack_LPMSG(void)
986 {
987     /* LPMSG */
988     TEST_TYPE(LPMSG, 4, 4);
989     TEST_TYPE_POINTER(LPMSG, 28, 4);
990 }
991
992 static void test_pack_LPMSGBOXPARAMSA(void)
993 {
994     /* LPMSGBOXPARAMSA */
995     TEST_TYPE(LPMSGBOXPARAMSA, 4, 4);
996     TEST_TYPE_POINTER(LPMSGBOXPARAMSA, 40, 4);
997 }
998
999 static void test_pack_LPMSGBOXPARAMSW(void)
1000 {
1001     /* LPMSGBOXPARAMSW */
1002     TEST_TYPE(LPMSGBOXPARAMSW, 4, 4);
1003     TEST_TYPE_POINTER(LPMSGBOXPARAMSW, 40, 4);
1004 }
1005
1006 static void test_pack_LPMSLLHOOKSTRUCT(void)
1007 {
1008     /* LPMSLLHOOKSTRUCT */
1009     TEST_TYPE(LPMSLLHOOKSTRUCT, 4, 4);
1010     TEST_TYPE_POINTER(LPMSLLHOOKSTRUCT, 24, 4);
1011 }
1012
1013 static void test_pack_LPMULTIKEYHELPA(void)
1014 {
1015     /* LPMULTIKEYHELPA */
1016     TEST_TYPE(LPMULTIKEYHELPA, 4, 4);
1017     TEST_TYPE_POINTER(LPMULTIKEYHELPA, 8, 4);
1018 }
1019
1020 static void test_pack_LPMULTIKEYHELPW(void)
1021 {
1022     /* LPMULTIKEYHELPW */
1023     TEST_TYPE(LPMULTIKEYHELPW, 4, 4);
1024     TEST_TYPE_POINTER(LPMULTIKEYHELPW, 8, 4);
1025 }
1026
1027 static void test_pack_LPNCCALCSIZE_PARAMS(void)
1028 {
1029     /* LPNCCALCSIZE_PARAMS */
1030     TEST_TYPE(LPNCCALCSIZE_PARAMS, 4, 4);
1031     TEST_TYPE_POINTER(LPNCCALCSIZE_PARAMS, 52, 4);
1032 }
1033
1034 static void test_pack_LPNMHDR(void)
1035 {
1036     /* LPNMHDR */
1037     TEST_TYPE(LPNMHDR, 4, 4);
1038     TEST_TYPE_POINTER(LPNMHDR, 12, 4);
1039 }
1040
1041 static void test_pack_LPNONCLIENTMETRICSA(void)
1042 {
1043     /* LPNONCLIENTMETRICSA */
1044     TEST_TYPE(LPNONCLIENTMETRICSA, 4, 4);
1045     TEST_TYPE_POINTER(LPNONCLIENTMETRICSA, 340, 4);
1046 }
1047
1048 static void test_pack_LPNONCLIENTMETRICSW(void)
1049 {
1050     /* LPNONCLIENTMETRICSW */
1051     TEST_TYPE(LPNONCLIENTMETRICSW, 4, 4);
1052     TEST_TYPE_POINTER(LPNONCLIENTMETRICSW, 500, 4);
1053 }
1054
1055 static void test_pack_LPPAINTSTRUCT(void)
1056 {
1057     /* LPPAINTSTRUCT */
1058     TEST_TYPE(LPPAINTSTRUCT, 4, 4);
1059     TEST_TYPE_POINTER(LPPAINTSTRUCT, 64, 4);
1060 }
1061
1062 static void test_pack_LPSCROLLINFO(void)
1063 {
1064     /* LPSCROLLINFO */
1065     TEST_TYPE(LPSCROLLINFO, 4, 4);
1066     TEST_TYPE_POINTER(LPSCROLLINFO, 28, 4);
1067 }
1068
1069 static void test_pack_LPSERIALKEYSA(void)
1070 {
1071     /* LPSERIALKEYSA */
1072     TEST_TYPE(LPSERIALKEYSA, 4, 4);
1073     TEST_TYPE_POINTER(LPSERIALKEYSA, 28, 4);
1074 }
1075
1076 static void test_pack_LPSERIALKEYSW(void)
1077 {
1078     /* LPSERIALKEYSW */
1079     TEST_TYPE(LPSERIALKEYSW, 4, 4);
1080     TEST_TYPE_POINTER(LPSERIALKEYSW, 28, 4);
1081 }
1082
1083 static void test_pack_LPSOUNDSENTRYA(void)
1084 {
1085     /* LPSOUNDSENTRYA */
1086     TEST_TYPE(LPSOUNDSENTRYA, 4, 4);
1087     TEST_TYPE_POINTER(LPSOUNDSENTRYA, 48, 4);
1088 }
1089
1090 static void test_pack_LPSOUNDSENTRYW(void)
1091 {
1092     /* LPSOUNDSENTRYW */
1093     TEST_TYPE(LPSOUNDSENTRYW, 4, 4);
1094     TEST_TYPE_POINTER(LPSOUNDSENTRYW, 48, 4);
1095 }
1096
1097 static void test_pack_LPSTICKYKEYS(void)
1098 {
1099     /* LPSTICKYKEYS */
1100     TEST_TYPE(LPSTICKYKEYS, 4, 4);
1101     TEST_TYPE_POINTER(LPSTICKYKEYS, 8, 4);
1102 }
1103
1104 static void test_pack_LPSTYLESTRUCT(void)
1105 {
1106     /* LPSTYLESTRUCT */
1107     TEST_TYPE(LPSTYLESTRUCT, 4, 4);
1108     TEST_TYPE_POINTER(LPSTYLESTRUCT, 8, 4);
1109 }
1110
1111 static void test_pack_LPTITLEBARINFO(void)
1112 {
1113     /* LPTITLEBARINFO */
1114     TEST_TYPE(LPTITLEBARINFO, 4, 4);
1115     TEST_TYPE_POINTER(LPTITLEBARINFO, 44, 4);
1116 }
1117
1118 static void test_pack_LPTOGGLEKEYS(void)
1119 {
1120     /* LPTOGGLEKEYS */
1121     TEST_TYPE(LPTOGGLEKEYS, 4, 4);
1122     TEST_TYPE_POINTER(LPTOGGLEKEYS, 8, 4);
1123 }
1124
1125 static void test_pack_LPTPMPARAMS(void)
1126 {
1127     /* LPTPMPARAMS */
1128     TEST_TYPE(LPTPMPARAMS, 4, 4);
1129     TEST_TYPE_POINTER(LPTPMPARAMS, 20, 4);
1130 }
1131
1132 static void test_pack_LPTRACKMOUSEEVENT(void)
1133 {
1134     /* LPTRACKMOUSEEVENT */
1135     TEST_TYPE(LPTRACKMOUSEEVENT, 4, 4);
1136     TEST_TYPE_POINTER(LPTRACKMOUSEEVENT, 16, 4);
1137 }
1138
1139 static void test_pack_LPWINDOWINFO(void)
1140 {
1141     /* LPWINDOWINFO */
1142     TEST_TYPE(LPWINDOWINFO, 4, 4);
1143     TEST_TYPE_POINTER(LPWINDOWINFO, 60, 4);
1144 }
1145
1146 static void test_pack_LPWINDOWPLACEMENT(void)
1147 {
1148     /* LPWINDOWPLACEMENT */
1149     TEST_TYPE(LPWINDOWPLACEMENT, 4, 4);
1150     TEST_TYPE_POINTER(LPWINDOWPLACEMENT, 44, 4);
1151 }
1152
1153 static void test_pack_LPWINDOWPOS(void)
1154 {
1155     /* LPWINDOWPOS */
1156     TEST_TYPE(LPWINDOWPOS, 4, 4);
1157     TEST_TYPE_POINTER(LPWINDOWPOS, 28, 4);
1158 }
1159
1160 static void test_pack_LPWNDCLASSA(void)
1161 {
1162     /* LPWNDCLASSA */
1163     TEST_TYPE(LPWNDCLASSA, 4, 4);
1164     TEST_TYPE_POINTER(LPWNDCLASSA, 40, 4);
1165 }
1166
1167 static void test_pack_LPWNDCLASSEXA(void)
1168 {
1169     /* LPWNDCLASSEXA */
1170     TEST_TYPE(LPWNDCLASSEXA, 4, 4);
1171     TEST_TYPE_POINTER(LPWNDCLASSEXA, 48, 4);
1172 }
1173
1174 static void test_pack_LPWNDCLASSEXW(void)
1175 {
1176     /* LPWNDCLASSEXW */
1177     TEST_TYPE(LPWNDCLASSEXW, 4, 4);
1178     TEST_TYPE_POINTER(LPWNDCLASSEXW, 48, 4);
1179 }
1180
1181 static void test_pack_LPWNDCLASSW(void)
1182 {
1183     /* LPWNDCLASSW */
1184     TEST_TYPE(LPWNDCLASSW, 4, 4);
1185     TEST_TYPE_POINTER(LPWNDCLASSW, 40, 4);
1186 }
1187
1188 static void test_pack_MDICREATESTRUCTA(void)
1189 {
1190     /* MDICREATESTRUCTA (pack 4) */
1191     TEST_TYPE(MDICREATESTRUCTA, 36, 4);
1192     TEST_FIELD(MDICREATESTRUCTA, LPCSTR, szClass, 0, 4, 4);
1193     TEST_FIELD(MDICREATESTRUCTA, LPCSTR, szTitle, 4, 4, 4);
1194     TEST_FIELD(MDICREATESTRUCTA, HINSTANCE, hOwner, 8, 4, 4);
1195     TEST_FIELD(MDICREATESTRUCTA, INT, x, 12, 4, 4);
1196     TEST_FIELD(MDICREATESTRUCTA, INT, y, 16, 4, 4);
1197     TEST_FIELD(MDICREATESTRUCTA, INT, cx, 20, 4, 4);
1198     TEST_FIELD(MDICREATESTRUCTA, INT, cy, 24, 4, 4);
1199     TEST_FIELD(MDICREATESTRUCTA, DWORD, style, 28, 4, 4);
1200     TEST_FIELD(MDICREATESTRUCTA, LPARAM, lParam, 32, 4, 4);
1201 }
1202
1203 static void test_pack_MDICREATESTRUCTW(void)
1204 {
1205     /* MDICREATESTRUCTW (pack 4) */
1206     TEST_TYPE(MDICREATESTRUCTW, 36, 4);
1207     TEST_FIELD(MDICREATESTRUCTW, LPCWSTR, szClass, 0, 4, 4);
1208     TEST_FIELD(MDICREATESTRUCTW, LPCWSTR, szTitle, 4, 4, 4);
1209     TEST_FIELD(MDICREATESTRUCTW, HINSTANCE, hOwner, 8, 4, 4);
1210     TEST_FIELD(MDICREATESTRUCTW, INT, x, 12, 4, 4);
1211     TEST_FIELD(MDICREATESTRUCTW, INT, y, 16, 4, 4);
1212     TEST_FIELD(MDICREATESTRUCTW, INT, cx, 20, 4, 4);
1213     TEST_FIELD(MDICREATESTRUCTW, INT, cy, 24, 4, 4);
1214     TEST_FIELD(MDICREATESTRUCTW, DWORD, style, 28, 4, 4);
1215     TEST_FIELD(MDICREATESTRUCTW, LPARAM, lParam, 32, 4, 4);
1216 }
1217
1218 static void test_pack_MDINEXTMENU(void)
1219 {
1220     /* MDINEXTMENU (pack 4) */
1221     TEST_TYPE(MDINEXTMENU, 12, 4);
1222     TEST_FIELD(MDINEXTMENU, HMENU, hmenuIn, 0, 4, 4);
1223     TEST_FIELD(MDINEXTMENU, HMENU, hmenuNext, 4, 4, 4);
1224     TEST_FIELD(MDINEXTMENU, HWND, hwndNext, 8, 4, 4);
1225 }
1226
1227 static void test_pack_MEASUREITEMSTRUCT(void)
1228 {
1229     /* MEASUREITEMSTRUCT (pack 4) */
1230     TEST_TYPE(MEASUREITEMSTRUCT, 24, 4);
1231     TEST_FIELD(MEASUREITEMSTRUCT, UINT, CtlType, 0, 4, 4);
1232     TEST_FIELD(MEASUREITEMSTRUCT, UINT, CtlID, 4, 4, 4);
1233     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemID, 8, 4, 4);
1234     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemWidth, 12, 4, 4);
1235     TEST_FIELD(MEASUREITEMSTRUCT, UINT, itemHeight, 16, 4, 4);
1236     TEST_FIELD(MEASUREITEMSTRUCT, ULONG_PTR, itemData, 20, 4, 4);
1237 }
1238
1239 static void test_pack_MENUINFO(void)
1240 {
1241     /* MENUINFO (pack 4) */
1242     TEST_TYPE(MENUINFO, 28, 4);
1243     TEST_FIELD(MENUINFO, DWORD, cbSize, 0, 4, 4);
1244     TEST_FIELD(MENUINFO, DWORD, fMask, 4, 4, 4);
1245     TEST_FIELD(MENUINFO, DWORD, dwStyle, 8, 4, 4);
1246     TEST_FIELD(MENUINFO, UINT, cyMax, 12, 4, 4);
1247     TEST_FIELD(MENUINFO, HBRUSH, hbrBack, 16, 4, 4);
1248     TEST_FIELD(MENUINFO, DWORD, dwContextHelpID, 20, 4, 4);
1249     TEST_FIELD(MENUINFO, ULONG_PTR, dwMenuData, 24, 4, 4);
1250 }
1251
1252 static void test_pack_MENUITEMINFOA(void)
1253 {
1254     /* MENUITEMINFOA (pack 4) */
1255     TEST_TYPE(MENUITEMINFOA, 48, 4);
1256     TEST_FIELD(MENUITEMINFOA, UINT, cbSize, 0, 4, 4);
1257     TEST_FIELD(MENUITEMINFOA, UINT, fMask, 4, 4, 4);
1258     TEST_FIELD(MENUITEMINFOA, UINT, fType, 8, 4, 4);
1259     TEST_FIELD(MENUITEMINFOA, UINT, fState, 12, 4, 4);
1260     TEST_FIELD(MENUITEMINFOA, UINT, wID, 16, 4, 4);
1261     TEST_FIELD(MENUITEMINFOA, HMENU, hSubMenu, 20, 4, 4);
1262     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpChecked, 24, 4, 4);
1263     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpUnchecked, 28, 4, 4);
1264     TEST_FIELD(MENUITEMINFOA, ULONG_PTR, dwItemData, 32, 4, 4);
1265     TEST_FIELD(MENUITEMINFOA, LPSTR, dwTypeData, 36, 4, 4);
1266     TEST_FIELD(MENUITEMINFOA, UINT, cch, 40, 4, 4);
1267     TEST_FIELD(MENUITEMINFOA, HBITMAP, hbmpItem, 44, 4, 4);
1268 }
1269
1270 static void test_pack_MENUITEMINFOW(void)
1271 {
1272     /* MENUITEMINFOW (pack 4) */
1273     TEST_TYPE(MENUITEMINFOW, 48, 4);
1274     TEST_FIELD(MENUITEMINFOW, UINT, cbSize, 0, 4, 4);
1275     TEST_FIELD(MENUITEMINFOW, UINT, fMask, 4, 4, 4);
1276     TEST_FIELD(MENUITEMINFOW, UINT, fType, 8, 4, 4);
1277     TEST_FIELD(MENUITEMINFOW, UINT, fState, 12, 4, 4);
1278     TEST_FIELD(MENUITEMINFOW, UINT, wID, 16, 4, 4);
1279     TEST_FIELD(MENUITEMINFOW, HMENU, hSubMenu, 20, 4, 4);
1280     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpChecked, 24, 4, 4);
1281     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpUnchecked, 28, 4, 4);
1282     TEST_FIELD(MENUITEMINFOW, ULONG_PTR, dwItemData, 32, 4, 4);
1283     TEST_FIELD(MENUITEMINFOW, LPWSTR, dwTypeData, 36, 4, 4);
1284     TEST_FIELD(MENUITEMINFOW, UINT, cch, 40, 4, 4);
1285     TEST_FIELD(MENUITEMINFOW, HBITMAP, hbmpItem, 44, 4, 4);
1286 }
1287
1288 static void test_pack_MENUITEMTEMPLATE(void)
1289 {
1290     /* MENUITEMTEMPLATE (pack 4) */
1291     TEST_TYPE(MENUITEMTEMPLATE, 6, 2);
1292     TEST_FIELD(MENUITEMTEMPLATE, WORD, mtOption, 0, 2, 2);
1293     TEST_FIELD(MENUITEMTEMPLATE, WORD, mtID, 2, 2, 2);
1294     TEST_FIELD(MENUITEMTEMPLATE, WCHAR[1], mtString, 4, 2, 2);
1295 }
1296
1297 static void test_pack_MENUITEMTEMPLATEHEADER(void)
1298 {
1299     /* MENUITEMTEMPLATEHEADER (pack 4) */
1300     TEST_TYPE(MENUITEMTEMPLATEHEADER, 4, 2);
1301     TEST_FIELD(MENUITEMTEMPLATEHEADER, WORD, versionNumber, 0, 2, 2);
1302     TEST_FIELD(MENUITEMTEMPLATEHEADER, WORD, offset, 2, 2, 2);
1303 }
1304
1305 static void test_pack_MINIMIZEDMETRICS(void)
1306 {
1307     /* MINIMIZEDMETRICS (pack 4) */
1308     TEST_TYPE(MINIMIZEDMETRICS, 20, 4);
1309     TEST_FIELD(MINIMIZEDMETRICS, UINT, cbSize, 0, 4, 4);
1310     TEST_FIELD(MINIMIZEDMETRICS, int, iWidth, 4, 4, 4);
1311     TEST_FIELD(MINIMIZEDMETRICS, int, iHorzGap, 8, 4, 4);
1312     TEST_FIELD(MINIMIZEDMETRICS, int, iVertGap, 12, 4, 4);
1313     TEST_FIELD(MINIMIZEDMETRICS, int, iArrange, 16, 4, 4);
1314 }
1315
1316 static void test_pack_MINMAXINFO(void)
1317 {
1318     /* MINMAXINFO (pack 4) */
1319     TEST_TYPE(MINMAXINFO, 40, 4);
1320     TEST_FIELD(MINMAXINFO, POINT, ptReserved, 0, 8, 4);
1321     TEST_FIELD(MINMAXINFO, POINT, ptMaxSize, 8, 8, 4);
1322     TEST_FIELD(MINMAXINFO, POINT, ptMaxPosition, 16, 8, 4);
1323     TEST_FIELD(MINMAXINFO, POINT, ptMinTrackSize, 24, 8, 4);
1324     TEST_FIELD(MINMAXINFO, POINT, ptMaxTrackSize, 32, 8, 4);
1325 }
1326
1327 static void test_pack_MONITORENUMPROC(void)
1328 {
1329     /* MONITORENUMPROC */
1330     TEST_TYPE(MONITORENUMPROC, 4, 4);
1331 }
1332
1333 static void test_pack_MONITORINFO(void)
1334 {
1335     /* MONITORINFO (pack 4) */
1336     TEST_TYPE(MONITORINFO, 40, 4);
1337     TEST_FIELD(MONITORINFO, DWORD, cbSize, 0, 4, 4);
1338     TEST_FIELD(MONITORINFO, RECT, rcMonitor, 4, 16, 4);
1339     TEST_FIELD(MONITORINFO, RECT, rcWork, 20, 16, 4);
1340     TEST_FIELD(MONITORINFO, DWORD, dwFlags, 36, 4, 4);
1341 }
1342
1343 static void test_pack_MONITORINFOEXA(void)
1344 {
1345     /* MONITORINFOEXA (pack 4) */
1346     TEST_TYPE(MONITORINFOEXA, 72, 4);
1347     TEST_FIELD(MONITORINFOEXA, DWORD, cbSize, 0, 4, 4);
1348     TEST_FIELD(MONITORINFOEXA, RECT, rcMonitor, 4, 16, 4);
1349     TEST_FIELD(MONITORINFOEXA, RECT, rcWork, 20, 16, 4);
1350     TEST_FIELD(MONITORINFOEXA, DWORD, dwFlags, 36, 4, 4);
1351     TEST_FIELD(MONITORINFOEXA, CHAR[CCHDEVICENAME], szDevice, 40, 32, 1);
1352 }
1353
1354 static void test_pack_MONITORINFOEXW(void)
1355 {
1356     /* MONITORINFOEXW (pack 4) */
1357     TEST_TYPE(MONITORINFOEXW, 104, 4);
1358     TEST_FIELD(MONITORINFOEXW, DWORD, cbSize, 0, 4, 4);
1359     TEST_FIELD(MONITORINFOEXW, RECT, rcMonitor, 4, 16, 4);
1360     TEST_FIELD(MONITORINFOEXW, RECT, rcWork, 20, 16, 4);
1361     TEST_FIELD(MONITORINFOEXW, DWORD, dwFlags, 36, 4, 4);
1362     TEST_FIELD(MONITORINFOEXW, WCHAR[CCHDEVICENAME], szDevice, 40, 64, 2);
1363 }
1364
1365 static void test_pack_MOUSEHOOKSTRUCT(void)
1366 {
1367     /* MOUSEHOOKSTRUCT (pack 4) */
1368     TEST_TYPE(MOUSEHOOKSTRUCT, 20, 4);
1369     TEST_FIELD(MOUSEHOOKSTRUCT, POINT, pt, 0, 8, 4);
1370     TEST_FIELD(MOUSEHOOKSTRUCT, HWND, hwnd, 8, 4, 4);
1371     TEST_FIELD(MOUSEHOOKSTRUCT, UINT, wHitTestCode, 12, 4, 4);
1372     TEST_FIELD(MOUSEHOOKSTRUCT, ULONG_PTR, dwExtraInfo, 16, 4, 4);
1373 }
1374
1375 static void test_pack_MOUSEINPUT(void)
1376 {
1377     /* MOUSEINPUT (pack 4) */
1378     TEST_TYPE(MOUSEINPUT, 24, 4);
1379     TEST_FIELD(MOUSEINPUT, LONG, dx, 0, 4, 4);
1380     TEST_FIELD(MOUSEINPUT, LONG, dy, 4, 4, 4);
1381     TEST_FIELD(MOUSEINPUT, DWORD, mouseData, 8, 4, 4);
1382     TEST_FIELD(MOUSEINPUT, DWORD, dwFlags, 12, 4, 4);
1383     TEST_FIELD(MOUSEINPUT, DWORD, time, 16, 4, 4);
1384     TEST_FIELD(MOUSEINPUT, ULONG_PTR, dwExtraInfo, 20, 4, 4);
1385 }
1386
1387 static void test_pack_MOUSEKEYS(void)
1388 {
1389     /* MOUSEKEYS (pack 4) */
1390     TEST_TYPE(MOUSEKEYS, 28, 4);
1391     TEST_FIELD(MOUSEKEYS, UINT, cbSize, 0, 4, 4);
1392     TEST_FIELD(MOUSEKEYS, DWORD, dwFlags, 4, 4, 4);
1393     TEST_FIELD(MOUSEKEYS, DWORD, iMaxSpeed, 8, 4, 4);
1394     TEST_FIELD(MOUSEKEYS, DWORD, iTimeToMaxSpeed, 12, 4, 4);
1395     TEST_FIELD(MOUSEKEYS, DWORD, iCtrlSpeed, 16, 4, 4);
1396     TEST_FIELD(MOUSEKEYS, DWORD, dwReserved1, 20, 4, 4);
1397     TEST_FIELD(MOUSEKEYS, DWORD, dwReserved2, 24, 4, 4);
1398 }
1399
1400 static void test_pack_MSG(void)
1401 {
1402     /* MSG (pack 4) */
1403     TEST_TYPE(MSG, 28, 4);
1404     TEST_FIELD(MSG, HWND, hwnd, 0, 4, 4);
1405     TEST_FIELD(MSG, UINT, message, 4, 4, 4);
1406     TEST_FIELD(MSG, WPARAM, wParam, 8, 4, 4);
1407     TEST_FIELD(MSG, LPARAM, lParam, 12, 4, 4);
1408     TEST_FIELD(MSG, DWORD, time, 16, 4, 4);
1409     TEST_FIELD(MSG, POINT, pt, 20, 8, 4);
1410 }
1411
1412 static void test_pack_MSGBOXCALLBACK(void)
1413 {
1414     /* MSGBOXCALLBACK */
1415     TEST_TYPE(MSGBOXCALLBACK, 4, 4);
1416 }
1417
1418 static void test_pack_MSGBOXPARAMSA(void)
1419 {
1420     /* MSGBOXPARAMSA (pack 4) */
1421     TEST_TYPE(MSGBOXPARAMSA, 40, 4);
1422     TEST_FIELD(MSGBOXPARAMSA, UINT, cbSize, 0, 4, 4);
1423     TEST_FIELD(MSGBOXPARAMSA, HWND, hwndOwner, 4, 4, 4);
1424     TEST_FIELD(MSGBOXPARAMSA, HINSTANCE, hInstance, 8, 4, 4);
1425     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszText, 12, 4, 4);
1426     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszCaption, 16, 4, 4);
1427     TEST_FIELD(MSGBOXPARAMSA, DWORD, dwStyle, 20, 4, 4);
1428     TEST_FIELD(MSGBOXPARAMSA, LPCSTR, lpszIcon, 24, 4, 4);
1429     TEST_FIELD(MSGBOXPARAMSA, DWORD_PTR, dwContextHelpId, 28, 4, 4);
1430     TEST_FIELD(MSGBOXPARAMSA, MSGBOXCALLBACK, lpfnMsgBoxCallback, 32, 4, 4);
1431     TEST_FIELD(MSGBOXPARAMSA, DWORD, dwLanguageId, 36, 4, 4);
1432 }
1433
1434 static void test_pack_MSGBOXPARAMSW(void)
1435 {
1436     /* MSGBOXPARAMSW (pack 4) */
1437     TEST_TYPE(MSGBOXPARAMSW, 40, 4);
1438     TEST_FIELD(MSGBOXPARAMSW, UINT, cbSize, 0, 4, 4);
1439     TEST_FIELD(MSGBOXPARAMSW, HWND, hwndOwner, 4, 4, 4);
1440     TEST_FIELD(MSGBOXPARAMSW, HINSTANCE, hInstance, 8, 4, 4);
1441     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszText, 12, 4, 4);
1442     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszCaption, 16, 4, 4);
1443     TEST_FIELD(MSGBOXPARAMSW, DWORD, dwStyle, 20, 4, 4);
1444     TEST_FIELD(MSGBOXPARAMSW, LPCWSTR, lpszIcon, 24, 4, 4);
1445     TEST_FIELD(MSGBOXPARAMSW, DWORD_PTR, dwContextHelpId, 28, 4, 4);
1446     TEST_FIELD(MSGBOXPARAMSW, MSGBOXCALLBACK, lpfnMsgBoxCallback, 32, 4, 4);
1447     TEST_FIELD(MSGBOXPARAMSW, DWORD, dwLanguageId, 36, 4, 4);
1448 }
1449
1450 static void test_pack_MSLLHOOKSTRUCT(void)
1451 {
1452     /* MSLLHOOKSTRUCT (pack 4) */
1453     TEST_TYPE(MSLLHOOKSTRUCT, 24, 4);
1454     TEST_FIELD(MSLLHOOKSTRUCT, POINT, pt, 0, 8, 4);
1455     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, mouseData, 8, 4, 4);
1456     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, flags, 12, 4, 4);
1457     TEST_FIELD(MSLLHOOKSTRUCT, DWORD, time, 16, 4, 4);
1458     TEST_FIELD(MSLLHOOKSTRUCT, ULONG_PTR, dwExtraInfo, 20, 4, 4);
1459 }
1460
1461 static void test_pack_MULTIKEYHELPA(void)
1462 {
1463     /* MULTIKEYHELPA (pack 4) */
1464     TEST_TYPE(MULTIKEYHELPA, 8, 4);
1465     TEST_FIELD(MULTIKEYHELPA, DWORD, mkSize, 0, 4, 4);
1466     TEST_FIELD(MULTIKEYHELPA, CHAR, mkKeylist, 4, 1, 1);
1467     TEST_FIELD(MULTIKEYHELPA, CHAR[1], szKeyphrase, 5, 1, 1);
1468 }
1469
1470 static void test_pack_MULTIKEYHELPW(void)
1471 {
1472     /* MULTIKEYHELPW (pack 4) */
1473     TEST_TYPE(MULTIKEYHELPW, 8, 4);
1474     TEST_FIELD(MULTIKEYHELPW, DWORD, mkSize, 0, 4, 4);
1475     TEST_FIELD(MULTIKEYHELPW, WCHAR, mkKeylist, 4, 2, 2);
1476     TEST_FIELD(MULTIKEYHELPW, WCHAR[1], szKeyphrase, 6, 2, 2);
1477 }
1478
1479 static void test_pack_NAMEENUMPROCA(void)
1480 {
1481     /* NAMEENUMPROCA */
1482     TEST_TYPE(NAMEENUMPROCA, 4, 4);
1483 }
1484
1485 static void test_pack_NAMEENUMPROCW(void)
1486 {
1487     /* NAMEENUMPROCW */
1488     TEST_TYPE(NAMEENUMPROCW, 4, 4);
1489 }
1490
1491 static void test_pack_NCCALCSIZE_PARAMS(void)
1492 {
1493     /* NCCALCSIZE_PARAMS (pack 4) */
1494     TEST_TYPE(NCCALCSIZE_PARAMS, 52, 4);
1495     TEST_FIELD(NCCALCSIZE_PARAMS, RECT[3], rgrc, 0, 48, 4);
1496     TEST_FIELD(NCCALCSIZE_PARAMS, WINDOWPOS *, lppos, 48, 4, 4);
1497 }
1498
1499 static void test_pack_NMHDR(void)
1500 {
1501     /* NMHDR (pack 4) */
1502     TEST_TYPE(NMHDR, 12, 4);
1503     TEST_FIELD(NMHDR, HWND, hwndFrom, 0, 4, 4);
1504     TEST_FIELD(NMHDR, UINT_PTR, idFrom, 4, 4, 4);
1505     TEST_FIELD(NMHDR, UINT, code, 8, 4, 4);
1506 }
1507
1508 static void test_pack_NONCLIENTMETRICSA(void)
1509 {
1510     /* NONCLIENTMETRICSA (pack 4) */
1511     TEST_TYPE(NONCLIENTMETRICSA, 340, 4);
1512     TEST_FIELD(NONCLIENTMETRICSA, UINT, cbSize, 0, 4, 4);
1513     TEST_FIELD(NONCLIENTMETRICSA, INT, iBorderWidth, 4, 4, 4);
1514     TEST_FIELD(NONCLIENTMETRICSA, INT, iScrollWidth, 8, 4, 4);
1515     TEST_FIELD(NONCLIENTMETRICSA, INT, iScrollHeight, 12, 4, 4);
1516     TEST_FIELD(NONCLIENTMETRICSA, INT, iCaptionWidth, 16, 4, 4);
1517     TEST_FIELD(NONCLIENTMETRICSA, INT, iCaptionHeight, 20, 4, 4);
1518     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfCaptionFont, 24, 60, 4);
1519     TEST_FIELD(NONCLIENTMETRICSA, INT, iSmCaptionWidth, 84, 4, 4);
1520     TEST_FIELD(NONCLIENTMETRICSA, INT, iSmCaptionHeight, 88, 4, 4);
1521     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfSmCaptionFont, 92, 60, 4);
1522     TEST_FIELD(NONCLIENTMETRICSA, INT, iMenuWidth, 152, 4, 4);
1523     TEST_FIELD(NONCLIENTMETRICSA, INT, iMenuHeight, 156, 4, 4);
1524     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfMenuFont, 160, 60, 4);
1525     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfStatusFont, 220, 60, 4);
1526     TEST_FIELD(NONCLIENTMETRICSA, LOGFONTA, lfMessageFont, 280, 60, 4);
1527 }
1528
1529 static void test_pack_NONCLIENTMETRICSW(void)
1530 {
1531     /* NONCLIENTMETRICSW (pack 4) */
1532     TEST_TYPE(NONCLIENTMETRICSW, 500, 4);
1533     TEST_FIELD(NONCLIENTMETRICSW, UINT, cbSize, 0, 4, 4);
1534     TEST_FIELD(NONCLIENTMETRICSW, INT, iBorderWidth, 4, 4, 4);
1535     TEST_FIELD(NONCLIENTMETRICSW, INT, iScrollWidth, 8, 4, 4);
1536     TEST_FIELD(NONCLIENTMETRICSW, INT, iScrollHeight, 12, 4, 4);
1537     TEST_FIELD(NONCLIENTMETRICSW, INT, iCaptionWidth, 16, 4, 4);
1538     TEST_FIELD(NONCLIENTMETRICSW, INT, iCaptionHeight, 20, 4, 4);
1539     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfCaptionFont, 24, 92, 4);
1540     TEST_FIELD(NONCLIENTMETRICSW, INT, iSmCaptionWidth, 116, 4, 4);
1541     TEST_FIELD(NONCLIENTMETRICSW, INT, iSmCaptionHeight, 120, 4, 4);
1542     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfSmCaptionFont, 124, 92, 4);
1543     TEST_FIELD(NONCLIENTMETRICSW, INT, iMenuWidth, 216, 4, 4);
1544     TEST_FIELD(NONCLIENTMETRICSW, INT, iMenuHeight, 220, 4, 4);
1545     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfMenuFont, 224, 92, 4);
1546     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfStatusFont, 316, 92, 4);
1547     TEST_FIELD(NONCLIENTMETRICSW, LOGFONTW, lfMessageFont, 408, 92, 4);
1548 }
1549
1550 static void test_pack_PAINTSTRUCT(void)
1551 {
1552     /* PAINTSTRUCT (pack 4) */
1553     TEST_TYPE(PAINTSTRUCT, 64, 4);
1554     TEST_FIELD(PAINTSTRUCT, HDC, hdc, 0, 4, 4);
1555     TEST_FIELD(PAINTSTRUCT, BOOL, fErase, 4, 4, 4);
1556     TEST_FIELD(PAINTSTRUCT, RECT, rcPaint, 8, 16, 4);
1557     TEST_FIELD(PAINTSTRUCT, BOOL, fRestore, 24, 4, 4);
1558     TEST_FIELD(PAINTSTRUCT, BOOL, fIncUpdate, 28, 4, 4);
1559     TEST_FIELD(PAINTSTRUCT, BYTE[32], rgbReserved, 32, 32, 1);
1560 }
1561
1562 static void test_pack_PCOMBOBOXINFO(void)
1563 {
1564     /* PCOMBOBOXINFO */
1565     TEST_TYPE(PCOMBOBOXINFO, 4, 4);
1566     TEST_TYPE_POINTER(PCOMBOBOXINFO, 52, 4);
1567 }
1568
1569 static void test_pack_PCOMPAREITEMSTRUCT(void)
1570 {
1571     /* PCOMPAREITEMSTRUCT */
1572     TEST_TYPE(PCOMPAREITEMSTRUCT, 4, 4);
1573     TEST_TYPE_POINTER(PCOMPAREITEMSTRUCT, 32, 4);
1574 }
1575
1576 static void test_pack_PCOPYDATASTRUCT(void)
1577 {
1578     /* PCOPYDATASTRUCT */
1579     TEST_TYPE(PCOPYDATASTRUCT, 4, 4);
1580     TEST_TYPE_POINTER(PCOPYDATASTRUCT, 12, 4);
1581 }
1582
1583 static void test_pack_PCURSORINFO(void)
1584 {
1585     /* PCURSORINFO */
1586     TEST_TYPE(PCURSORINFO, 4, 4);
1587     TEST_TYPE_POINTER(PCURSORINFO, 20, 4);
1588 }
1589
1590 static void test_pack_PCWPRETSTRUCT(void)
1591 {
1592     /* PCWPRETSTRUCT */
1593     TEST_TYPE(PCWPRETSTRUCT, 4, 4);
1594     TEST_TYPE_POINTER(PCWPRETSTRUCT, 20, 4);
1595 }
1596
1597 static void test_pack_PCWPSTRUCT(void)
1598 {
1599     /* PCWPSTRUCT */
1600     TEST_TYPE(PCWPSTRUCT, 4, 4);
1601     TEST_TYPE_POINTER(PCWPSTRUCT, 16, 4);
1602 }
1603
1604 static void test_pack_PDEBUGHOOKINFO(void)
1605 {
1606     /* PDEBUGHOOKINFO */
1607     TEST_TYPE(PDEBUGHOOKINFO, 4, 4);
1608     TEST_TYPE_POINTER(PDEBUGHOOKINFO, 20, 4);
1609 }
1610
1611 static void test_pack_PDELETEITEMSTRUCT(void)
1612 {
1613     /* PDELETEITEMSTRUCT */
1614     TEST_TYPE(PDELETEITEMSTRUCT, 4, 4);
1615     TEST_TYPE_POINTER(PDELETEITEMSTRUCT, 20, 4);
1616 }
1617
1618 static void test_pack_PDLGITEMTEMPLATEA(void)
1619 {
1620     /* PDLGITEMTEMPLATEA */
1621     TEST_TYPE(PDLGITEMTEMPLATEA, 4, 4);
1622     TEST_TYPE_POINTER(PDLGITEMTEMPLATEA, 18, 2);
1623 }
1624
1625 static void test_pack_PDLGITEMTEMPLATEW(void)
1626 {
1627     /* PDLGITEMTEMPLATEW */
1628     TEST_TYPE(PDLGITEMTEMPLATEW, 4, 4);
1629     TEST_TYPE_POINTER(PDLGITEMTEMPLATEW, 18, 2);
1630 }
1631
1632 static void test_pack_PDRAWITEMSTRUCT(void)
1633 {
1634     /* PDRAWITEMSTRUCT */
1635     TEST_TYPE(PDRAWITEMSTRUCT, 4, 4);
1636     TEST_TYPE_POINTER(PDRAWITEMSTRUCT, 48, 4);
1637 }
1638
1639 static void test_pack_PEVENTMSG(void)
1640 {
1641     /* PEVENTMSG */
1642     TEST_TYPE(PEVENTMSG, 4, 4);
1643     TEST_TYPE_POINTER(PEVENTMSG, 20, 4);
1644 }
1645
1646 static void test_pack_PFLASHWINFO(void)
1647 {
1648     /* PFLASHWINFO */
1649     TEST_TYPE(PFLASHWINFO, 4, 4);
1650     TEST_TYPE_POINTER(PFLASHWINFO, 20, 4);
1651 }
1652
1653 static void test_pack_PGUITHREADINFO(void)
1654 {
1655     /* PGUITHREADINFO */
1656     TEST_TYPE(PGUITHREADINFO, 4, 4);
1657     TEST_TYPE_POINTER(PGUITHREADINFO, 48, 4);
1658 }
1659
1660 static void test_pack_PHARDWAREHOOKSTRUCT(void)
1661 {
1662     /* PHARDWAREHOOKSTRUCT */
1663     TEST_TYPE(PHARDWAREHOOKSTRUCT, 4, 4);
1664     TEST_TYPE_POINTER(PHARDWAREHOOKSTRUCT, 16, 4);
1665 }
1666
1667 static void test_pack_PHARDWAREINPUT(void)
1668 {
1669     /* PHARDWAREINPUT */
1670     TEST_TYPE(PHARDWAREINPUT, 4, 4);
1671     TEST_TYPE_POINTER(PHARDWAREINPUT, 8, 4);
1672 }
1673
1674 static void test_pack_PHDEVNOTIFY(void)
1675 {
1676     /* PHDEVNOTIFY */
1677     TEST_TYPE(PHDEVNOTIFY, 4, 4);
1678     TEST_TYPE_POINTER(PHDEVNOTIFY, 4, 4);
1679 }
1680
1681 static void test_pack_PHELPWININFOA(void)
1682 {
1683     /* PHELPWININFOA */
1684     TEST_TYPE(PHELPWININFOA, 4, 4);
1685     TEST_TYPE_POINTER(PHELPWININFOA, 28, 4);
1686 }
1687
1688 static void test_pack_PHELPWININFOW(void)
1689 {
1690     /* PHELPWININFOW */
1691     TEST_TYPE(PHELPWININFOW, 4, 4);
1692     TEST_TYPE_POINTER(PHELPWININFOW, 28, 4);
1693 }
1694
1695 static void test_pack_PICONINFO(void)
1696 {
1697     /* PICONINFO */
1698     TEST_TYPE(PICONINFO, 4, 4);
1699     TEST_TYPE_POINTER(PICONINFO, 20, 4);
1700 }
1701
1702 static void test_pack_PICONMETRICSA(void)
1703 {
1704     /* PICONMETRICSA */
1705     TEST_TYPE(PICONMETRICSA, 4, 4);
1706     TEST_TYPE_POINTER(PICONMETRICSA, 76, 4);
1707 }
1708
1709 static void test_pack_PICONMETRICSW(void)
1710 {
1711     /* PICONMETRICSW */
1712     TEST_TYPE(PICONMETRICSW, 4, 4);
1713     TEST_TYPE_POINTER(PICONMETRICSW, 108, 4);
1714 }
1715
1716 static void test_pack_PKBDLLHOOKSTRUCT(void)
1717 {
1718     /* PKBDLLHOOKSTRUCT */
1719     TEST_TYPE(PKBDLLHOOKSTRUCT, 4, 4);
1720     TEST_TYPE_POINTER(PKBDLLHOOKSTRUCT, 20, 4);
1721 }
1722
1723 static void test_pack_PKEYBDINPUT(void)
1724 {
1725     /* PKEYBDINPUT */
1726     TEST_TYPE(PKEYBDINPUT, 4, 4);
1727     TEST_TYPE_POINTER(PKEYBDINPUT, 16, 4);
1728 }
1729
1730 static void test_pack_PMDINEXTMENU(void)
1731 {
1732     /* PMDINEXTMENU */
1733     TEST_TYPE(PMDINEXTMENU, 4, 4);
1734     TEST_TYPE_POINTER(PMDINEXTMENU, 12, 4);
1735 }
1736
1737 static void test_pack_PMEASUREITEMSTRUCT(void)
1738 {
1739     /* PMEASUREITEMSTRUCT */
1740     TEST_TYPE(PMEASUREITEMSTRUCT, 4, 4);
1741     TEST_TYPE_POINTER(PMEASUREITEMSTRUCT, 24, 4);
1742 }
1743
1744 static void test_pack_PMENUITEMTEMPLATE(void)
1745 {
1746     /* PMENUITEMTEMPLATE */
1747     TEST_TYPE(PMENUITEMTEMPLATE, 4, 4);
1748     TEST_TYPE_POINTER(PMENUITEMTEMPLATE, 6, 2);
1749 }
1750
1751 static void test_pack_PMENUITEMTEMPLATEHEADER(void)
1752 {
1753     /* PMENUITEMTEMPLATEHEADER */
1754     TEST_TYPE(PMENUITEMTEMPLATEHEADER, 4, 4);
1755     TEST_TYPE_POINTER(PMENUITEMTEMPLATEHEADER, 4, 2);
1756 }
1757
1758 static void test_pack_PMINIMIZEDMETRICS(void)
1759 {
1760     /* PMINIMIZEDMETRICS */
1761     TEST_TYPE(PMINIMIZEDMETRICS, 4, 4);
1762     TEST_TYPE_POINTER(PMINIMIZEDMETRICS, 20, 4);
1763 }
1764
1765 static void test_pack_PMINMAXINFO(void)
1766 {
1767     /* PMINMAXINFO */
1768     TEST_TYPE(PMINMAXINFO, 4, 4);
1769     TEST_TYPE_POINTER(PMINMAXINFO, 40, 4);
1770 }
1771
1772 static void test_pack_PMOUSEHOOKSTRUCT(void)
1773 {
1774     /* PMOUSEHOOKSTRUCT */
1775     TEST_TYPE(PMOUSEHOOKSTRUCT, 4, 4);
1776     TEST_TYPE_POINTER(PMOUSEHOOKSTRUCT, 20, 4);
1777 }
1778
1779 static void test_pack_PMOUSEINPUT(void)
1780 {
1781     /* PMOUSEINPUT */
1782     TEST_TYPE(PMOUSEINPUT, 4, 4);
1783     TEST_TYPE_POINTER(PMOUSEINPUT, 24, 4);
1784 }
1785
1786 static void test_pack_PMSG(void)
1787 {
1788     /* PMSG */
1789     TEST_TYPE(PMSG, 4, 4);
1790     TEST_TYPE_POINTER(PMSG, 28, 4);
1791 }
1792
1793 static void test_pack_PMSGBOXPARAMSA(void)
1794 {
1795     /* PMSGBOXPARAMSA */
1796     TEST_TYPE(PMSGBOXPARAMSA, 4, 4);
1797     TEST_TYPE_POINTER(PMSGBOXPARAMSA, 40, 4);
1798 }
1799
1800 static void test_pack_PMSGBOXPARAMSW(void)
1801 {
1802     /* PMSGBOXPARAMSW */
1803     TEST_TYPE(PMSGBOXPARAMSW, 4, 4);
1804     TEST_TYPE_POINTER(PMSGBOXPARAMSW, 40, 4);
1805 }
1806
1807 static void test_pack_PMSLLHOOKSTRUCT(void)
1808 {
1809     /* PMSLLHOOKSTRUCT */
1810     TEST_TYPE(PMSLLHOOKSTRUCT, 4, 4);
1811     TEST_TYPE_POINTER(PMSLLHOOKSTRUCT, 24, 4);
1812 }
1813
1814 static void test_pack_PMULTIKEYHELPA(void)
1815 {
1816     /* PMULTIKEYHELPA */
1817     TEST_TYPE(PMULTIKEYHELPA, 4, 4);
1818     TEST_TYPE_POINTER(PMULTIKEYHELPA, 8, 4);
1819 }
1820
1821 static void test_pack_PMULTIKEYHELPW(void)
1822 {
1823     /* PMULTIKEYHELPW */
1824     TEST_TYPE(PMULTIKEYHELPW, 4, 4);
1825     TEST_TYPE_POINTER(PMULTIKEYHELPW, 8, 4);
1826 }
1827
1828 static void test_pack_PNONCLIENTMETRICSA(void)
1829 {
1830     /* PNONCLIENTMETRICSA */
1831     TEST_TYPE(PNONCLIENTMETRICSA, 4, 4);
1832     TEST_TYPE_POINTER(PNONCLIENTMETRICSA, 340, 4);
1833 }
1834
1835 static void test_pack_PNONCLIENTMETRICSW(void)
1836 {
1837     /* PNONCLIENTMETRICSW */
1838     TEST_TYPE(PNONCLIENTMETRICSW, 4, 4);
1839     TEST_TYPE_POINTER(PNONCLIENTMETRICSW, 500, 4);
1840 }
1841
1842 static void test_pack_PPAINTSTRUCT(void)
1843 {
1844     /* PPAINTSTRUCT */
1845     TEST_TYPE(PPAINTSTRUCT, 4, 4);
1846     TEST_TYPE_POINTER(PPAINTSTRUCT, 64, 4);
1847 }
1848
1849 static void test_pack_PROPENUMPROCA(void)
1850 {
1851     /* PROPENUMPROCA */
1852     TEST_TYPE(PROPENUMPROCA, 4, 4);
1853 }
1854
1855 static void test_pack_PROPENUMPROCEXA(void)
1856 {
1857     /* PROPENUMPROCEXA */
1858     TEST_TYPE(PROPENUMPROCEXA, 4, 4);
1859 }
1860
1861 static void test_pack_PROPENUMPROCEXW(void)
1862 {
1863     /* PROPENUMPROCEXW */
1864     TEST_TYPE(PROPENUMPROCEXW, 4, 4);
1865 }
1866
1867 static void test_pack_PROPENUMPROCW(void)
1868 {
1869     /* PROPENUMPROCW */
1870     TEST_TYPE(PROPENUMPROCW, 4, 4);
1871 }
1872
1873 static void test_pack_PTITLEBARINFO(void)
1874 {
1875     /* PTITLEBARINFO */
1876     TEST_TYPE(PTITLEBARINFO, 4, 4);
1877     TEST_TYPE_POINTER(PTITLEBARINFO, 44, 4);
1878 }
1879
1880 static void test_pack_PUSEROBJECTFLAGS(void)
1881 {
1882     /* PUSEROBJECTFLAGS */
1883     TEST_TYPE(PUSEROBJECTFLAGS, 4, 4);
1884     TEST_TYPE_POINTER(PUSEROBJECTFLAGS, 12, 4);
1885 }
1886
1887 static void test_pack_PWINDOWINFO(void)
1888 {
1889     /* PWINDOWINFO */
1890     TEST_TYPE(PWINDOWINFO, 4, 4);
1891     TEST_TYPE_POINTER(PWINDOWINFO, 60, 4);
1892 }
1893
1894 static void test_pack_PWINDOWPLACEMENT(void)
1895 {
1896     /* PWINDOWPLACEMENT */
1897     TEST_TYPE(PWINDOWPLACEMENT, 4, 4);
1898     TEST_TYPE_POINTER(PWINDOWPLACEMENT, 44, 4);
1899 }
1900
1901 static void test_pack_PWINDOWPOS(void)
1902 {
1903     /* PWINDOWPOS */
1904     TEST_TYPE(PWINDOWPOS, 4, 4);
1905     TEST_TYPE_POINTER(PWINDOWPOS, 28, 4);
1906 }
1907
1908 static void test_pack_PWNDCLASSA(void)
1909 {
1910     /* PWNDCLASSA */
1911     TEST_TYPE(PWNDCLASSA, 4, 4);
1912     TEST_TYPE_POINTER(PWNDCLASSA, 40, 4);
1913 }
1914
1915 static void test_pack_PWNDCLASSEXA(void)
1916 {
1917     /* PWNDCLASSEXA */
1918     TEST_TYPE(PWNDCLASSEXA, 4, 4);
1919     TEST_TYPE_POINTER(PWNDCLASSEXA, 48, 4);
1920 }
1921
1922 static void test_pack_PWNDCLASSEXW(void)
1923 {
1924     /* PWNDCLASSEXW */
1925     TEST_TYPE(PWNDCLASSEXW, 4, 4);
1926     TEST_TYPE_POINTER(PWNDCLASSEXW, 48, 4);
1927 }
1928
1929 static void test_pack_PWNDCLASSW(void)
1930 {
1931     /* PWNDCLASSW */
1932     TEST_TYPE(PWNDCLASSW, 4, 4);
1933     TEST_TYPE_POINTER(PWNDCLASSW, 40, 4);
1934 }
1935
1936 static void test_pack_SCROLLINFO(void)
1937 {
1938     /* SCROLLINFO (pack 4) */
1939     TEST_TYPE(SCROLLINFO, 28, 4);
1940     TEST_FIELD(SCROLLINFO, UINT, cbSize, 0, 4, 4);
1941     TEST_FIELD(SCROLLINFO, UINT, fMask, 4, 4, 4);
1942     TEST_FIELD(SCROLLINFO, INT, nMin, 8, 4, 4);
1943     TEST_FIELD(SCROLLINFO, INT, nMax, 12, 4, 4);
1944     TEST_FIELD(SCROLLINFO, UINT, nPage, 16, 4, 4);
1945     TEST_FIELD(SCROLLINFO, INT, nPos, 20, 4, 4);
1946     TEST_FIELD(SCROLLINFO, INT, nTrackPos, 24, 4, 4);
1947 }
1948
1949 static void test_pack_SENDASYNCPROC(void)
1950 {
1951     /* SENDASYNCPROC */
1952     TEST_TYPE(SENDASYNCPROC, 4, 4);
1953 }
1954
1955 static void test_pack_SERIALKEYSA(void)
1956 {
1957     /* SERIALKEYSA (pack 4) */
1958     TEST_TYPE(SERIALKEYSA, 28, 4);
1959     TEST_FIELD(SERIALKEYSA, UINT, cbSize, 0, 4, 4);
1960     TEST_FIELD(SERIALKEYSA, DWORD, dwFlags, 4, 4, 4);
1961     TEST_FIELD(SERIALKEYSA, LPSTR, lpszActivePort, 8, 4, 4);
1962     TEST_FIELD(SERIALKEYSA, LPSTR, lpszPort, 12, 4, 4);
1963     TEST_FIELD(SERIALKEYSA, UINT, iBaudRate, 16, 4, 4);
1964     TEST_FIELD(SERIALKEYSA, UINT, iPortState, 20, 4, 4);
1965     TEST_FIELD(SERIALKEYSA, UINT, iActive, 24, 4, 4);
1966 }
1967
1968 static void test_pack_SERIALKEYSW(void)
1969 {
1970     /* SERIALKEYSW (pack 4) */
1971     TEST_TYPE(SERIALKEYSW, 28, 4);
1972     TEST_FIELD(SERIALKEYSW, UINT, cbSize, 0, 4, 4);
1973     TEST_FIELD(SERIALKEYSW, DWORD, dwFlags, 4, 4, 4);
1974     TEST_FIELD(SERIALKEYSW, LPWSTR, lpszActivePort, 8, 4, 4);
1975     TEST_FIELD(SERIALKEYSW, LPWSTR, lpszPort, 12, 4, 4);
1976     TEST_FIELD(SERIALKEYSW, UINT, iBaudRate, 16, 4, 4);
1977     TEST_FIELD(SERIALKEYSW, UINT, iPortState, 20, 4, 4);
1978     TEST_FIELD(SERIALKEYSW, UINT, iActive, 24, 4, 4);
1979 }
1980
1981 static void test_pack_SOUNDSENTRYA(void)
1982 {
1983     /* SOUNDSENTRYA (pack 4) */
1984     TEST_TYPE(SOUNDSENTRYA, 48, 4);
1985     TEST_FIELD(SOUNDSENTRYA, UINT, cbSize, 0, 4, 4);
1986     TEST_FIELD(SOUNDSENTRYA, DWORD, dwFlags, 4, 4, 4);
1987     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffect, 8, 4, 4);
1988     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffectMSec, 12, 4, 4);
1989     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSTextEffectColorBits, 16, 4, 4);
1990     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffect, 20, 4, 4);
1991     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffectMSec, 24, 4, 4);
1992     TEST_FIELD(SOUNDSENTRYA, DWORD, iFSGrafEffectColor, 28, 4, 4);
1993     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffect, 32, 4, 4);
1994     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffectMSec, 36, 4, 4);
1995     TEST_FIELD(SOUNDSENTRYA, LPSTR, lpszWindowsEffectDLL, 40, 4, 4);
1996     TEST_FIELD(SOUNDSENTRYA, DWORD, iWindowsEffectOrdinal, 44, 4, 4);
1997 }
1998
1999 static void test_pack_SOUNDSENTRYW(void)
2000 {
2001     /* SOUNDSENTRYW (pack 4) */
2002     TEST_TYPE(SOUNDSENTRYW, 48, 4);
2003     TEST_FIELD(SOUNDSENTRYW, UINT, cbSize, 0, 4, 4);
2004     TEST_FIELD(SOUNDSENTRYW, DWORD, dwFlags, 4, 4, 4);
2005     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffect, 8, 4, 4);
2006     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffectMSec, 12, 4, 4);
2007     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSTextEffectColorBits, 16, 4, 4);
2008     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffect, 20, 4, 4);
2009     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffectMSec, 24, 4, 4);
2010     TEST_FIELD(SOUNDSENTRYW, DWORD, iFSGrafEffectColor, 28, 4, 4);
2011     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffect, 32, 4, 4);
2012     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffectMSec, 36, 4, 4);
2013     TEST_FIELD(SOUNDSENTRYW, LPWSTR, lpszWindowsEffectDLL, 40, 4, 4);
2014     TEST_FIELD(SOUNDSENTRYW, DWORD, iWindowsEffectOrdinal, 44, 4, 4);
2015 }
2016
2017 static void test_pack_STICKYKEYS(void)
2018 {
2019     /* STICKYKEYS (pack 4) */
2020     TEST_TYPE(STICKYKEYS, 8, 4);
2021     TEST_FIELD(STICKYKEYS, DWORD, cbSize, 0, 4, 4);
2022     TEST_FIELD(STICKYKEYS, DWORD, dwFlags, 4, 4, 4);
2023 }
2024
2025 static void test_pack_STYLESTRUCT(void)
2026 {
2027     /* STYLESTRUCT (pack 4) */
2028     TEST_TYPE(STYLESTRUCT, 8, 4);
2029     TEST_FIELD(STYLESTRUCT, DWORD, styleOld, 0, 4, 4);
2030     TEST_FIELD(STYLESTRUCT, DWORD, styleNew, 4, 4, 4);
2031 }
2032
2033 static void test_pack_TIMERPROC(void)
2034 {
2035     /* TIMERPROC */
2036     TEST_TYPE(TIMERPROC, 4, 4);
2037 }
2038
2039 static void test_pack_TITLEBARINFO(void)
2040 {
2041     /* TITLEBARINFO (pack 4) */
2042     TEST_TYPE(TITLEBARINFO, 44, 4);
2043     TEST_FIELD(TITLEBARINFO, DWORD, cbSize, 0, 4, 4);
2044     TEST_FIELD(TITLEBARINFO, RECT, rcTitleBar, 4, 16, 4);
2045     TEST_FIELD(TITLEBARINFO, DWORD[CCHILDREN_TITLEBAR+1], rgstate, 20, 24, 4);
2046 }
2047
2048 static void test_pack_TOGGLEKEYS(void)
2049 {
2050     /* TOGGLEKEYS (pack 4) */
2051     TEST_TYPE(TOGGLEKEYS, 8, 4);
2052     TEST_FIELD(TOGGLEKEYS, DWORD, cbSize, 0, 4, 4);
2053     TEST_FIELD(TOGGLEKEYS, DWORD, dwFlags, 4, 4, 4);
2054 }
2055
2056 static void test_pack_TPMPARAMS(void)
2057 {
2058     /* TPMPARAMS (pack 4) */
2059     TEST_TYPE(TPMPARAMS, 20, 4);
2060     TEST_FIELD(TPMPARAMS, UINT, cbSize, 0, 4, 4);
2061     TEST_FIELD(TPMPARAMS, RECT, rcExclude, 4, 16, 4);
2062 }
2063
2064 static void test_pack_TRACKMOUSEEVENT(void)
2065 {
2066     /* TRACKMOUSEEVENT (pack 4) */
2067     TEST_TYPE(TRACKMOUSEEVENT, 16, 4);
2068     TEST_FIELD(TRACKMOUSEEVENT, DWORD, cbSize, 0, 4, 4);
2069     TEST_FIELD(TRACKMOUSEEVENT, DWORD, dwFlags, 4, 4, 4);
2070     TEST_FIELD(TRACKMOUSEEVENT, HWND, hwndTrack, 8, 4, 4);
2071     TEST_FIELD(TRACKMOUSEEVENT, DWORD, dwHoverTime, 12, 4, 4);
2072 }
2073
2074 static void test_pack_USEROBJECTFLAGS(void)
2075 {
2076     /* USEROBJECTFLAGS (pack 4) */
2077     TEST_TYPE(USEROBJECTFLAGS, 12, 4);
2078     TEST_FIELD(USEROBJECTFLAGS, BOOL, fInherit, 0, 4, 4);
2079     TEST_FIELD(USEROBJECTFLAGS, BOOL, fReserved, 4, 4, 4);
2080     TEST_FIELD(USEROBJECTFLAGS, DWORD, dwFlags, 8, 4, 4);
2081 }
2082
2083 static void test_pack_WINDOWINFO(void)
2084 {
2085     /* WINDOWINFO (pack 4) */
2086     TEST_TYPE(WINDOWINFO, 60, 4);
2087     TEST_FIELD(WINDOWINFO, DWORD, cbSize, 0, 4, 4);
2088     TEST_FIELD(WINDOWINFO, RECT, rcWindow, 4, 16, 4);
2089     TEST_FIELD(WINDOWINFO, RECT, rcClient, 20, 16, 4);
2090     TEST_FIELD(WINDOWINFO, DWORD, dwStyle, 36, 4, 4);
2091     TEST_FIELD(WINDOWINFO, DWORD, dwExStyle, 40, 4, 4);
2092     TEST_FIELD(WINDOWINFO, DWORD, dwWindowStatus, 44, 4, 4);
2093     TEST_FIELD(WINDOWINFO, UINT, cxWindowBorders, 48, 4, 4);
2094     TEST_FIELD(WINDOWINFO, UINT, cyWindowBorders, 52, 4, 4);
2095     TEST_FIELD(WINDOWINFO, ATOM, atomWindowType, 56, 2, 2);
2096     TEST_FIELD(WINDOWINFO, WORD, wCreatorVersion, 58, 2, 2);
2097 }
2098
2099 static void test_pack_WINDOWPLACEMENT(void)
2100 {
2101     /* WINDOWPLACEMENT (pack 4) */
2102     TEST_TYPE(WINDOWPLACEMENT, 44, 4);
2103     TEST_FIELD(WINDOWPLACEMENT, UINT, length, 0, 4, 4);
2104     TEST_FIELD(WINDOWPLACEMENT, UINT, flags, 4, 4, 4);
2105     TEST_FIELD(WINDOWPLACEMENT, UINT, showCmd, 8, 4, 4);
2106     TEST_FIELD(WINDOWPLACEMENT, POINT, ptMinPosition, 12, 8, 4);
2107     TEST_FIELD(WINDOWPLACEMENT, POINT, ptMaxPosition, 20, 8, 4);
2108     TEST_FIELD(WINDOWPLACEMENT, RECT, rcNormalPosition, 28, 16, 4);
2109 }
2110
2111 static void test_pack_WINDOWPOS(void)
2112 {
2113     /* WINDOWPOS (pack 4) */
2114     TEST_TYPE(WINDOWPOS, 28, 4);
2115     TEST_FIELD(WINDOWPOS, HWND, hwnd, 0, 4, 4);
2116     TEST_FIELD(WINDOWPOS, HWND, hwndInsertAfter, 4, 4, 4);
2117     TEST_FIELD(WINDOWPOS, INT, x, 8, 4, 4);
2118     TEST_FIELD(WINDOWPOS, INT, y, 12, 4, 4);
2119     TEST_FIELD(WINDOWPOS, INT, cx, 16, 4, 4);
2120     TEST_FIELD(WINDOWPOS, INT, cy, 20, 4, 4);
2121     TEST_FIELD(WINDOWPOS, UINT, flags, 24, 4, 4);
2122 }
2123
2124 static void test_pack_WINEVENTPROC(void)
2125 {
2126     /* WINEVENTPROC */
2127     TEST_TYPE(WINEVENTPROC, 4, 4);
2128 }
2129
2130 static void test_pack_WINSTAENUMPROCA(void)
2131 {
2132     /* WINSTAENUMPROCA */
2133     TEST_TYPE(WINSTAENUMPROCA, 4, 4);
2134 }
2135
2136 static void test_pack_WINSTAENUMPROCW(void)
2137 {
2138     /* WINSTAENUMPROCW */
2139     TEST_TYPE(WINSTAENUMPROCW, 4, 4);
2140 }
2141
2142 static void test_pack_WNDCLASSA(void)
2143 {
2144     /* WNDCLASSA (pack 4) */
2145     TEST_TYPE(WNDCLASSA, 40, 4);
2146     TEST_FIELD(WNDCLASSA, UINT, style, 0, 4, 4);
2147     TEST_FIELD(WNDCLASSA, WNDPROC, lpfnWndProc, 4, 4, 4);
2148     TEST_FIELD(WNDCLASSA, INT, cbClsExtra, 8, 4, 4);
2149     TEST_FIELD(WNDCLASSA, INT, cbWndExtra, 12, 4, 4);
2150     TEST_FIELD(WNDCLASSA, HINSTANCE, hInstance, 16, 4, 4);
2151     TEST_FIELD(WNDCLASSA, HICON, hIcon, 20, 4, 4);
2152     TEST_FIELD(WNDCLASSA, HCURSOR, hCursor, 24, 4, 4);
2153     TEST_FIELD(WNDCLASSA, HBRUSH, hbrBackground, 28, 4, 4);
2154     TEST_FIELD(WNDCLASSA, LPCSTR, lpszMenuName, 32, 4, 4);
2155     TEST_FIELD(WNDCLASSA, LPCSTR, lpszClassName, 36, 4, 4);
2156 }
2157
2158 static void test_pack_WNDCLASSEXA(void)
2159 {
2160     /* WNDCLASSEXA (pack 4) */
2161     TEST_TYPE(WNDCLASSEXA, 48, 4);
2162     TEST_FIELD(WNDCLASSEXA, UINT, cbSize, 0, 4, 4);
2163     TEST_FIELD(WNDCLASSEXA, UINT, style, 4, 4, 4);
2164     TEST_FIELD(WNDCLASSEXA, WNDPROC, lpfnWndProc, 8, 4, 4);
2165     TEST_FIELD(WNDCLASSEXA, INT, cbClsExtra, 12, 4, 4);
2166     TEST_FIELD(WNDCLASSEXA, INT, cbWndExtra, 16, 4, 4);
2167     TEST_FIELD(WNDCLASSEXA, HINSTANCE, hInstance, 20, 4, 4);
2168     TEST_FIELD(WNDCLASSEXA, HICON, hIcon, 24, 4, 4);
2169     TEST_FIELD(WNDCLASSEXA, HCURSOR, hCursor, 28, 4, 4);
2170     TEST_FIELD(WNDCLASSEXA, HBRUSH, hbrBackground, 32, 4, 4);
2171     TEST_FIELD(WNDCLASSEXA, LPCSTR, lpszMenuName, 36, 4, 4);
2172     TEST_FIELD(WNDCLASSEXA, LPCSTR, lpszClassName, 40, 4, 4);
2173     TEST_FIELD(WNDCLASSEXA, HICON, hIconSm, 44, 4, 4);
2174 }
2175
2176 static void test_pack_WNDCLASSEXW(void)
2177 {
2178     /* WNDCLASSEXW (pack 4) */
2179     TEST_TYPE(WNDCLASSEXW, 48, 4);
2180     TEST_FIELD(WNDCLASSEXW, UINT, cbSize, 0, 4, 4);
2181     TEST_FIELD(WNDCLASSEXW, UINT, style, 4, 4, 4);
2182     TEST_FIELD(WNDCLASSEXW, WNDPROC, lpfnWndProc, 8, 4, 4);
2183     TEST_FIELD(WNDCLASSEXW, INT, cbClsExtra, 12, 4, 4);
2184     TEST_FIELD(WNDCLASSEXW, INT, cbWndExtra, 16, 4, 4);
2185     TEST_FIELD(WNDCLASSEXW, HINSTANCE, hInstance, 20, 4, 4);
2186     TEST_FIELD(WNDCLASSEXW, HICON, hIcon, 24, 4, 4);
2187     TEST_FIELD(WNDCLASSEXW, HCURSOR, hCursor, 28, 4, 4);
2188     TEST_FIELD(WNDCLASSEXW, HBRUSH, hbrBackground, 32, 4, 4);
2189     TEST_FIELD(WNDCLASSEXW, LPCWSTR, lpszMenuName, 36, 4, 4);
2190     TEST_FIELD(WNDCLASSEXW, LPCWSTR, lpszClassName, 40, 4, 4);
2191     TEST_FIELD(WNDCLASSEXW, HICON, hIconSm, 44, 4, 4);
2192 }
2193
2194 static void test_pack_WNDCLASSW(void)
2195 {
2196     /* WNDCLASSW (pack 4) */
2197     TEST_TYPE(WNDCLASSW, 40, 4);
2198     TEST_FIELD(WNDCLASSW, UINT, style, 0, 4, 4);
2199     TEST_FIELD(WNDCLASSW, WNDPROC, lpfnWndProc, 4, 4, 4);
2200     TEST_FIELD(WNDCLASSW, INT, cbClsExtra, 8, 4, 4);
2201     TEST_FIELD(WNDCLASSW, INT, cbWndExtra, 12, 4, 4);
2202     TEST_FIELD(WNDCLASSW, HINSTANCE, hInstance, 16, 4, 4);
2203     TEST_FIELD(WNDCLASSW, HICON, hIcon, 20, 4, 4);
2204     TEST_FIELD(WNDCLASSW, HCURSOR, hCursor, 24, 4, 4);
2205     TEST_FIELD(WNDCLASSW, HBRUSH, hbrBackground, 28, 4, 4);
2206     TEST_FIELD(WNDCLASSW, LPCWSTR, lpszMenuName, 32, 4, 4);
2207     TEST_FIELD(WNDCLASSW, LPCWSTR, lpszClassName, 36, 4, 4);
2208 }
2209
2210 static void test_pack_WNDENUMPROC(void)
2211 {
2212     /* WNDENUMPROC */
2213     TEST_TYPE(WNDENUMPROC, 4, 4);
2214 }
2215
2216 static void test_pack_WNDPROC(void)
2217 {
2218     /* WNDPROC */
2219     TEST_TYPE(WNDPROC, 4, 4);
2220 }
2221
2222 static void test_pack(void)
2223 {
2224     test_pack_ACCEL();
2225     test_pack_ACCESSTIMEOUT();
2226     test_pack_ANIMATIONINFO();
2227     test_pack_CBTACTIVATESTRUCT();
2228     test_pack_CBT_CREATEWNDA();
2229     test_pack_CBT_CREATEWNDW();
2230     test_pack_CLIENTCREATESTRUCT();
2231     test_pack_COMBOBOXINFO();
2232     test_pack_COMPAREITEMSTRUCT();
2233     test_pack_COPYDATASTRUCT();
2234     test_pack_CREATESTRUCTA();
2235     test_pack_CREATESTRUCTW();
2236     test_pack_CURSORINFO();
2237     test_pack_CWPRETSTRUCT();
2238     test_pack_CWPSTRUCT();
2239     test_pack_DEBUGHOOKINFO();
2240     test_pack_DELETEITEMSTRUCT();
2241     test_pack_DESKTOPENUMPROCA();
2242     test_pack_DESKTOPENUMPROCW();
2243     test_pack_DLGITEMTEMPLATE();
2244     test_pack_DLGPROC();
2245     test_pack_DLGTEMPLATE();
2246     test_pack_DRAWITEMSTRUCT();
2247     test_pack_DRAWSTATEPROC();
2248     test_pack_DRAWTEXTPARAMS();
2249     test_pack_EDITWORDBREAKPROCA();
2250     test_pack_EDITWORDBREAKPROCW();
2251     test_pack_EVENTMSG();
2252     test_pack_FILTERKEYS();
2253     test_pack_FLASHWINFO();
2254     test_pack_GRAYSTRINGPROC();
2255     test_pack_GUITHREADINFO();
2256     test_pack_HARDWAREHOOKSTRUCT();
2257     test_pack_HARDWAREINPUT();
2258     test_pack_HDEVNOTIFY();
2259     test_pack_HDWP();
2260     test_pack_HELPINFO();
2261     test_pack_HELPWININFOA();
2262     test_pack_HELPWININFOW();
2263     test_pack_HIGHCONTRASTA();
2264     test_pack_HIGHCONTRASTW();
2265     test_pack_HOOKPROC();
2266     test_pack_ICONINFO();
2267     test_pack_ICONMETRICSA();
2268     test_pack_ICONMETRICSW();
2269     test_pack_KBDLLHOOKSTRUCT();
2270     test_pack_KEYBDINPUT();
2271     test_pack_LPACCEL();
2272     test_pack_LPACCESSTIMEOUT();
2273     test_pack_LPANIMATIONINFO();
2274     test_pack_LPCBTACTIVATESTRUCT();
2275     test_pack_LPCBT_CREATEWNDA();
2276     test_pack_LPCBT_CREATEWNDW();
2277     test_pack_LPCDLGTEMPLATEA();
2278     test_pack_LPCDLGTEMPLATEW();
2279     test_pack_LPCLIENTCREATESTRUCT();
2280     test_pack_LPCMENUINFO();
2281     test_pack_LPCMENUITEMINFOA();
2282     test_pack_LPCMENUITEMINFOW();
2283     test_pack_LPCOMBOBOXINFO();
2284     test_pack_LPCOMPAREITEMSTRUCT();
2285     test_pack_LPCREATESTRUCTA();
2286     test_pack_LPCREATESTRUCTW();
2287     test_pack_LPCSCROLLINFO();
2288     test_pack_LPCURSORINFO();
2289     test_pack_LPCWPRETSTRUCT();
2290     test_pack_LPCWPSTRUCT();
2291     test_pack_LPDEBUGHOOKINFO();
2292     test_pack_LPDELETEITEMSTRUCT();
2293     test_pack_LPDLGITEMTEMPLATEA();
2294     test_pack_LPDLGITEMTEMPLATEW();
2295     test_pack_LPDLGTEMPLATEA();
2296     test_pack_LPDLGTEMPLATEW();
2297     test_pack_LPDRAWITEMSTRUCT();
2298     test_pack_LPDRAWTEXTPARAMS();
2299     test_pack_LPEVENTMSG();
2300     test_pack_LPFILTERKEYS();
2301     test_pack_LPGUITHREADINFO();
2302     test_pack_LPHARDWAREHOOKSTRUCT();
2303     test_pack_LPHARDWAREINPUT();
2304     test_pack_LPHELPINFO();
2305     test_pack_LPHELPWININFOA();
2306     test_pack_LPHELPWININFOW();
2307     test_pack_LPHIGHCONTRASTA();
2308     test_pack_LPHIGHCONTRASTW();
2309     test_pack_LPICONMETRICSA();
2310     test_pack_LPICONMETRICSW();
2311     test_pack_LPKBDLLHOOKSTRUCT();
2312     test_pack_LPKEYBDINPUT();
2313     test_pack_LPMDICREATESTRUCTA();
2314     test_pack_LPMDICREATESTRUCTW();
2315     test_pack_LPMDINEXTMENU();
2316     test_pack_LPMEASUREITEMSTRUCT();
2317     test_pack_LPMENUINFO();
2318     test_pack_LPMENUITEMINFOA();
2319     test_pack_LPMENUITEMINFOW();
2320     test_pack_LPMINIMIZEDMETRICS();
2321     test_pack_LPMINMAXINFO();
2322     test_pack_LPMONITORINFO();
2323     test_pack_LPMONITORINFOEXA();
2324     test_pack_LPMONITORINFOEXW();
2325     test_pack_LPMOUSEHOOKSTRUCT();
2326     test_pack_LPMOUSEINPUT();
2327     test_pack_LPMOUSEKEYS();
2328     test_pack_LPMSG();
2329     test_pack_LPMSGBOXPARAMSA();
2330     test_pack_LPMSGBOXPARAMSW();
2331     test_pack_LPMSLLHOOKSTRUCT();
2332     test_pack_LPMULTIKEYHELPA();
2333     test_pack_LPMULTIKEYHELPW();
2334     test_pack_LPNCCALCSIZE_PARAMS();
2335     test_pack_LPNMHDR();
2336     test_pack_LPNONCLIENTMETRICSA();
2337     test_pack_LPNONCLIENTMETRICSW();
2338     test_pack_LPPAINTSTRUCT();
2339     test_pack_LPSCROLLINFO();
2340     test_pack_LPSERIALKEYSA();
2341     test_pack_LPSERIALKEYSW();
2342     test_pack_LPSOUNDSENTRYA();
2343     test_pack_LPSOUNDSENTRYW();
2344     test_pack_LPSTICKYKEYS();
2345     test_pack_LPSTYLESTRUCT();
2346     test_pack_LPTITLEBARINFO();
2347     test_pack_LPTOGGLEKEYS();
2348     test_pack_LPTPMPARAMS();
2349     test_pack_LPTRACKMOUSEEVENT();
2350     test_pack_LPWINDOWINFO();
2351     test_pack_LPWINDOWPLACEMENT();
2352     test_pack_LPWINDOWPOS();
2353     test_pack_LPWNDCLASSA();
2354     test_pack_LPWNDCLASSEXA();
2355     test_pack_LPWNDCLASSEXW();
2356     test_pack_LPWNDCLASSW();
2357     test_pack_MDICREATESTRUCTA();
2358     test_pack_MDICREATESTRUCTW();
2359     test_pack_MDINEXTMENU();
2360     test_pack_MEASUREITEMSTRUCT();
2361     test_pack_MENUINFO();
2362     test_pack_MENUITEMINFOA();
2363     test_pack_MENUITEMINFOW();
2364     test_pack_MENUITEMTEMPLATE();
2365     test_pack_MENUITEMTEMPLATEHEADER();
2366     test_pack_MINIMIZEDMETRICS();
2367     test_pack_MINMAXINFO();
2368     test_pack_MONITORENUMPROC();
2369     test_pack_MONITORINFO();
2370     test_pack_MONITORINFOEXA();
2371     test_pack_MONITORINFOEXW();
2372     test_pack_MOUSEHOOKSTRUCT();
2373     test_pack_MOUSEINPUT();
2374     test_pack_MOUSEKEYS();
2375     test_pack_MSG();
2376     test_pack_MSGBOXCALLBACK();
2377     test_pack_MSGBOXPARAMSA();
2378     test_pack_MSGBOXPARAMSW();
2379     test_pack_MSLLHOOKSTRUCT();
2380     test_pack_MULTIKEYHELPA();
2381     test_pack_MULTIKEYHELPW();
2382     test_pack_NAMEENUMPROCA();
2383     test_pack_NAMEENUMPROCW();
2384     test_pack_NCCALCSIZE_PARAMS();
2385     test_pack_NMHDR();
2386     test_pack_NONCLIENTMETRICSA();
2387     test_pack_NONCLIENTMETRICSW();
2388     test_pack_PAINTSTRUCT();
2389     test_pack_PCOMBOBOXINFO();
2390     test_pack_PCOMPAREITEMSTRUCT();
2391     test_pack_PCOPYDATASTRUCT();
2392     test_pack_PCURSORINFO();
2393     test_pack_PCWPRETSTRUCT();
2394     test_pack_PCWPSTRUCT();
2395     test_pack_PDEBUGHOOKINFO();
2396     test_pack_PDELETEITEMSTRUCT();
2397     test_pack_PDLGITEMTEMPLATEA();
2398     test_pack_PDLGITEMTEMPLATEW();
2399     test_pack_PDRAWITEMSTRUCT();
2400     test_pack_PEVENTMSG();
2401     test_pack_PFLASHWINFO();
2402     test_pack_PGUITHREADINFO();
2403     test_pack_PHARDWAREHOOKSTRUCT();
2404     test_pack_PHARDWAREINPUT();
2405     test_pack_PHDEVNOTIFY();
2406     test_pack_PHELPWININFOA();
2407     test_pack_PHELPWININFOW();
2408     test_pack_PICONINFO();
2409     test_pack_PICONMETRICSA();
2410     test_pack_PICONMETRICSW();
2411     test_pack_PKBDLLHOOKSTRUCT();
2412     test_pack_PKEYBDINPUT();
2413     test_pack_PMDINEXTMENU();
2414     test_pack_PMEASUREITEMSTRUCT();
2415     test_pack_PMENUITEMTEMPLATE();
2416     test_pack_PMENUITEMTEMPLATEHEADER();
2417     test_pack_PMINIMIZEDMETRICS();
2418     test_pack_PMINMAXINFO();
2419     test_pack_PMOUSEHOOKSTRUCT();
2420     test_pack_PMOUSEINPUT();
2421     test_pack_PMSG();
2422     test_pack_PMSGBOXPARAMSA();
2423     test_pack_PMSGBOXPARAMSW();
2424     test_pack_PMSLLHOOKSTRUCT();
2425     test_pack_PMULTIKEYHELPA();
2426     test_pack_PMULTIKEYHELPW();
2427     test_pack_PNONCLIENTMETRICSA();
2428     test_pack_PNONCLIENTMETRICSW();
2429     test_pack_PPAINTSTRUCT();
2430     test_pack_PROPENUMPROCA();
2431     test_pack_PROPENUMPROCEXA();
2432     test_pack_PROPENUMPROCEXW();
2433     test_pack_PROPENUMPROCW();
2434     test_pack_PTITLEBARINFO();
2435     test_pack_PUSEROBJECTFLAGS();
2436     test_pack_PWINDOWINFO();
2437     test_pack_PWINDOWPLACEMENT();
2438     test_pack_PWINDOWPOS();
2439     test_pack_PWNDCLASSA();
2440     test_pack_PWNDCLASSEXA();
2441     test_pack_PWNDCLASSEXW();
2442     test_pack_PWNDCLASSW();
2443     test_pack_SCROLLINFO();
2444     test_pack_SENDASYNCPROC();
2445     test_pack_SERIALKEYSA();
2446     test_pack_SERIALKEYSW();
2447     test_pack_SOUNDSENTRYA();
2448     test_pack_SOUNDSENTRYW();
2449     test_pack_STICKYKEYS();
2450     test_pack_STYLESTRUCT();
2451     test_pack_TIMERPROC();
2452     test_pack_TITLEBARINFO();
2453     test_pack_TOGGLEKEYS();
2454     test_pack_TPMPARAMS();
2455     test_pack_TRACKMOUSEEVENT();
2456     test_pack_USEROBJECTFLAGS();
2457     test_pack_WINDOWINFO();
2458     test_pack_WINDOWPLACEMENT();
2459     test_pack_WINDOWPOS();
2460     test_pack_WINEVENTPROC();
2461     test_pack_WINSTAENUMPROCA();
2462     test_pack_WINSTAENUMPROCW();
2463     test_pack_WNDCLASSA();
2464     test_pack_WNDCLASSEXA();
2465     test_pack_WNDCLASSEXW();
2466     test_pack_WNDCLASSW();
2467     test_pack_WNDENUMPROC();
2468     test_pack_WNDPROC();
2469 }
2470
2471 START_TEST(generated)
2472 {
2473     test_pack();
2474 }