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