shell32/shellview: Implemented IFolderView::GetSelectionMarkedItem() with basic test.
[wine] / dlls / shell32 / tests / generated.c
1 /* File generated automatically from tools/winapi/tests.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 <stdarg.h>
15 #include "windef.h"
16 #include "winbase.h"
17 #include "wtypes.h"
18 #include "shellapi.h"
19 #include "winuser.h"
20 #include "wingdi.h"
21 #include "shlobj.h"
22
23 #include "wine/test.h"
24
25 /***********************************************************************
26  * Compatibility macros
27  */
28
29 #define DWORD_PTR UINT_PTR
30 #define LONG_PTR INT_PTR
31 #define ULONG_PTR UINT_PTR
32
33 /***********************************************************************
34  * Windows API extension
35  */
36
37 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
38 # define _TYPE_ALIGNMENT(type) __alignof(type)
39 #elif defined(__GNUC__)
40 # define _TYPE_ALIGNMENT(type) __alignof__(type)
41 #else
42 /*
43  * FIXME: May not be possible without a compiler extension
44  *        (if type is not just a name that is, otherwise the normal
45  *         TYPE_ALIGNMENT can be used)
46  */
47 #endif
48
49 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
50 #pragma warning(disable:4116)
51 #endif
52
53 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
54 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
55 #endif
56
57 /***********************************************************************
58  * Test helper macros
59  */
60
61 #ifdef _WIN64
62
63 # define TEST_TYPE_SIZE(type, size)
64 # define TEST_TYPE_ALIGN(type, align)
65 # define TEST_TARGET_ALIGN(type, align)
66 # define TEST_FIELD_ALIGN(type, field, align)
67 # define TEST_FIELD_OFFSET(type, field, offset)
68
69 #else
70
71 # define TEST_TYPE_SIZE(type, size)             C_ASSERT(sizeof(type) == size);
72
73 # ifdef TYPE_ALIGNMENT
74 #  define TEST_TYPE_ALIGN(type, align)          C_ASSERT(TYPE_ALIGNMENT(type) == align);
75 # else
76 #  define TEST_TYPE_ALIGN(type, align)
77 # endif
78
79 # ifdef _TYPE_ALIGNMENT
80 #  define TEST_TARGET_ALIGN(type, align)        C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
81 #  define TEST_FIELD_ALIGN(type, field, align)  C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
82 # else
83 #  define TEST_TARGET_ALIGN(type, align)
84 #  define TEST_FIELD_ALIGN(type, field, align)
85 # endif
86
87 # define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
88
89 #endif
90
91 #define TEST_TARGET_SIZE(type, size)            TEST_TYPE_SIZE(*(type)0, size)
92 #define TEST_FIELD_SIZE(type, field, size)      TEST_TYPE_SIZE((((type*)0)->field), size)
93 #define TEST_TYPE_SIGNED(type)                  C_ASSERT((type) -1 < 0);
94 #define TEST_TYPE_UNSIGNED(type)                C_ASSERT((type) -1 > 0);
95
96
97 static void test_pack_BLOB(void)
98 {
99     /* BLOB (pack 4) */
100     TEST_TYPE_SIZE   (BLOB, 8)
101     TEST_TYPE_ALIGN  (BLOB, 4)
102     TEST_FIELD_SIZE  (BLOB, cbSize, 4)
103     TEST_FIELD_ALIGN (BLOB, cbSize, 4)
104     TEST_FIELD_OFFSET(BLOB, cbSize, 0)
105     TEST_FIELD_SIZE  (BLOB, pBlobData, 4)
106     TEST_FIELD_ALIGN (BLOB, pBlobData, 4)
107     TEST_FIELD_OFFSET(BLOB, pBlobData, 4)
108 }
109
110 static void test_pack_BSTR(void)
111 {
112     /* BSTR */
113     TEST_TYPE_SIZE   (BSTR, 4)
114     TEST_TYPE_ALIGN  (BSTR, 4)
115     TEST_TARGET_SIZE (BSTR, 2)
116     TEST_TARGET_ALIGN(BSTR, 2)
117 }
118
119 static void test_pack_BSTRBLOB(void)
120 {
121     /* BSTRBLOB (pack 4) */
122     TEST_TYPE_SIZE   (BSTRBLOB, 8)
123     TEST_TYPE_ALIGN  (BSTRBLOB, 4)
124     TEST_FIELD_SIZE  (BSTRBLOB, cbSize, 4)
125     TEST_FIELD_ALIGN (BSTRBLOB, cbSize, 4)
126     TEST_FIELD_OFFSET(BSTRBLOB, cbSize, 0)
127     TEST_FIELD_SIZE  (BSTRBLOB, pData, 4)
128     TEST_FIELD_ALIGN (BSTRBLOB, pData, 4)
129     TEST_FIELD_OFFSET(BSTRBLOB, pData, 4)
130 }
131
132 static void test_pack_BYTE_BLOB(void)
133 {
134     /* BYTE_BLOB (pack 4) */
135     TEST_TYPE_SIZE   (BYTE_BLOB, 8)
136     TEST_TYPE_ALIGN  (BYTE_BLOB, 4)
137     TEST_FIELD_SIZE  (BYTE_BLOB, clSize, 4)
138     TEST_FIELD_ALIGN (BYTE_BLOB, clSize, 4)
139     TEST_FIELD_OFFSET(BYTE_BLOB, clSize, 0)
140     TEST_FIELD_SIZE  (BYTE_BLOB, abData, 1)
141     TEST_FIELD_ALIGN (BYTE_BLOB, abData, 1)
142     TEST_FIELD_OFFSET(BYTE_BLOB, abData, 4)
143 }
144
145 static void test_pack_BYTE_SIZEDARR(void)
146 {
147     /* BYTE_SIZEDARR (pack 4) */
148     TEST_TYPE_SIZE   (BYTE_SIZEDARR, 8)
149     TEST_TYPE_ALIGN  (BYTE_SIZEDARR, 4)
150     TEST_FIELD_SIZE  (BYTE_SIZEDARR, clSize, 4)
151     TEST_FIELD_ALIGN (BYTE_SIZEDARR, clSize, 4)
152     TEST_FIELD_OFFSET(BYTE_SIZEDARR, clSize, 0)
153     TEST_FIELD_SIZE  (BYTE_SIZEDARR, pData, 4)
154     TEST_FIELD_ALIGN (BYTE_SIZEDARR, pData, 4)
155     TEST_FIELD_OFFSET(BYTE_SIZEDARR, pData, 4)
156 }
157
158 static void test_pack_CLIPDATA(void)
159 {
160     /* CLIPDATA (pack 4) */
161     TEST_TYPE_SIZE   (CLIPDATA, 12)
162     TEST_TYPE_ALIGN  (CLIPDATA, 4)
163     TEST_FIELD_SIZE  (CLIPDATA, cbSize, 4)
164     TEST_FIELD_ALIGN (CLIPDATA, cbSize, 4)
165     TEST_FIELD_OFFSET(CLIPDATA, cbSize, 0)
166     TEST_FIELD_SIZE  (CLIPDATA, ulClipFmt, 4)
167     TEST_FIELD_ALIGN (CLIPDATA, ulClipFmt, 4)
168     TEST_FIELD_OFFSET(CLIPDATA, ulClipFmt, 4)
169     TEST_FIELD_SIZE  (CLIPDATA, pClipData, 4)
170     TEST_FIELD_ALIGN (CLIPDATA, pClipData, 4)
171     TEST_FIELD_OFFSET(CLIPDATA, pClipData, 8)
172 }
173
174 static void test_pack_CLIPFORMAT(void)
175 {
176     /* CLIPFORMAT */
177     TEST_TYPE_SIZE   (CLIPFORMAT, 2)
178     TEST_TYPE_ALIGN  (CLIPFORMAT, 2)
179     TEST_TYPE_UNSIGNED(CLIPFORMAT)
180 }
181
182 static void test_pack_COAUTHIDENTITY(void)
183 {
184     /* COAUTHIDENTITY (pack 4) */
185     TEST_TYPE_SIZE   (COAUTHIDENTITY, 28)
186     TEST_TYPE_ALIGN  (COAUTHIDENTITY, 4)
187     TEST_FIELD_SIZE  (COAUTHIDENTITY, User, 4)
188     TEST_FIELD_ALIGN (COAUTHIDENTITY, User, 4)
189     TEST_FIELD_OFFSET(COAUTHIDENTITY, User, 0)
190     TEST_FIELD_SIZE  (COAUTHIDENTITY, UserLength, 4)
191     TEST_FIELD_ALIGN (COAUTHIDENTITY, UserLength, 4)
192     TEST_FIELD_OFFSET(COAUTHIDENTITY, UserLength, 4)
193     TEST_FIELD_SIZE  (COAUTHIDENTITY, Domain, 4)
194     TEST_FIELD_ALIGN (COAUTHIDENTITY, Domain, 4)
195     TEST_FIELD_OFFSET(COAUTHIDENTITY, Domain, 8)
196     TEST_FIELD_SIZE  (COAUTHIDENTITY, DomainLength, 4)
197     TEST_FIELD_ALIGN (COAUTHIDENTITY, DomainLength, 4)
198     TEST_FIELD_OFFSET(COAUTHIDENTITY, DomainLength, 12)
199     TEST_FIELD_SIZE  (COAUTHIDENTITY, Password, 4)
200     TEST_FIELD_ALIGN (COAUTHIDENTITY, Password, 4)
201     TEST_FIELD_OFFSET(COAUTHIDENTITY, Password, 16)
202     TEST_FIELD_SIZE  (COAUTHIDENTITY, PasswordLength, 4)
203     TEST_FIELD_ALIGN (COAUTHIDENTITY, PasswordLength, 4)
204     TEST_FIELD_OFFSET(COAUTHIDENTITY, PasswordLength, 20)
205     TEST_FIELD_SIZE  (COAUTHIDENTITY, Flags, 4)
206     TEST_FIELD_ALIGN (COAUTHIDENTITY, Flags, 4)
207     TEST_FIELD_OFFSET(COAUTHIDENTITY, Flags, 24)
208 }
209
210 static void test_pack_COAUTHINFO(void)
211 {
212     /* COAUTHINFO (pack 4) */
213     TEST_TYPE_SIZE   (COAUTHINFO, 28)
214     TEST_TYPE_ALIGN  (COAUTHINFO, 4)
215     TEST_FIELD_SIZE  (COAUTHINFO, dwAuthnSvc, 4)
216     TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnSvc, 4)
217     TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnSvc, 0)
218     TEST_FIELD_SIZE  (COAUTHINFO, dwAuthzSvc, 4)
219     TEST_FIELD_ALIGN (COAUTHINFO, dwAuthzSvc, 4)
220     TEST_FIELD_OFFSET(COAUTHINFO, dwAuthzSvc, 4)
221     TEST_FIELD_SIZE  (COAUTHINFO, pwszServerPrincName, 4)
222     TEST_FIELD_ALIGN (COAUTHINFO, pwszServerPrincName, 4)
223     TEST_FIELD_OFFSET(COAUTHINFO, pwszServerPrincName, 8)
224     TEST_FIELD_SIZE  (COAUTHINFO, dwAuthnLevel, 4)
225     TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnLevel, 4)
226     TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnLevel, 12)
227     TEST_FIELD_SIZE  (COAUTHINFO, dwImpersonationLevel, 4)
228     TEST_FIELD_ALIGN (COAUTHINFO, dwImpersonationLevel, 4)
229     TEST_FIELD_OFFSET(COAUTHINFO, dwImpersonationLevel, 16)
230     TEST_FIELD_SIZE  (COAUTHINFO, pAuthIdentityData, 4)
231     TEST_FIELD_ALIGN (COAUTHINFO, pAuthIdentityData, 4)
232     TEST_FIELD_OFFSET(COAUTHINFO, pAuthIdentityData, 20)
233     TEST_FIELD_SIZE  (COAUTHINFO, dwCapabilities, 4)
234     TEST_FIELD_ALIGN (COAUTHINFO, dwCapabilities, 4)
235     TEST_FIELD_OFFSET(COAUTHINFO, dwCapabilities, 24)
236 }
237
238 static void test_pack_DATE(void)
239 {
240     /* DATE */
241     TEST_TYPE_SIZE   (DATE, 8)
242     TEST_TYPE_ALIGN  (DATE, 8)
243 }
244
245 static void test_pack_DOUBLE(void)
246 {
247     /* DOUBLE */
248     TEST_TYPE_SIZE   (DOUBLE, 8)
249     TEST_TYPE_ALIGN  (DOUBLE, 8)
250 }
251
252 static void test_pack_DWORD_SIZEDARR(void)
253 {
254     /* DWORD_SIZEDARR (pack 4) */
255     TEST_TYPE_SIZE   (DWORD_SIZEDARR, 8)
256     TEST_TYPE_ALIGN  (DWORD_SIZEDARR, 4)
257     TEST_FIELD_SIZE  (DWORD_SIZEDARR, clSize, 4)
258     TEST_FIELD_ALIGN (DWORD_SIZEDARR, clSize, 4)
259     TEST_FIELD_OFFSET(DWORD_SIZEDARR, clSize, 0)
260     TEST_FIELD_SIZE  (DWORD_SIZEDARR, pData, 4)
261     TEST_FIELD_ALIGN (DWORD_SIZEDARR, pData, 4)
262     TEST_FIELD_OFFSET(DWORD_SIZEDARR, pData, 4)
263 }
264
265 static void test_pack_FLAGGED_BYTE_BLOB(void)
266 {
267     /* FLAGGED_BYTE_BLOB (pack 4) */
268     TEST_TYPE_SIZE   (FLAGGED_BYTE_BLOB, 12)
269     TEST_TYPE_ALIGN  (FLAGGED_BYTE_BLOB, 4)
270     TEST_FIELD_SIZE  (FLAGGED_BYTE_BLOB, fFlags, 4)
271     TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, fFlags, 4)
272     TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, fFlags, 0)
273     TEST_FIELD_SIZE  (FLAGGED_BYTE_BLOB, clSize, 4)
274     TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, clSize, 4)
275     TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, clSize, 4)
276     TEST_FIELD_SIZE  (FLAGGED_BYTE_BLOB, abData, 1)
277     TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, abData, 1)
278     TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, abData, 8)
279 }
280
281 static void test_pack_FLAGGED_WORD_BLOB(void)
282 {
283     /* FLAGGED_WORD_BLOB (pack 4) */
284     TEST_TYPE_SIZE   (FLAGGED_WORD_BLOB, 12)
285     TEST_TYPE_ALIGN  (FLAGGED_WORD_BLOB, 4)
286     TEST_FIELD_SIZE  (FLAGGED_WORD_BLOB, fFlags, 4)
287     TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, fFlags, 4)
288     TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, fFlags, 0)
289     TEST_FIELD_SIZE  (FLAGGED_WORD_BLOB, clSize, 4)
290     TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, clSize, 4)
291     TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, clSize, 4)
292     TEST_FIELD_SIZE  (FLAGGED_WORD_BLOB, asData, 2)
293     TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, asData, 2)
294     TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, asData, 8)
295 }
296
297 static void test_pack_HMETAFILEPICT(void)
298 {
299     /* HMETAFILEPICT */
300     TEST_TYPE_SIZE   (HMETAFILEPICT, 4)
301     TEST_TYPE_ALIGN  (HMETAFILEPICT, 4)
302 }
303
304 static void test_pack_HYPER_SIZEDARR(void)
305 {
306     /* HYPER_SIZEDARR (pack 4) */
307     TEST_TYPE_SIZE   (HYPER_SIZEDARR, 8)
308     TEST_TYPE_ALIGN  (HYPER_SIZEDARR, 4)
309     TEST_FIELD_SIZE  (HYPER_SIZEDARR, clSize, 4)
310     TEST_FIELD_ALIGN (HYPER_SIZEDARR, clSize, 4)
311     TEST_FIELD_OFFSET(HYPER_SIZEDARR, clSize, 0)
312     TEST_FIELD_SIZE  (HYPER_SIZEDARR, pData, 4)
313     TEST_FIELD_ALIGN (HYPER_SIZEDARR, pData, 4)
314     TEST_FIELD_OFFSET(HYPER_SIZEDARR, pData, 4)
315 }
316
317 static void test_pack_LPBLOB(void)
318 {
319     /* LPBLOB */
320     TEST_TYPE_SIZE   (LPBLOB, 4)
321     TEST_TYPE_ALIGN  (LPBLOB, 4)
322 }
323
324 static void test_pack_LPBSTR(void)
325 {
326     /* LPBSTR */
327     TEST_TYPE_SIZE   (LPBSTR, 4)
328     TEST_TYPE_ALIGN  (LPBSTR, 4)
329     TEST_TARGET_SIZE (LPBSTR, 4)
330     TEST_TARGET_ALIGN(LPBSTR, 4)
331 }
332
333 static void test_pack_LPBSTRBLOB(void)
334 {
335     /* LPBSTRBLOB */
336     TEST_TYPE_SIZE   (LPBSTRBLOB, 4)
337     TEST_TYPE_ALIGN  (LPBSTRBLOB, 4)
338 }
339
340 static void test_pack_LPCOLESTR(void)
341 {
342     /* LPCOLESTR */
343     TEST_TYPE_SIZE   (LPCOLESTR, 4)
344     TEST_TYPE_ALIGN  (LPCOLESTR, 4)
345     TEST_TARGET_SIZE (LPCOLESTR, 2)
346     TEST_TARGET_ALIGN(LPCOLESTR, 2)
347 }
348
349 static void test_pack_LPCY(void)
350 {
351     /* LPCY */
352     TEST_TYPE_SIZE   (LPCY, 4)
353     TEST_TYPE_ALIGN  (LPCY, 4)
354 }
355
356 static void test_pack_LPDECIMAL(void)
357 {
358     /* LPDECIMAL */
359     TEST_TYPE_SIZE   (LPDECIMAL, 4)
360     TEST_TYPE_ALIGN  (LPDECIMAL, 4)
361 }
362
363 static void test_pack_LPOLESTR(void)
364 {
365     /* LPOLESTR */
366     TEST_TYPE_SIZE   (LPOLESTR, 4)
367     TEST_TYPE_ALIGN  (LPOLESTR, 4)
368     TEST_TARGET_SIZE (LPOLESTR, 2)
369     TEST_TARGET_ALIGN(LPOLESTR, 2)
370 }
371
372 static void test_pack_OLECHAR(void)
373 {
374     /* OLECHAR */
375     TEST_TYPE_SIZE   (OLECHAR, 2)
376     TEST_TYPE_ALIGN  (OLECHAR, 2)
377 }
378
379 static void test_pack_PROPID(void)
380 {
381     /* PROPID */
382     TEST_TYPE_SIZE   (PROPID, 4)
383     TEST_TYPE_ALIGN  (PROPID, 4)
384 }
385
386 static void test_pack_RemHBITMAP(void)
387 {
388     /* RemHBITMAP (pack 4) */
389     TEST_TYPE_SIZE   (RemHBITMAP, 8)
390     TEST_TYPE_ALIGN  (RemHBITMAP, 4)
391     TEST_FIELD_SIZE  (RemHBITMAP, cbData, 4)
392     TEST_FIELD_ALIGN (RemHBITMAP, cbData, 4)
393     TEST_FIELD_OFFSET(RemHBITMAP, cbData, 0)
394     TEST_FIELD_SIZE  (RemHBITMAP, data, 1)
395     TEST_FIELD_ALIGN (RemHBITMAP, data, 1)
396     TEST_FIELD_OFFSET(RemHBITMAP, data, 4)
397 }
398
399 static void test_pack_RemHENHMETAFILE(void)
400 {
401     /* RemHENHMETAFILE (pack 4) */
402     TEST_TYPE_SIZE   (RemHENHMETAFILE, 8)
403     TEST_TYPE_ALIGN  (RemHENHMETAFILE, 4)
404     TEST_FIELD_SIZE  (RemHENHMETAFILE, cbData, 4)
405     TEST_FIELD_ALIGN (RemHENHMETAFILE, cbData, 4)
406     TEST_FIELD_OFFSET(RemHENHMETAFILE, cbData, 0)
407     TEST_FIELD_SIZE  (RemHENHMETAFILE, data, 1)
408     TEST_FIELD_ALIGN (RemHENHMETAFILE, data, 1)
409     TEST_FIELD_OFFSET(RemHENHMETAFILE, data, 4)
410 }
411
412 static void test_pack_RemHGLOBAL(void)
413 {
414     /* RemHGLOBAL (pack 4) */
415     TEST_TYPE_SIZE   (RemHGLOBAL, 12)
416     TEST_TYPE_ALIGN  (RemHGLOBAL, 4)
417     TEST_FIELD_SIZE  (RemHGLOBAL, fNullHGlobal, 4)
418     TEST_FIELD_ALIGN (RemHGLOBAL, fNullHGlobal, 4)
419     TEST_FIELD_OFFSET(RemHGLOBAL, fNullHGlobal, 0)
420     TEST_FIELD_SIZE  (RemHGLOBAL, cbData, 4)
421     TEST_FIELD_ALIGN (RemHGLOBAL, cbData, 4)
422     TEST_FIELD_OFFSET(RemHGLOBAL, cbData, 4)
423     TEST_FIELD_SIZE  (RemHGLOBAL, data, 1)
424     TEST_FIELD_ALIGN (RemHGLOBAL, data, 1)
425     TEST_FIELD_OFFSET(RemHGLOBAL, data, 8)
426 }
427
428 static void test_pack_RemHMETAFILEPICT(void)
429 {
430     /* RemHMETAFILEPICT (pack 4) */
431     TEST_TYPE_SIZE   (RemHMETAFILEPICT, 20)
432     TEST_TYPE_ALIGN  (RemHMETAFILEPICT, 4)
433     TEST_FIELD_SIZE  (RemHMETAFILEPICT, mm, 4)
434     TEST_FIELD_ALIGN (RemHMETAFILEPICT, mm, 4)
435     TEST_FIELD_OFFSET(RemHMETAFILEPICT, mm, 0)
436     TEST_FIELD_SIZE  (RemHMETAFILEPICT, xExt, 4)
437     TEST_FIELD_ALIGN (RemHMETAFILEPICT, xExt, 4)
438     TEST_FIELD_OFFSET(RemHMETAFILEPICT, xExt, 4)
439     TEST_FIELD_SIZE  (RemHMETAFILEPICT, yExt, 4)
440     TEST_FIELD_ALIGN (RemHMETAFILEPICT, yExt, 4)
441     TEST_FIELD_OFFSET(RemHMETAFILEPICT, yExt, 8)
442     TEST_FIELD_SIZE  (RemHMETAFILEPICT, cbData, 4)
443     TEST_FIELD_ALIGN (RemHMETAFILEPICT, cbData, 4)
444     TEST_FIELD_OFFSET(RemHMETAFILEPICT, cbData, 12)
445     TEST_FIELD_SIZE  (RemHMETAFILEPICT, data, 1)
446     TEST_FIELD_ALIGN (RemHMETAFILEPICT, data, 1)
447     TEST_FIELD_OFFSET(RemHMETAFILEPICT, data, 16)
448 }
449
450 static void test_pack_RemHPALETTE(void)
451 {
452     /* RemHPALETTE (pack 4) */
453     TEST_TYPE_SIZE   (RemHPALETTE, 8)
454     TEST_TYPE_ALIGN  (RemHPALETTE, 4)
455     TEST_FIELD_SIZE  (RemHPALETTE, cbData, 4)
456     TEST_FIELD_ALIGN (RemHPALETTE, cbData, 4)
457     TEST_FIELD_OFFSET(RemHPALETTE, cbData, 0)
458     TEST_FIELD_SIZE  (RemHPALETTE, data, 1)
459     TEST_FIELD_ALIGN (RemHPALETTE, data, 1)
460     TEST_FIELD_OFFSET(RemHPALETTE, data, 4)
461 }
462
463 static void test_pack_SCODE(void)
464 {
465     /* SCODE */
466     TEST_TYPE_SIZE   (SCODE, 4)
467     TEST_TYPE_ALIGN  (SCODE, 4)
468 }
469
470 static void test_pack_UP_BYTE_BLOB(void)
471 {
472     /* UP_BYTE_BLOB */
473     TEST_TYPE_SIZE   (UP_BYTE_BLOB, 4)
474     TEST_TYPE_ALIGN  (UP_BYTE_BLOB, 4)
475     TEST_TARGET_SIZE (UP_BYTE_BLOB, 8)
476     TEST_TARGET_ALIGN(UP_BYTE_BLOB, 4)
477 }
478
479 static void test_pack_UP_FLAGGED_BYTE_BLOB(void)
480 {
481     /* UP_FLAGGED_BYTE_BLOB */
482     TEST_TYPE_SIZE   (UP_FLAGGED_BYTE_BLOB, 4)
483     TEST_TYPE_ALIGN  (UP_FLAGGED_BYTE_BLOB, 4)
484     TEST_TARGET_SIZE (UP_FLAGGED_BYTE_BLOB, 12)
485     TEST_TARGET_ALIGN(UP_FLAGGED_BYTE_BLOB, 4)
486 }
487
488 static void test_pack_UP_FLAGGED_WORD_BLOB(void)
489 {
490     /* UP_FLAGGED_WORD_BLOB */
491     TEST_TYPE_SIZE   (UP_FLAGGED_WORD_BLOB, 4)
492     TEST_TYPE_ALIGN  (UP_FLAGGED_WORD_BLOB, 4)
493     TEST_TARGET_SIZE (UP_FLAGGED_WORD_BLOB, 12)
494     TEST_TARGET_ALIGN(UP_FLAGGED_WORD_BLOB, 4)
495 }
496
497 static void test_pack_VARIANT_BOOL(void)
498 {
499     /* VARIANT_BOOL */
500     TEST_TYPE_SIZE   (VARIANT_BOOL, 2)
501     TEST_TYPE_ALIGN  (VARIANT_BOOL, 2)
502     TEST_TYPE_SIGNED(VARIANT_BOOL)
503 }
504
505 static void test_pack_VARTYPE(void)
506 {
507     /* VARTYPE */
508     TEST_TYPE_SIZE   (VARTYPE, 2)
509     TEST_TYPE_ALIGN  (VARTYPE, 2)
510     TEST_TYPE_UNSIGNED(VARTYPE)
511 }
512
513 static void test_pack_WORD_SIZEDARR(void)
514 {
515     /* WORD_SIZEDARR (pack 4) */
516     TEST_TYPE_SIZE   (WORD_SIZEDARR, 8)
517     TEST_TYPE_ALIGN  (WORD_SIZEDARR, 4)
518     TEST_FIELD_SIZE  (WORD_SIZEDARR, clSize, 4)
519     TEST_FIELD_ALIGN (WORD_SIZEDARR, clSize, 4)
520     TEST_FIELD_OFFSET(WORD_SIZEDARR, clSize, 0)
521     TEST_FIELD_SIZE  (WORD_SIZEDARR, pData, 4)
522     TEST_FIELD_ALIGN (WORD_SIZEDARR, pData, 4)
523     TEST_FIELD_OFFSET(WORD_SIZEDARR, pData, 4)
524 }
525
526 static void test_pack_remoteMETAFILEPICT(void)
527 {
528     /* remoteMETAFILEPICT (pack 4) */
529     TEST_TYPE_SIZE   (remoteMETAFILEPICT, 16)
530     TEST_TYPE_ALIGN  (remoteMETAFILEPICT, 4)
531     TEST_FIELD_SIZE  (remoteMETAFILEPICT, mm, 4)
532     TEST_FIELD_ALIGN (remoteMETAFILEPICT, mm, 4)
533     TEST_FIELD_OFFSET(remoteMETAFILEPICT, mm, 0)
534     TEST_FIELD_SIZE  (remoteMETAFILEPICT, xExt, 4)
535     TEST_FIELD_ALIGN (remoteMETAFILEPICT, xExt, 4)
536     TEST_FIELD_OFFSET(remoteMETAFILEPICT, xExt, 4)
537     TEST_FIELD_SIZE  (remoteMETAFILEPICT, yExt, 4)
538     TEST_FIELD_ALIGN (remoteMETAFILEPICT, yExt, 4)
539     TEST_FIELD_OFFSET(remoteMETAFILEPICT, yExt, 8)
540     TEST_FIELD_SIZE  (remoteMETAFILEPICT, hMF, 4)
541     TEST_FIELD_ALIGN (remoteMETAFILEPICT, hMF, 4)
542     TEST_FIELD_OFFSET(remoteMETAFILEPICT, hMF, 12)
543 }
544
545 static void test_pack_userBITMAP(void)
546 {
547     /* userBITMAP (pack 4) */
548     TEST_TYPE_SIZE   (userBITMAP, 28)
549     TEST_TYPE_ALIGN  (userBITMAP, 4)
550     TEST_FIELD_SIZE  (userBITMAP, bmType, 4)
551     TEST_FIELD_ALIGN (userBITMAP, bmType, 4)
552     TEST_FIELD_OFFSET(userBITMAP, bmType, 0)
553     TEST_FIELD_SIZE  (userBITMAP, bmWidth, 4)
554     TEST_FIELD_ALIGN (userBITMAP, bmWidth, 4)
555     TEST_FIELD_OFFSET(userBITMAP, bmWidth, 4)
556     TEST_FIELD_SIZE  (userBITMAP, bmHeight, 4)
557     TEST_FIELD_ALIGN (userBITMAP, bmHeight, 4)
558     TEST_FIELD_OFFSET(userBITMAP, bmHeight, 8)
559     TEST_FIELD_SIZE  (userBITMAP, bmWidthBytes, 4)
560     TEST_FIELD_ALIGN (userBITMAP, bmWidthBytes, 4)
561     TEST_FIELD_OFFSET(userBITMAP, bmWidthBytes, 12)
562     TEST_FIELD_SIZE  (userBITMAP, bmPlanes, 2)
563     TEST_FIELD_ALIGN (userBITMAP, bmPlanes, 2)
564     TEST_FIELD_OFFSET(userBITMAP, bmPlanes, 16)
565     TEST_FIELD_SIZE  (userBITMAP, bmBitsPixel, 2)
566     TEST_FIELD_ALIGN (userBITMAP, bmBitsPixel, 2)
567     TEST_FIELD_OFFSET(userBITMAP, bmBitsPixel, 18)
568     TEST_FIELD_SIZE  (userBITMAP, cbSize, 4)
569     TEST_FIELD_ALIGN (userBITMAP, cbSize, 4)
570     TEST_FIELD_OFFSET(userBITMAP, cbSize, 20)
571     TEST_FIELD_SIZE  (userBITMAP, pBuffer, 1)
572     TEST_FIELD_ALIGN (userBITMAP, pBuffer, 1)
573     TEST_FIELD_OFFSET(userBITMAP, pBuffer, 24)
574 }
575
576 static void test_pack_userCLIPFORMAT(void)
577 {
578     /* userCLIPFORMAT (pack 4) */
579     TEST_FIELD_SIZE  (userCLIPFORMAT, fContext, 4)
580     TEST_FIELD_ALIGN (userCLIPFORMAT, fContext, 4)
581     TEST_FIELD_OFFSET(userCLIPFORMAT, fContext, 0)
582 }
583
584 static void test_pack_userHBITMAP(void)
585 {
586     /* userHBITMAP (pack 4) */
587     TEST_FIELD_SIZE  (userHBITMAP, fContext, 4)
588     TEST_FIELD_ALIGN (userHBITMAP, fContext, 4)
589     TEST_FIELD_OFFSET(userHBITMAP, fContext, 0)
590 }
591
592 static void test_pack_userHENHMETAFILE(void)
593 {
594     /* userHENHMETAFILE (pack 4) */
595     TEST_FIELD_SIZE  (userHENHMETAFILE, fContext, 4)
596     TEST_FIELD_ALIGN (userHENHMETAFILE, fContext, 4)
597     TEST_FIELD_OFFSET(userHENHMETAFILE, fContext, 0)
598 }
599
600 static void test_pack_userHGLOBAL(void)
601 {
602     /* userHGLOBAL (pack 4) */
603     TEST_FIELD_SIZE  (userHGLOBAL, fContext, 4)
604     TEST_FIELD_ALIGN (userHGLOBAL, fContext, 4)
605     TEST_FIELD_OFFSET(userHGLOBAL, fContext, 0)
606 }
607
608 static void test_pack_userHMETAFILE(void)
609 {
610     /* userHMETAFILE (pack 4) */
611     TEST_FIELD_SIZE  (userHMETAFILE, fContext, 4)
612     TEST_FIELD_ALIGN (userHMETAFILE, fContext, 4)
613     TEST_FIELD_OFFSET(userHMETAFILE, fContext, 0)
614 }
615
616 static void test_pack_userHMETAFILEPICT(void)
617 {
618     /* userHMETAFILEPICT (pack 4) */
619     TEST_FIELD_SIZE  (userHMETAFILEPICT, fContext, 4)
620     TEST_FIELD_ALIGN (userHMETAFILEPICT, fContext, 4)
621     TEST_FIELD_OFFSET(userHMETAFILEPICT, fContext, 0)
622 }
623
624 static void test_pack_userHPALETTE(void)
625 {
626     /* userHPALETTE (pack 4) */
627     TEST_FIELD_SIZE  (userHPALETTE, fContext, 4)
628     TEST_FIELD_ALIGN (userHPALETTE, fContext, 4)
629     TEST_FIELD_OFFSET(userHPALETTE, fContext, 0)
630 }
631
632 static void test_pack_wireBSTR(void)
633 {
634     /* wireBSTR */
635     TEST_TYPE_SIZE   (wireBSTR, 4)
636     TEST_TYPE_ALIGN  (wireBSTR, 4)
637     TEST_TARGET_SIZE (wireBSTR, 12)
638     TEST_TARGET_ALIGN(wireBSTR, 4)
639 }
640
641 static void test_pack_wireCLIPFORMAT(void)
642 {
643     /* wireCLIPFORMAT */
644     TEST_TYPE_SIZE   (wireCLIPFORMAT, 4)
645     TEST_TYPE_ALIGN  (wireCLIPFORMAT, 4)
646 }
647
648 static void test_pack_wireHBITMAP(void)
649 {
650     /* wireHBITMAP */
651     TEST_TYPE_SIZE   (wireHBITMAP, 4)
652     TEST_TYPE_ALIGN  (wireHBITMAP, 4)
653 }
654
655 static void test_pack_wireHENHMETAFILE(void)
656 {
657     /* wireHENHMETAFILE */
658     TEST_TYPE_SIZE   (wireHENHMETAFILE, 4)
659     TEST_TYPE_ALIGN  (wireHENHMETAFILE, 4)
660 }
661
662 static void test_pack_wireHGLOBAL(void)
663 {
664     /* wireHGLOBAL */
665     TEST_TYPE_SIZE   (wireHGLOBAL, 4)
666     TEST_TYPE_ALIGN  (wireHGLOBAL, 4)
667 }
668
669 static void test_pack_wireHMETAFILE(void)
670 {
671     /* wireHMETAFILE */
672     TEST_TYPE_SIZE   (wireHMETAFILE, 4)
673     TEST_TYPE_ALIGN  (wireHMETAFILE, 4)
674 }
675
676 static void test_pack_wireHMETAFILEPICT(void)
677 {
678     /* wireHMETAFILEPICT */
679     TEST_TYPE_SIZE   (wireHMETAFILEPICT, 4)
680     TEST_TYPE_ALIGN  (wireHMETAFILEPICT, 4)
681 }
682
683 static void test_pack_wireHPALETTE(void)
684 {
685     /* wireHPALETTE */
686     TEST_TYPE_SIZE   (wireHPALETTE, 4)
687     TEST_TYPE_ALIGN  (wireHPALETTE, 4)
688 }
689
690 static void test_pack_CLSID(void)
691 {
692     /* CLSID */
693     TEST_TYPE_SIZE   (CLSID, 16)
694     TEST_TYPE_ALIGN  (CLSID, 4)
695 }
696
697 static void test_pack_FMTID(void)
698 {
699     /* FMTID */
700     TEST_TYPE_SIZE   (FMTID, 16)
701     TEST_TYPE_ALIGN  (FMTID, 4)
702 }
703
704 static void test_pack_IID(void)
705 {
706     /* IID */
707     TEST_TYPE_SIZE   (IID, 16)
708     TEST_TYPE_ALIGN  (IID, 4)
709 }
710
711 static void test_pack_APPBARDATA(void)
712 {
713     /* APPBARDATA (pack 1) */
714     TEST_TYPE_SIZE   (APPBARDATA, 36)
715     TEST_TYPE_ALIGN  (APPBARDATA, 1)
716     TEST_FIELD_SIZE  (APPBARDATA, cbSize, 4)
717     TEST_FIELD_ALIGN (APPBARDATA, cbSize, 1)
718     TEST_FIELD_OFFSET(APPBARDATA, cbSize, 0)
719     TEST_FIELD_SIZE  (APPBARDATA, hWnd, 4)
720     TEST_FIELD_ALIGN (APPBARDATA, hWnd, 1)
721     TEST_FIELD_OFFSET(APPBARDATA, hWnd, 4)
722     TEST_FIELD_SIZE  (APPBARDATA, uCallbackMessage, 4)
723     TEST_FIELD_ALIGN (APPBARDATA, uCallbackMessage, 1)
724     TEST_FIELD_OFFSET(APPBARDATA, uCallbackMessage, 8)
725     TEST_FIELD_SIZE  (APPBARDATA, uEdge, 4)
726     TEST_FIELD_ALIGN (APPBARDATA, uEdge, 1)
727     TEST_FIELD_OFFSET(APPBARDATA, uEdge, 12)
728     TEST_FIELD_SIZE  (APPBARDATA, rc, 16)
729     TEST_FIELD_ALIGN (APPBARDATA, rc, 1)
730     TEST_FIELD_OFFSET(APPBARDATA, rc, 16)
731     TEST_FIELD_SIZE  (APPBARDATA, lParam, 4)
732     TEST_FIELD_ALIGN (APPBARDATA, lParam, 1)
733     TEST_FIELD_OFFSET(APPBARDATA, lParam, 32)
734 }
735
736 static void test_pack_DRAGINFOA(void)
737 {
738     /* DRAGINFOA (pack 1) */
739     TEST_TYPE_SIZE   (DRAGINFOA, 24)
740     TEST_TYPE_ALIGN  (DRAGINFOA, 1)
741     TEST_FIELD_SIZE  (DRAGINFOA, uSize, 4)
742     TEST_FIELD_ALIGN (DRAGINFOA, uSize, 1)
743     TEST_FIELD_OFFSET(DRAGINFOA, uSize, 0)
744     TEST_FIELD_SIZE  (DRAGINFOA, pt, 8)
745     TEST_FIELD_ALIGN (DRAGINFOA, pt, 1)
746     TEST_FIELD_OFFSET(DRAGINFOA, pt, 4)
747     TEST_FIELD_SIZE  (DRAGINFOA, fNC, 4)
748     TEST_FIELD_ALIGN (DRAGINFOA, fNC, 1)
749     TEST_FIELD_OFFSET(DRAGINFOA, fNC, 12)
750     TEST_FIELD_SIZE  (DRAGINFOA, lpFileList, 4)
751     TEST_FIELD_ALIGN (DRAGINFOA, lpFileList, 1)
752     TEST_FIELD_OFFSET(DRAGINFOA, lpFileList, 16)
753     TEST_FIELD_SIZE  (DRAGINFOA, grfKeyState, 4)
754     TEST_FIELD_ALIGN (DRAGINFOA, grfKeyState, 1)
755     TEST_FIELD_OFFSET(DRAGINFOA, grfKeyState, 20)
756 }
757
758 static void test_pack_DRAGINFOW(void)
759 {
760     /* DRAGINFOW (pack 1) */
761     TEST_TYPE_SIZE   (DRAGINFOW, 24)
762     TEST_TYPE_ALIGN  (DRAGINFOW, 1)
763     TEST_FIELD_SIZE  (DRAGINFOW, uSize, 4)
764     TEST_FIELD_ALIGN (DRAGINFOW, uSize, 1)
765     TEST_FIELD_OFFSET(DRAGINFOW, uSize, 0)
766     TEST_FIELD_SIZE  (DRAGINFOW, pt, 8)
767     TEST_FIELD_ALIGN (DRAGINFOW, pt, 1)
768     TEST_FIELD_OFFSET(DRAGINFOW, pt, 4)
769     TEST_FIELD_SIZE  (DRAGINFOW, fNC, 4)
770     TEST_FIELD_ALIGN (DRAGINFOW, fNC, 1)
771     TEST_FIELD_OFFSET(DRAGINFOW, fNC, 12)
772     TEST_FIELD_SIZE  (DRAGINFOW, lpFileList, 4)
773     TEST_FIELD_ALIGN (DRAGINFOW, lpFileList, 1)
774     TEST_FIELD_OFFSET(DRAGINFOW, lpFileList, 16)
775     TEST_FIELD_SIZE  (DRAGINFOW, grfKeyState, 4)
776     TEST_FIELD_ALIGN (DRAGINFOW, grfKeyState, 1)
777     TEST_FIELD_OFFSET(DRAGINFOW, grfKeyState, 20)
778 }
779
780 static void test_pack_FILEOP_FLAGS(void)
781 {
782     /* FILEOP_FLAGS */
783     TEST_TYPE_SIZE   (FILEOP_FLAGS, 2)
784     TEST_TYPE_ALIGN  (FILEOP_FLAGS, 2)
785     TEST_TYPE_UNSIGNED(FILEOP_FLAGS)
786 }
787
788 static void test_pack_LPDRAGINFOA(void)
789 {
790     /* LPDRAGINFOA */
791     TEST_TYPE_SIZE   (LPDRAGINFOA, 4)
792     TEST_TYPE_ALIGN  (LPDRAGINFOA, 4)
793     TEST_TARGET_SIZE (LPDRAGINFOA, 24)
794     TEST_TARGET_ALIGN(LPDRAGINFOA, 1)
795 }
796
797 static void test_pack_LPDRAGINFOW(void)
798 {
799     /* LPDRAGINFOW */
800     TEST_TYPE_SIZE   (LPDRAGINFOW, 4)
801     TEST_TYPE_ALIGN  (LPDRAGINFOW, 4)
802     TEST_TARGET_SIZE (LPDRAGINFOW, 24)
803     TEST_TARGET_ALIGN(LPDRAGINFOW, 1)
804 }
805
806 static void test_pack_LPSHELLEXECUTEINFOA(void)
807 {
808     /* LPSHELLEXECUTEINFOA */
809     TEST_TYPE_SIZE   (LPSHELLEXECUTEINFOA, 4)
810     TEST_TYPE_ALIGN  (LPSHELLEXECUTEINFOA, 4)
811 }
812
813 static void test_pack_LPSHELLEXECUTEINFOW(void)
814 {
815     /* LPSHELLEXECUTEINFOW */
816     TEST_TYPE_SIZE   (LPSHELLEXECUTEINFOW, 4)
817     TEST_TYPE_ALIGN  (LPSHELLEXECUTEINFOW, 4)
818 }
819
820 static void test_pack_LPSHFILEOPSTRUCTA(void)
821 {
822     /* LPSHFILEOPSTRUCTA */
823     TEST_TYPE_SIZE   (LPSHFILEOPSTRUCTA, 4)
824     TEST_TYPE_ALIGN  (LPSHFILEOPSTRUCTA, 4)
825     TEST_TARGET_SIZE (LPSHFILEOPSTRUCTA, 30)
826     TEST_TARGET_ALIGN(LPSHFILEOPSTRUCTA, 1)
827 }
828
829 static void test_pack_LPSHFILEOPSTRUCTW(void)
830 {
831     /* LPSHFILEOPSTRUCTW */
832     TEST_TYPE_SIZE   (LPSHFILEOPSTRUCTW, 4)
833     TEST_TYPE_ALIGN  (LPSHFILEOPSTRUCTW, 4)
834     TEST_TARGET_SIZE (LPSHFILEOPSTRUCTW, 30)
835     TEST_TARGET_ALIGN(LPSHFILEOPSTRUCTW, 1)
836 }
837
838 static void test_pack_LPSHNAMEMAPPINGA(void)
839 {
840     /* LPSHNAMEMAPPINGA */
841     TEST_TYPE_SIZE   (LPSHNAMEMAPPINGA, 4)
842     TEST_TYPE_ALIGN  (LPSHNAMEMAPPINGA, 4)
843     TEST_TARGET_SIZE (LPSHNAMEMAPPINGA, 16)
844     TEST_TARGET_ALIGN(LPSHNAMEMAPPINGA, 1)
845 }
846
847 static void test_pack_LPSHNAMEMAPPINGW(void)
848 {
849     /* LPSHNAMEMAPPINGW */
850     TEST_TYPE_SIZE   (LPSHNAMEMAPPINGW, 4)
851     TEST_TYPE_ALIGN  (LPSHNAMEMAPPINGW, 4)
852     TEST_TARGET_SIZE (LPSHNAMEMAPPINGW, 16)
853     TEST_TARGET_ALIGN(LPSHNAMEMAPPINGW, 1)
854 }
855
856 static void test_pack_NOTIFYICONDATAA(void)
857 {
858     /* NOTIFYICONDATAA (pack 1) */
859     TEST_FIELD_SIZE  (NOTIFYICONDATAA, cbSize, 4)
860     TEST_FIELD_ALIGN (NOTIFYICONDATAA, cbSize, 1)
861     TEST_FIELD_OFFSET(NOTIFYICONDATAA, cbSize, 0)
862     TEST_FIELD_SIZE  (NOTIFYICONDATAA, hWnd, 4)
863     TEST_FIELD_ALIGN (NOTIFYICONDATAA, hWnd, 1)
864     TEST_FIELD_OFFSET(NOTIFYICONDATAA, hWnd, 4)
865     TEST_FIELD_SIZE  (NOTIFYICONDATAA, uID, 4)
866     TEST_FIELD_ALIGN (NOTIFYICONDATAA, uID, 1)
867     TEST_FIELD_OFFSET(NOTIFYICONDATAA, uID, 8)
868     TEST_FIELD_SIZE  (NOTIFYICONDATAA, uFlags, 4)
869     TEST_FIELD_ALIGN (NOTIFYICONDATAA, uFlags, 1)
870     TEST_FIELD_OFFSET(NOTIFYICONDATAA, uFlags, 12)
871     TEST_FIELD_SIZE  (NOTIFYICONDATAA, uCallbackMessage, 4)
872     TEST_FIELD_ALIGN (NOTIFYICONDATAA, uCallbackMessage, 1)
873     TEST_FIELD_OFFSET(NOTIFYICONDATAA, uCallbackMessage, 16)
874     TEST_FIELD_SIZE  (NOTIFYICONDATAA, hIcon, 4)
875     TEST_FIELD_ALIGN (NOTIFYICONDATAA, hIcon, 1)
876     TEST_FIELD_OFFSET(NOTIFYICONDATAA, hIcon, 20)
877     TEST_FIELD_SIZE  (NOTIFYICONDATAA, szTip, 128)
878     TEST_FIELD_ALIGN (NOTIFYICONDATAA, szTip, 1)
879     TEST_FIELD_OFFSET(NOTIFYICONDATAA, szTip, 24)
880     TEST_FIELD_SIZE  (NOTIFYICONDATAA, dwState, 4)
881     TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwState, 1)
882     TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwState, 152)
883     TEST_FIELD_SIZE  (NOTIFYICONDATAA, dwStateMask, 4)
884     TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwStateMask, 1)
885     TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwStateMask, 156)
886     TEST_FIELD_SIZE  (NOTIFYICONDATAA, szInfo, 256)
887     TEST_FIELD_ALIGN (NOTIFYICONDATAA, szInfo, 1)
888     TEST_FIELD_OFFSET(NOTIFYICONDATAA, szInfo, 160)
889 }
890
891 static void test_pack_NOTIFYICONDATAW(void)
892 {
893     /* NOTIFYICONDATAW (pack 1) */
894     TEST_FIELD_SIZE  (NOTIFYICONDATAW, cbSize, 4)
895     TEST_FIELD_ALIGN (NOTIFYICONDATAW, cbSize, 1)
896     TEST_FIELD_OFFSET(NOTIFYICONDATAW, cbSize, 0)
897     TEST_FIELD_SIZE  (NOTIFYICONDATAW, hWnd, 4)
898     TEST_FIELD_ALIGN (NOTIFYICONDATAW, hWnd, 1)
899     TEST_FIELD_OFFSET(NOTIFYICONDATAW, hWnd, 4)
900     TEST_FIELD_SIZE  (NOTIFYICONDATAW, uID, 4)
901     TEST_FIELD_ALIGN (NOTIFYICONDATAW, uID, 1)
902     TEST_FIELD_OFFSET(NOTIFYICONDATAW, uID, 8)
903     TEST_FIELD_SIZE  (NOTIFYICONDATAW, uFlags, 4)
904     TEST_FIELD_ALIGN (NOTIFYICONDATAW, uFlags, 1)
905     TEST_FIELD_OFFSET(NOTIFYICONDATAW, uFlags, 12)
906     TEST_FIELD_SIZE  (NOTIFYICONDATAW, uCallbackMessage, 4)
907     TEST_FIELD_ALIGN (NOTIFYICONDATAW, uCallbackMessage, 1)
908     TEST_FIELD_OFFSET(NOTIFYICONDATAW, uCallbackMessage, 16)
909     TEST_FIELD_SIZE  (NOTIFYICONDATAW, hIcon, 4)
910     TEST_FIELD_ALIGN (NOTIFYICONDATAW, hIcon, 1)
911     TEST_FIELD_OFFSET(NOTIFYICONDATAW, hIcon, 20)
912     TEST_FIELD_SIZE  (NOTIFYICONDATAW, szTip, 256)
913     TEST_FIELD_ALIGN (NOTIFYICONDATAW, szTip, 1)
914     TEST_FIELD_OFFSET(NOTIFYICONDATAW, szTip, 24)
915     TEST_FIELD_SIZE  (NOTIFYICONDATAW, dwState, 4)
916     TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwState, 1)
917     TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwState, 280)
918     TEST_FIELD_SIZE  (NOTIFYICONDATAW, dwStateMask, 4)
919     TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwStateMask, 1)
920     TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwStateMask, 284)
921     TEST_FIELD_SIZE  (NOTIFYICONDATAW, szInfo, 512)
922     TEST_FIELD_ALIGN (NOTIFYICONDATAW, szInfo, 1)
923     TEST_FIELD_OFFSET(NOTIFYICONDATAW, szInfo, 288)
924 }
925
926 static void test_pack_PAPPBARDATA(void)
927 {
928     /* PAPPBARDATA */
929     TEST_TYPE_SIZE   (PAPPBARDATA, 4)
930     TEST_TYPE_ALIGN  (PAPPBARDATA, 4)
931     TEST_TARGET_SIZE (PAPPBARDATA, 36)
932     TEST_TARGET_ALIGN(PAPPBARDATA, 1)
933 }
934
935 static void test_pack_PNOTIFYICONDATAA(void)
936 {
937     /* PNOTIFYICONDATAA */
938     TEST_TYPE_SIZE   (PNOTIFYICONDATAA, 4)
939     TEST_TYPE_ALIGN  (PNOTIFYICONDATAA, 4)
940 }
941
942 static void test_pack_PNOTIFYICONDATAW(void)
943 {
944     /* PNOTIFYICONDATAW */
945     TEST_TYPE_SIZE   (PNOTIFYICONDATAW, 4)
946     TEST_TYPE_ALIGN  (PNOTIFYICONDATAW, 4)
947 }
948
949 static void test_pack_PRINTEROP_FLAGS(void)
950 {
951     /* PRINTEROP_FLAGS */
952     TEST_TYPE_SIZE   (PRINTEROP_FLAGS, 2)
953     TEST_TYPE_ALIGN  (PRINTEROP_FLAGS, 2)
954     TEST_TYPE_UNSIGNED(PRINTEROP_FLAGS)
955 }
956
957 static void test_pack_SHELLEXECUTEINFOA(void)
958 {
959     /* SHELLEXECUTEINFOA (pack 1) */
960     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, cbSize, 4)
961     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, cbSize, 1)
962     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, cbSize, 0)
963     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, fMask, 4)
964     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, fMask, 1)
965     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, fMask, 4)
966     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, hwnd, 4)
967     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hwnd, 1)
968     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hwnd, 8)
969     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, lpVerb, 4)
970     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpVerb, 1)
971     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpVerb, 12)
972     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, lpFile, 4)
973     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpFile, 1)
974     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpFile, 16)
975     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, lpParameters, 4)
976     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpParameters, 1)
977     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpParameters, 20)
978     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, lpDirectory, 4)
979     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpDirectory, 1)
980     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpDirectory, 24)
981     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, nShow, 4)
982     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, nShow, 1)
983     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, nShow, 28)
984     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, hInstApp, 4)
985     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hInstApp, 1)
986     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hInstApp, 32)
987     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, lpIDList, 4)
988     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpIDList, 1)
989     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpIDList, 36)
990     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, lpClass, 4)
991     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpClass, 1)
992     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpClass, 40)
993     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, hkeyClass, 4)
994     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hkeyClass, 1)
995     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hkeyClass, 44)
996     TEST_FIELD_SIZE  (SHELLEXECUTEINFOA, dwHotKey, 4)
997     TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, dwHotKey, 1)
998     TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, dwHotKey, 48)
999 }
1000
1001 static void test_pack_SHELLEXECUTEINFOW(void)
1002 {
1003     /* SHELLEXECUTEINFOW (pack 1) */
1004     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, cbSize, 4)
1005     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, cbSize, 1)
1006     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, cbSize, 0)
1007     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, fMask, 4)
1008     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, fMask, 1)
1009     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, fMask, 4)
1010     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, hwnd, 4)
1011     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hwnd, 1)
1012     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hwnd, 8)
1013     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, lpVerb, 4)
1014     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpVerb, 1)
1015     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpVerb, 12)
1016     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, lpFile, 4)
1017     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpFile, 1)
1018     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpFile, 16)
1019     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, lpParameters, 4)
1020     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpParameters, 1)
1021     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpParameters, 20)
1022     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, lpDirectory, 4)
1023     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpDirectory, 1)
1024     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpDirectory, 24)
1025     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, nShow, 4)
1026     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, nShow, 1)
1027     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, nShow, 28)
1028     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, hInstApp, 4)
1029     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hInstApp, 1)
1030     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hInstApp, 32)
1031     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, lpIDList, 4)
1032     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpIDList, 1)
1033     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpIDList, 36)
1034     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, lpClass, 4)
1035     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpClass, 1)
1036     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpClass, 40)
1037     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, hkeyClass, 4)
1038     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hkeyClass, 1)
1039     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hkeyClass, 44)
1040     TEST_FIELD_SIZE  (SHELLEXECUTEINFOW, dwHotKey, 4)
1041     TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, dwHotKey, 1)
1042     TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, dwHotKey, 48)
1043 }
1044
1045 static void test_pack_SHFILEINFOA(void)
1046 {
1047     /* SHFILEINFOA (pack 1) */
1048     TEST_TYPE_SIZE   (SHFILEINFOA, 352)
1049     TEST_TYPE_ALIGN  (SHFILEINFOA, 1)
1050     TEST_FIELD_SIZE  (SHFILEINFOA, hIcon, 4)
1051     TEST_FIELD_ALIGN (SHFILEINFOA, hIcon, 1)
1052     TEST_FIELD_OFFSET(SHFILEINFOA, hIcon, 0)
1053     TEST_FIELD_SIZE  (SHFILEINFOA, iIcon, 4)
1054     TEST_FIELD_ALIGN (SHFILEINFOA, iIcon, 1)
1055     TEST_FIELD_OFFSET(SHFILEINFOA, iIcon, 4)
1056     TEST_FIELD_SIZE  (SHFILEINFOA, dwAttributes, 4)
1057     TEST_FIELD_ALIGN (SHFILEINFOA, dwAttributes, 1)
1058     TEST_FIELD_OFFSET(SHFILEINFOA, dwAttributes, 8)
1059     TEST_FIELD_SIZE  (SHFILEINFOA, szDisplayName, 260)
1060     TEST_FIELD_ALIGN (SHFILEINFOA, szDisplayName, 1)
1061     TEST_FIELD_OFFSET(SHFILEINFOA, szDisplayName, 12)
1062     TEST_FIELD_SIZE  (SHFILEINFOA, szTypeName, 80)
1063     TEST_FIELD_ALIGN (SHFILEINFOA, szTypeName, 1)
1064     TEST_FIELD_OFFSET(SHFILEINFOA, szTypeName, 272)
1065 }
1066
1067 static void test_pack_SHFILEINFOW(void)
1068 {
1069     /* SHFILEINFOW (pack 1) */
1070     TEST_TYPE_SIZE   (SHFILEINFOW, 692)
1071     TEST_TYPE_ALIGN  (SHFILEINFOW, 1)
1072     TEST_FIELD_SIZE  (SHFILEINFOW, hIcon, 4)
1073     TEST_FIELD_ALIGN (SHFILEINFOW, hIcon, 1)
1074     TEST_FIELD_OFFSET(SHFILEINFOW, hIcon, 0)
1075     TEST_FIELD_SIZE  (SHFILEINFOW, iIcon, 4)
1076     TEST_FIELD_ALIGN (SHFILEINFOW, iIcon, 1)
1077     TEST_FIELD_OFFSET(SHFILEINFOW, iIcon, 4)
1078     TEST_FIELD_SIZE  (SHFILEINFOW, dwAttributes, 4)
1079     TEST_FIELD_ALIGN (SHFILEINFOW, dwAttributes, 1)
1080     TEST_FIELD_OFFSET(SHFILEINFOW, dwAttributes, 8)
1081     TEST_FIELD_SIZE  (SHFILEINFOW, szDisplayName, 520)
1082     TEST_FIELD_ALIGN (SHFILEINFOW, szDisplayName, 1)
1083     TEST_FIELD_OFFSET(SHFILEINFOW, szDisplayName, 12)
1084     TEST_FIELD_SIZE  (SHFILEINFOW, szTypeName, 160)
1085     TEST_FIELD_ALIGN (SHFILEINFOW, szTypeName, 1)
1086     TEST_FIELD_OFFSET(SHFILEINFOW, szTypeName, 532)
1087 }
1088
1089 static void test_pack_SHFILEOPSTRUCTA(void)
1090 {
1091     /* SHFILEOPSTRUCTA (pack 1) */
1092     TEST_TYPE_SIZE   (SHFILEOPSTRUCTA, 30)
1093     TEST_TYPE_ALIGN  (SHFILEOPSTRUCTA, 1)
1094     TEST_FIELD_SIZE  (SHFILEOPSTRUCTA, hwnd, 4)
1095     TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hwnd, 1)
1096     TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hwnd, 0)
1097     TEST_FIELD_SIZE  (SHFILEOPSTRUCTA, wFunc, 4)
1098     TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, wFunc, 1)
1099     TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, wFunc, 4)
1100     TEST_FIELD_SIZE  (SHFILEOPSTRUCTA, pFrom, 4)
1101     TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, pFrom, 1)
1102     TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, pFrom, 8)
1103     TEST_FIELD_SIZE  (SHFILEOPSTRUCTA, pTo, 4)
1104     TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, pTo, 1)
1105     TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, pTo, 12)
1106     TEST_FIELD_SIZE  (SHFILEOPSTRUCTA, fFlags, 2)
1107     TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fFlags, 1)
1108     TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fFlags, 16)
1109     TEST_FIELD_SIZE  (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
1110     TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fAnyOperationsAborted, 1)
1111     TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fAnyOperationsAborted, 18)
1112     TEST_FIELD_SIZE  (SHFILEOPSTRUCTA, hNameMappings, 4)
1113     TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hNameMappings, 1)
1114     TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hNameMappings, 22)
1115     TEST_FIELD_SIZE  (SHFILEOPSTRUCTA, lpszProgressTitle, 4)
1116     TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, lpszProgressTitle, 1)
1117     TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, lpszProgressTitle, 26)
1118 }
1119
1120 static void test_pack_SHFILEOPSTRUCTW(void)
1121 {
1122     /* SHFILEOPSTRUCTW (pack 1) */
1123     TEST_TYPE_SIZE   (SHFILEOPSTRUCTW, 30)
1124     TEST_TYPE_ALIGN  (SHFILEOPSTRUCTW, 1)
1125     TEST_FIELD_SIZE  (SHFILEOPSTRUCTW, hwnd, 4)
1126     TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hwnd, 1)
1127     TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hwnd, 0)
1128     TEST_FIELD_SIZE  (SHFILEOPSTRUCTW, wFunc, 4)
1129     TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, wFunc, 1)
1130     TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, wFunc, 4)
1131     TEST_FIELD_SIZE  (SHFILEOPSTRUCTW, pFrom, 4)
1132     TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, pFrom, 1)
1133     TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, pFrom, 8)
1134     TEST_FIELD_SIZE  (SHFILEOPSTRUCTW, pTo, 4)
1135     TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, pTo, 1)
1136     TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, pTo, 12)
1137     TEST_FIELD_SIZE  (SHFILEOPSTRUCTW, fFlags, 2)
1138     TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fFlags, 1)
1139     TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fFlags, 16)
1140     TEST_FIELD_SIZE  (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
1141     TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fAnyOperationsAborted, 1)
1142     TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fAnyOperationsAborted, 18)
1143     TEST_FIELD_SIZE  (SHFILEOPSTRUCTW, hNameMappings, 4)
1144     TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hNameMappings, 1)
1145     TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hNameMappings, 22)
1146     TEST_FIELD_SIZE  (SHFILEOPSTRUCTW, lpszProgressTitle, 4)
1147     TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, lpszProgressTitle, 1)
1148     TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, lpszProgressTitle, 26)
1149 }
1150
1151 static void test_pack_SHNAMEMAPPINGA(void)
1152 {
1153     /* SHNAMEMAPPINGA (pack 1) */
1154     TEST_TYPE_SIZE   (SHNAMEMAPPINGA, 16)
1155     TEST_TYPE_ALIGN  (SHNAMEMAPPINGA, 1)
1156     TEST_FIELD_SIZE  (SHNAMEMAPPINGA, pszOldPath, 4)
1157     TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszOldPath, 1)
1158     TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszOldPath, 0)
1159     TEST_FIELD_SIZE  (SHNAMEMAPPINGA, pszNewPath, 4)
1160     TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszNewPath, 1)
1161     TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszNewPath, 4)
1162     TEST_FIELD_SIZE  (SHNAMEMAPPINGA, cchOldPath, 4)
1163     TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchOldPath, 1)
1164     TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchOldPath, 8)
1165     TEST_FIELD_SIZE  (SHNAMEMAPPINGA, cchNewPath, 4)
1166     TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchNewPath, 1)
1167     TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchNewPath, 12)
1168 }
1169
1170 static void test_pack_SHNAMEMAPPINGW(void)
1171 {
1172     /* SHNAMEMAPPINGW (pack 1) */
1173     TEST_TYPE_SIZE   (SHNAMEMAPPINGW, 16)
1174     TEST_TYPE_ALIGN  (SHNAMEMAPPINGW, 1)
1175     TEST_FIELD_SIZE  (SHNAMEMAPPINGW, pszOldPath, 4)
1176     TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszOldPath, 1)
1177     TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszOldPath, 0)
1178     TEST_FIELD_SIZE  (SHNAMEMAPPINGW, pszNewPath, 4)
1179     TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszNewPath, 1)
1180     TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszNewPath, 4)
1181     TEST_FIELD_SIZE  (SHNAMEMAPPINGW, cchOldPath, 4)
1182     TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchOldPath, 1)
1183     TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchOldPath, 8)
1184     TEST_FIELD_SIZE  (SHNAMEMAPPINGW, cchNewPath, 4)
1185     TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchNewPath, 1)
1186     TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchNewPath, 12)
1187 }
1188
1189 static void test_pack_ITEMIDLIST(void)
1190 {
1191     /* ITEMIDLIST (pack 1) */
1192     TEST_TYPE_SIZE   (ITEMIDLIST, 3)
1193     TEST_TYPE_ALIGN  (ITEMIDLIST, 1)
1194     TEST_FIELD_SIZE  (ITEMIDLIST, mkid, 3)
1195     TEST_FIELD_ALIGN (ITEMIDLIST, mkid, 1)
1196     TEST_FIELD_OFFSET(ITEMIDLIST, mkid, 0)
1197 }
1198
1199 static void test_pack_LPCITEMIDLIST(void)
1200 {
1201     /* LPCITEMIDLIST */
1202     TEST_TYPE_SIZE   (LPCITEMIDLIST, 4)
1203     TEST_TYPE_ALIGN  (LPCITEMIDLIST, 4)
1204     TEST_TARGET_SIZE (LPCITEMIDLIST, 3)
1205     TEST_TARGET_ALIGN(LPCITEMIDLIST, 1)
1206 }
1207
1208 static void test_pack_LPCSHITEMID(void)
1209 {
1210     /* LPCSHITEMID */
1211     TEST_TYPE_SIZE   (LPCSHITEMID, 4)
1212     TEST_TYPE_ALIGN  (LPCSHITEMID, 4)
1213     TEST_TARGET_SIZE (LPCSHITEMID, 3)
1214     TEST_TARGET_ALIGN(LPCSHITEMID, 1)
1215 }
1216
1217 static void test_pack_LPITEMIDLIST(void)
1218 {
1219     /* LPITEMIDLIST */
1220     TEST_TYPE_SIZE   (LPITEMIDLIST, 4)
1221     TEST_TYPE_ALIGN  (LPITEMIDLIST, 4)
1222 }
1223
1224 static void test_pack_LPSHELLDETAILS(void)
1225 {
1226     /* LPSHELLDETAILS */
1227     TEST_TYPE_SIZE   (LPSHELLDETAILS, 4)
1228     TEST_TYPE_ALIGN  (LPSHELLDETAILS, 4)
1229 }
1230
1231 static void test_pack_LPSHITEMID(void)
1232 {
1233     /* LPSHITEMID */
1234     TEST_TYPE_SIZE   (LPSHITEMID, 4)
1235     TEST_TYPE_ALIGN  (LPSHITEMID, 4)
1236 }
1237
1238 static void test_pack_LPSTRRET(void)
1239 {
1240     /* LPSTRRET */
1241     TEST_TYPE_SIZE   (LPSTRRET, 4)
1242     TEST_TYPE_ALIGN  (LPSTRRET, 4)
1243 }
1244
1245 static void test_pack_SHELLDETAILS(void)
1246 {
1247     /* SHELLDETAILS (pack 1) */
1248     TEST_FIELD_SIZE  (SHELLDETAILS, fmt, 4)
1249     TEST_FIELD_ALIGN (SHELLDETAILS, fmt, 1)
1250     TEST_FIELD_OFFSET(SHELLDETAILS, fmt, 0)
1251     TEST_FIELD_SIZE  (SHELLDETAILS, cxChar, 4)
1252     TEST_FIELD_ALIGN (SHELLDETAILS, cxChar, 1)
1253     TEST_FIELD_OFFSET(SHELLDETAILS, cxChar, 4)
1254 }
1255
1256 static void test_pack_SHITEMID(void)
1257 {
1258     /* SHITEMID (pack 1) */
1259     TEST_TYPE_SIZE   (SHITEMID, 3)
1260     TEST_TYPE_ALIGN  (SHITEMID, 1)
1261     TEST_FIELD_SIZE  (SHITEMID, cb, 2)
1262     TEST_FIELD_ALIGN (SHITEMID, cb, 1)
1263     TEST_FIELD_OFFSET(SHITEMID, cb, 0)
1264     TEST_FIELD_SIZE  (SHITEMID, abID, 1)
1265     TEST_FIELD_ALIGN (SHITEMID, abID, 1)
1266     TEST_FIELD_OFFSET(SHITEMID, abID, 2)
1267 }
1268
1269 static void test_pack_STRRET(void)
1270 {
1271     /* STRRET (pack 4) */
1272     TEST_FIELD_SIZE  (STRRET, uType, 4)
1273     TEST_FIELD_ALIGN (STRRET, uType, 4)
1274     TEST_FIELD_OFFSET(STRRET, uType, 0)
1275 }
1276
1277 static void test_pack_AUTO_SCROLL_DATA(void)
1278 {
1279     /* AUTO_SCROLL_DATA (pack 1) */
1280     TEST_TYPE_SIZE   (AUTO_SCROLL_DATA, 48)
1281     TEST_TYPE_ALIGN  (AUTO_SCROLL_DATA, 1)
1282     TEST_FIELD_SIZE  (AUTO_SCROLL_DATA, iNextSample, 4)
1283     TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, iNextSample, 1)
1284     TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, iNextSample, 0)
1285     TEST_FIELD_SIZE  (AUTO_SCROLL_DATA, dwLastScroll, 4)
1286     TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwLastScroll, 1)
1287     TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwLastScroll, 4)
1288     TEST_FIELD_SIZE  (AUTO_SCROLL_DATA, bFull, 4)
1289     TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, bFull, 1)
1290     TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, bFull, 8)
1291     TEST_FIELD_SIZE  (AUTO_SCROLL_DATA, pts, 24)
1292     TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, pts, 1)
1293     TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, pts, 12)
1294     TEST_FIELD_SIZE  (AUTO_SCROLL_DATA, dwTimes, 12)
1295     TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwTimes, 1)
1296     TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwTimes, 36)
1297 }
1298
1299 static void test_pack_BFFCALLBACK(void)
1300 {
1301     /* BFFCALLBACK */
1302     TEST_TYPE_SIZE   (BFFCALLBACK, 4)
1303     TEST_TYPE_ALIGN  (BFFCALLBACK, 4)
1304 }
1305
1306 static void test_pack_BROWSEINFOA(void)
1307 {
1308     /* BROWSEINFOA (pack 8) */
1309     TEST_TYPE_SIZE   (BROWSEINFOA, 32)
1310     TEST_TYPE_ALIGN  (BROWSEINFOA, 4)
1311     TEST_FIELD_SIZE  (BROWSEINFOA, hwndOwner, 4)
1312     TEST_FIELD_ALIGN (BROWSEINFOA, hwndOwner, 4)
1313     TEST_FIELD_OFFSET(BROWSEINFOA, hwndOwner, 0)
1314     TEST_FIELD_SIZE  (BROWSEINFOA, pidlRoot, 4)
1315     TEST_FIELD_ALIGN (BROWSEINFOA, pidlRoot, 4)
1316     TEST_FIELD_OFFSET(BROWSEINFOA, pidlRoot, 4)
1317     TEST_FIELD_SIZE  (BROWSEINFOA, pszDisplayName, 4)
1318     TEST_FIELD_ALIGN (BROWSEINFOA, pszDisplayName, 4)
1319     TEST_FIELD_OFFSET(BROWSEINFOA, pszDisplayName, 8)
1320     TEST_FIELD_SIZE  (BROWSEINFOA, lpszTitle, 4)
1321     TEST_FIELD_ALIGN (BROWSEINFOA, lpszTitle, 4)
1322     TEST_FIELD_OFFSET(BROWSEINFOA, lpszTitle, 12)
1323     TEST_FIELD_SIZE  (BROWSEINFOA, ulFlags, 4)
1324     TEST_FIELD_ALIGN (BROWSEINFOA, ulFlags, 4)
1325     TEST_FIELD_OFFSET(BROWSEINFOA, ulFlags, 16)
1326     TEST_FIELD_SIZE  (BROWSEINFOA, lpfn, 4)
1327     TEST_FIELD_ALIGN (BROWSEINFOA, lpfn, 4)
1328     TEST_FIELD_OFFSET(BROWSEINFOA, lpfn, 20)
1329     TEST_FIELD_SIZE  (BROWSEINFOA, lParam, 4)
1330     TEST_FIELD_ALIGN (BROWSEINFOA, lParam, 4)
1331     TEST_FIELD_OFFSET(BROWSEINFOA, lParam, 24)
1332     TEST_FIELD_SIZE  (BROWSEINFOA, iImage, 4)
1333     TEST_FIELD_ALIGN (BROWSEINFOA, iImage, 4)
1334     TEST_FIELD_OFFSET(BROWSEINFOA, iImage, 28)
1335 }
1336
1337 static void test_pack_BROWSEINFOW(void)
1338 {
1339     /* BROWSEINFOW (pack 8) */
1340     TEST_TYPE_SIZE   (BROWSEINFOW, 32)
1341     TEST_TYPE_ALIGN  (BROWSEINFOW, 4)
1342     TEST_FIELD_SIZE  (BROWSEINFOW, hwndOwner, 4)
1343     TEST_FIELD_ALIGN (BROWSEINFOW, hwndOwner, 4)
1344     TEST_FIELD_OFFSET(BROWSEINFOW, hwndOwner, 0)
1345     TEST_FIELD_SIZE  (BROWSEINFOW, pidlRoot, 4)
1346     TEST_FIELD_ALIGN (BROWSEINFOW, pidlRoot, 4)
1347     TEST_FIELD_OFFSET(BROWSEINFOW, pidlRoot, 4)
1348     TEST_FIELD_SIZE  (BROWSEINFOW, pszDisplayName, 4)
1349     TEST_FIELD_ALIGN (BROWSEINFOW, pszDisplayName, 4)
1350     TEST_FIELD_OFFSET(BROWSEINFOW, pszDisplayName, 8)
1351     TEST_FIELD_SIZE  (BROWSEINFOW, lpszTitle, 4)
1352     TEST_FIELD_ALIGN (BROWSEINFOW, lpszTitle, 4)
1353     TEST_FIELD_OFFSET(BROWSEINFOW, lpszTitle, 12)
1354     TEST_FIELD_SIZE  (BROWSEINFOW, ulFlags, 4)
1355     TEST_FIELD_ALIGN (BROWSEINFOW, ulFlags, 4)
1356     TEST_FIELD_OFFSET(BROWSEINFOW, ulFlags, 16)
1357     TEST_FIELD_SIZE  (BROWSEINFOW, lpfn, 4)
1358     TEST_FIELD_ALIGN (BROWSEINFOW, lpfn, 4)
1359     TEST_FIELD_OFFSET(BROWSEINFOW, lpfn, 20)
1360     TEST_FIELD_SIZE  (BROWSEINFOW, lParam, 4)
1361     TEST_FIELD_ALIGN (BROWSEINFOW, lParam, 4)
1362     TEST_FIELD_OFFSET(BROWSEINFOW, lParam, 24)
1363     TEST_FIELD_SIZE  (BROWSEINFOW, iImage, 4)
1364     TEST_FIELD_ALIGN (BROWSEINFOW, iImage, 4)
1365     TEST_FIELD_OFFSET(BROWSEINFOW, iImage, 28)
1366 }
1367
1368 static void test_pack_CABINETSTATE(void)
1369 {
1370     /* CABINETSTATE (pack 1) */
1371     TEST_TYPE_SIZE   (CABINETSTATE, 12)
1372     TEST_TYPE_ALIGN  (CABINETSTATE, 1)
1373     TEST_FIELD_SIZE  (CABINETSTATE, cLength, 2)
1374     TEST_FIELD_ALIGN (CABINETSTATE, cLength, 1)
1375     TEST_FIELD_OFFSET(CABINETSTATE, cLength, 0)
1376     TEST_FIELD_SIZE  (CABINETSTATE, nVersion, 2)
1377     TEST_FIELD_ALIGN (CABINETSTATE, nVersion, 1)
1378     TEST_FIELD_OFFSET(CABINETSTATE, nVersion, 2)
1379     TEST_FIELD_SIZE  (CABINETSTATE, fMenuEnumFilter, 4)
1380     TEST_FIELD_ALIGN (CABINETSTATE, fMenuEnumFilter, 1)
1381     TEST_FIELD_OFFSET(CABINETSTATE, fMenuEnumFilter, 8)
1382 }
1383
1384 static void test_pack_CIDA(void)
1385 {
1386     /* CIDA (pack 1) */
1387     TEST_TYPE_SIZE   (CIDA, 8)
1388     TEST_TYPE_ALIGN  (CIDA, 1)
1389     TEST_FIELD_SIZE  (CIDA, cidl, 4)
1390     TEST_FIELD_ALIGN (CIDA, cidl, 1)
1391     TEST_FIELD_OFFSET(CIDA, cidl, 0)
1392     TEST_FIELD_SIZE  (CIDA, aoffset, 4)
1393     TEST_FIELD_ALIGN (CIDA, aoffset, 1)
1394     TEST_FIELD_OFFSET(CIDA, aoffset, 4)
1395 }
1396
1397 static void test_pack_CSFV(void)
1398 {
1399     /* CSFV (pack 1) */
1400     TEST_FIELD_SIZE  (CSFV, cbSize, 4)
1401     TEST_FIELD_ALIGN (CSFV, cbSize, 1)
1402     TEST_FIELD_OFFSET(CSFV, cbSize, 0)
1403     TEST_FIELD_SIZE  (CSFV, pshf, 4)
1404     TEST_FIELD_ALIGN (CSFV, pshf, 1)
1405     TEST_FIELD_OFFSET(CSFV, pshf, 4)
1406     TEST_FIELD_SIZE  (CSFV, psvOuter, 4)
1407     TEST_FIELD_ALIGN (CSFV, psvOuter, 1)
1408     TEST_FIELD_OFFSET(CSFV, psvOuter, 8)
1409     TEST_FIELD_SIZE  (CSFV, pidl, 4)
1410     TEST_FIELD_ALIGN (CSFV, pidl, 1)
1411     TEST_FIELD_OFFSET(CSFV, pidl, 12)
1412     TEST_FIELD_SIZE  (CSFV, lEvents, 4)
1413     TEST_FIELD_ALIGN (CSFV, lEvents, 1)
1414     TEST_FIELD_OFFSET(CSFV, lEvents, 16)
1415     TEST_FIELD_SIZE  (CSFV, pfnCallback, 4)
1416     TEST_FIELD_ALIGN (CSFV, pfnCallback, 1)
1417     TEST_FIELD_OFFSET(CSFV, pfnCallback, 20)
1418 }
1419
1420 static void test_pack_DROPFILES(void)
1421 {
1422     /* DROPFILES (pack 1) */
1423     TEST_TYPE_SIZE   (DROPFILES, 20)
1424     TEST_TYPE_ALIGN  (DROPFILES, 1)
1425     TEST_FIELD_SIZE  (DROPFILES, pFiles, 4)
1426     TEST_FIELD_ALIGN (DROPFILES, pFiles, 1)
1427     TEST_FIELD_OFFSET(DROPFILES, pFiles, 0)
1428     TEST_FIELD_SIZE  (DROPFILES, pt, 8)
1429     TEST_FIELD_ALIGN (DROPFILES, pt, 1)
1430     TEST_FIELD_OFFSET(DROPFILES, pt, 4)
1431     TEST_FIELD_SIZE  (DROPFILES, fNC, 4)
1432     TEST_FIELD_ALIGN (DROPFILES, fNC, 1)
1433     TEST_FIELD_OFFSET(DROPFILES, fNC, 12)
1434     TEST_FIELD_SIZE  (DROPFILES, fWide, 4)
1435     TEST_FIELD_ALIGN (DROPFILES, fWide, 1)
1436     TEST_FIELD_OFFSET(DROPFILES, fWide, 16)
1437 }
1438
1439 static void test_pack_FILEDESCRIPTORA(void)
1440 {
1441     /* FILEDESCRIPTORA (pack 1) */
1442     TEST_TYPE_SIZE   (FILEDESCRIPTORA, 332)
1443     TEST_TYPE_ALIGN  (FILEDESCRIPTORA, 1)
1444     TEST_FIELD_SIZE  (FILEDESCRIPTORA, dwFlags, 4)
1445     TEST_FIELD_ALIGN (FILEDESCRIPTORA, dwFlags, 1)
1446     TEST_FIELD_OFFSET(FILEDESCRIPTORA, dwFlags, 0)
1447     TEST_FIELD_SIZE  (FILEDESCRIPTORA, clsid, 16)
1448     TEST_FIELD_ALIGN (FILEDESCRIPTORA, clsid, 1)
1449     TEST_FIELD_OFFSET(FILEDESCRIPTORA, clsid, 4)
1450     TEST_FIELD_SIZE  (FILEDESCRIPTORA, sizel, 8)
1451     TEST_FIELD_ALIGN (FILEDESCRIPTORA, sizel, 1)
1452     TEST_FIELD_OFFSET(FILEDESCRIPTORA, sizel, 20)
1453     TEST_FIELD_SIZE  (FILEDESCRIPTORA, pointl, 8)
1454     TEST_FIELD_ALIGN (FILEDESCRIPTORA, pointl, 1)
1455     TEST_FIELD_OFFSET(FILEDESCRIPTORA, pointl, 28)
1456     TEST_FIELD_SIZE  (FILEDESCRIPTORA, dwFileAttributes, 4)
1457     TEST_FIELD_ALIGN (FILEDESCRIPTORA, dwFileAttributes, 1)
1458     TEST_FIELD_OFFSET(FILEDESCRIPTORA, dwFileAttributes, 36)
1459     TEST_FIELD_SIZE  (FILEDESCRIPTORA, ftCreationTime, 8)
1460     TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftCreationTime, 1)
1461     TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftCreationTime, 40)
1462     TEST_FIELD_SIZE  (FILEDESCRIPTORA, ftLastAccessTime, 8)
1463     TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastAccessTime, 1)
1464     TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastAccessTime, 48)
1465     TEST_FIELD_SIZE  (FILEDESCRIPTORA, ftLastWriteTime, 8)
1466     TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastWriteTime, 1)
1467     TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastWriteTime, 56)
1468     TEST_FIELD_SIZE  (FILEDESCRIPTORA, nFileSizeHigh, 4)
1469     TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeHigh, 1)
1470     TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeHigh, 64)
1471     TEST_FIELD_SIZE  (FILEDESCRIPTORA, nFileSizeLow, 4)
1472     TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeLow, 1)
1473     TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeLow, 68)
1474     TEST_FIELD_SIZE  (FILEDESCRIPTORA, cFileName, 260)
1475     TEST_FIELD_ALIGN (FILEDESCRIPTORA, cFileName, 1)
1476     TEST_FIELD_OFFSET(FILEDESCRIPTORA, cFileName, 72)
1477 }
1478
1479 static void test_pack_FILEDESCRIPTORW(void)
1480 {
1481     /* FILEDESCRIPTORW (pack 1) */
1482     TEST_TYPE_SIZE   (FILEDESCRIPTORW, 592)
1483     TEST_TYPE_ALIGN  (FILEDESCRIPTORW, 1)
1484     TEST_FIELD_SIZE  (FILEDESCRIPTORW, dwFlags, 4)
1485     TEST_FIELD_ALIGN (FILEDESCRIPTORW, dwFlags, 1)
1486     TEST_FIELD_OFFSET(FILEDESCRIPTORW, dwFlags, 0)
1487     TEST_FIELD_SIZE  (FILEDESCRIPTORW, clsid, 16)
1488     TEST_FIELD_ALIGN (FILEDESCRIPTORW, clsid, 1)
1489     TEST_FIELD_OFFSET(FILEDESCRIPTORW, clsid, 4)
1490     TEST_FIELD_SIZE  (FILEDESCRIPTORW, sizel, 8)
1491     TEST_FIELD_ALIGN (FILEDESCRIPTORW, sizel, 1)
1492     TEST_FIELD_OFFSET(FILEDESCRIPTORW, sizel, 20)
1493     TEST_FIELD_SIZE  (FILEDESCRIPTORW, pointl, 8)
1494     TEST_FIELD_ALIGN (FILEDESCRIPTORW, pointl, 1)
1495     TEST_FIELD_OFFSET(FILEDESCRIPTORW, pointl, 28)
1496     TEST_FIELD_SIZE  (FILEDESCRIPTORW, dwFileAttributes, 4)
1497     TEST_FIELD_ALIGN (FILEDESCRIPTORW, dwFileAttributes, 1)
1498     TEST_FIELD_OFFSET(FILEDESCRIPTORW, dwFileAttributes, 36)
1499     TEST_FIELD_SIZE  (FILEDESCRIPTORW, ftCreationTime, 8)
1500     TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftCreationTime, 1)
1501     TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftCreationTime, 40)
1502     TEST_FIELD_SIZE  (FILEDESCRIPTORW, ftLastAccessTime, 8)
1503     TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastAccessTime, 1)
1504     TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastAccessTime, 48)
1505     TEST_FIELD_SIZE  (FILEDESCRIPTORW, ftLastWriteTime, 8)
1506     TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastWriteTime, 1)
1507     TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastWriteTime, 56)
1508     TEST_FIELD_SIZE  (FILEDESCRIPTORW, nFileSizeHigh, 4)
1509     TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeHigh, 1)
1510     TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeHigh, 64)
1511     TEST_FIELD_SIZE  (FILEDESCRIPTORW, nFileSizeLow, 4)
1512     TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeLow, 1)
1513     TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeLow, 68)
1514     TEST_FIELD_SIZE  (FILEDESCRIPTORW, cFileName, 520)
1515     TEST_FIELD_ALIGN (FILEDESCRIPTORW, cFileName, 1)
1516     TEST_FIELD_OFFSET(FILEDESCRIPTORW, cFileName, 72)
1517 }
1518
1519 static void test_pack_FILEGROUPDESCRIPTORA(void)
1520 {
1521     /* FILEGROUPDESCRIPTORA (pack 1) */
1522     TEST_TYPE_SIZE   (FILEGROUPDESCRIPTORA, 336)
1523     TEST_TYPE_ALIGN  (FILEGROUPDESCRIPTORA, 1)
1524     TEST_FIELD_SIZE  (FILEGROUPDESCRIPTORA, cItems, 4)
1525     TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORA, cItems, 1)
1526     TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORA, cItems, 0)
1527     TEST_FIELD_SIZE  (FILEGROUPDESCRIPTORA, fgd, 332)
1528     TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORA, fgd, 1)
1529     TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORA, fgd, 4)
1530 }
1531
1532 static void test_pack_FILEGROUPDESCRIPTORW(void)
1533 {
1534     /* FILEGROUPDESCRIPTORW (pack 1) */
1535     TEST_TYPE_SIZE   (FILEGROUPDESCRIPTORW, 596)
1536     TEST_TYPE_ALIGN  (FILEGROUPDESCRIPTORW, 1)
1537     TEST_FIELD_SIZE  (FILEGROUPDESCRIPTORW, cItems, 4)
1538     TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORW, cItems, 1)
1539     TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORW, cItems, 0)
1540     TEST_FIELD_SIZE  (FILEGROUPDESCRIPTORW, fgd, 592)
1541     TEST_FIELD_ALIGN (FILEGROUPDESCRIPTORW, fgd, 1)
1542     TEST_FIELD_OFFSET(FILEGROUPDESCRIPTORW, fgd, 4)
1543 }
1544
1545 static void test_pack_LPBROWSEINFOA(void)
1546 {
1547     /* LPBROWSEINFOA */
1548     TEST_TYPE_SIZE   (LPBROWSEINFOA, 4)
1549     TEST_TYPE_ALIGN  (LPBROWSEINFOA, 4)
1550     TEST_TARGET_SIZE (LPBROWSEINFOA, 32)
1551     TEST_TARGET_ALIGN(LPBROWSEINFOA, 4)
1552 }
1553
1554 static void test_pack_LPBROWSEINFOW(void)
1555 {
1556     /* LPBROWSEINFOW */
1557     TEST_TYPE_SIZE   (LPBROWSEINFOW, 4)
1558     TEST_TYPE_ALIGN  (LPBROWSEINFOW, 4)
1559     TEST_TARGET_SIZE (LPBROWSEINFOW, 32)
1560     TEST_TARGET_ALIGN(LPBROWSEINFOW, 4)
1561 }
1562
1563 static void test_pack_LPCABINETSTATE(void)
1564 {
1565     /* LPCABINETSTATE */
1566     TEST_TYPE_SIZE   (LPCABINETSTATE, 4)
1567     TEST_TYPE_ALIGN  (LPCABINETSTATE, 4)
1568     TEST_TARGET_SIZE (LPCABINETSTATE, 12)
1569     TEST_TARGET_ALIGN(LPCABINETSTATE, 1)
1570 }
1571
1572 static void test_pack_LPCSFV(void)
1573 {
1574     /* LPCSFV */
1575     TEST_TYPE_SIZE   (LPCSFV, 4)
1576     TEST_TYPE_ALIGN  (LPCSFV, 4)
1577 }
1578
1579 static void test_pack_LPDROPFILES(void)
1580 {
1581     /* LPDROPFILES */
1582     TEST_TYPE_SIZE   (LPDROPFILES, 4)
1583     TEST_TYPE_ALIGN  (LPDROPFILES, 4)
1584     TEST_TARGET_SIZE (LPDROPFILES, 20)
1585     TEST_TARGET_ALIGN(LPDROPFILES, 1)
1586 }
1587
1588 static void test_pack_LPFILEDESCRIPTORA(void)
1589 {
1590     /* LPFILEDESCRIPTORA */
1591     TEST_TYPE_SIZE   (LPFILEDESCRIPTORA, 4)
1592     TEST_TYPE_ALIGN  (LPFILEDESCRIPTORA, 4)
1593     TEST_TARGET_SIZE (LPFILEDESCRIPTORA, 332)
1594     TEST_TARGET_ALIGN(LPFILEDESCRIPTORA, 1)
1595 }
1596
1597 static void test_pack_LPFILEDESCRIPTORW(void)
1598 {
1599     /* LPFILEDESCRIPTORW */
1600     TEST_TYPE_SIZE   (LPFILEDESCRIPTORW, 4)
1601     TEST_TYPE_ALIGN  (LPFILEDESCRIPTORW, 4)
1602     TEST_TARGET_SIZE (LPFILEDESCRIPTORW, 592)
1603     TEST_TARGET_ALIGN(LPFILEDESCRIPTORW, 1)
1604 }
1605
1606 static void test_pack_LPFILEGROUPDESCRIPTORA(void)
1607 {
1608     /* LPFILEGROUPDESCRIPTORA */
1609     TEST_TYPE_SIZE   (LPFILEGROUPDESCRIPTORA, 4)
1610     TEST_TYPE_ALIGN  (LPFILEGROUPDESCRIPTORA, 4)
1611     TEST_TARGET_SIZE (LPFILEGROUPDESCRIPTORA, 336)
1612     TEST_TARGET_ALIGN(LPFILEGROUPDESCRIPTORA, 1)
1613 }
1614
1615 static void test_pack_LPFILEGROUPDESCRIPTORW(void)
1616 {
1617     /* LPFILEGROUPDESCRIPTORW */
1618     TEST_TYPE_SIZE   (LPFILEGROUPDESCRIPTORW, 4)
1619     TEST_TYPE_ALIGN  (LPFILEGROUPDESCRIPTORW, 4)
1620     TEST_TARGET_SIZE (LPFILEGROUPDESCRIPTORW, 596)
1621     TEST_TARGET_ALIGN(LPFILEGROUPDESCRIPTORW, 1)
1622 }
1623
1624 static void test_pack_LPFNVIEWCALLBACK(void)
1625 {
1626     /* LPFNVIEWCALLBACK */
1627     TEST_TYPE_SIZE   (LPFNVIEWCALLBACK, 4)
1628     TEST_TYPE_ALIGN  (LPFNVIEWCALLBACK, 4)
1629 }
1630
1631 static void test_pack_LPIDA(void)
1632 {
1633     /* LPIDA */
1634     TEST_TYPE_SIZE   (LPIDA, 4)
1635     TEST_TYPE_ALIGN  (LPIDA, 4)
1636     TEST_TARGET_SIZE (LPIDA, 8)
1637     TEST_TARGET_ALIGN(LPIDA, 1)
1638 }
1639
1640 static void test_pack_LPQCMINFO(void)
1641 {
1642     /* LPQCMINFO */
1643     TEST_TYPE_SIZE   (LPQCMINFO, 4)
1644     TEST_TYPE_ALIGN  (LPQCMINFO, 4)
1645     TEST_TARGET_SIZE (LPQCMINFO, 20)
1646     TEST_TARGET_ALIGN(LPQCMINFO, 4)
1647 }
1648
1649 static void test_pack_LPSHChangeDWORDAsIDList(void)
1650 {
1651     /* LPSHChangeDWORDAsIDList */
1652     TEST_TYPE_SIZE   (LPSHChangeDWORDAsIDList, 4)
1653     TEST_TYPE_ALIGN  (LPSHChangeDWORDAsIDList, 4)
1654     TEST_TARGET_SIZE (LPSHChangeDWORDAsIDList, 12)
1655     TEST_TARGET_ALIGN(LPSHChangeDWORDAsIDList, 1)
1656 }
1657
1658 static void test_pack_LPSHChangeProductKeyAsIDList(void)
1659 {
1660     /* LPSHChangeProductKeyAsIDList */
1661     TEST_TYPE_SIZE   (LPSHChangeProductKeyAsIDList, 4)
1662     TEST_TYPE_ALIGN  (LPSHChangeProductKeyAsIDList, 4)
1663     TEST_TARGET_SIZE (LPSHChangeProductKeyAsIDList, 82)
1664     TEST_TARGET_ALIGN(LPSHChangeProductKeyAsIDList, 1)
1665 }
1666
1667 static void test_pack_LPSHDESCRIPTIONID(void)
1668 {
1669     /* LPSHDESCRIPTIONID */
1670     TEST_TYPE_SIZE   (LPSHDESCRIPTIONID, 4)
1671     TEST_TYPE_ALIGN  (LPSHDESCRIPTIONID, 4)
1672     TEST_TARGET_SIZE (LPSHDESCRIPTIONID, 20)
1673     TEST_TARGET_ALIGN(LPSHDESCRIPTIONID, 4)
1674 }
1675
1676 static void test_pack_LPSHELLFLAGSTATE(void)
1677 {
1678     /* LPSHELLFLAGSTATE */
1679     TEST_TYPE_SIZE   (LPSHELLFLAGSTATE, 4)
1680     TEST_TYPE_ALIGN  (LPSHELLFLAGSTATE, 4)
1681     TEST_TARGET_SIZE (LPSHELLFLAGSTATE, 4)
1682     TEST_TARGET_ALIGN(LPSHELLFLAGSTATE, 1)
1683 }
1684
1685 static void test_pack_LPSHELLSTATE(void)
1686 {
1687     /* LPSHELLSTATE */
1688     TEST_TYPE_SIZE   (LPSHELLSTATE, 4)
1689     TEST_TYPE_ALIGN  (LPSHELLSTATE, 4)
1690     TEST_TARGET_SIZE (LPSHELLSTATE, 32)
1691     TEST_TARGET_ALIGN(LPSHELLSTATE, 1)
1692 }
1693
1694 static void test_pack_LPTBINFO(void)
1695 {
1696     /* LPTBINFO */
1697     TEST_TYPE_SIZE   (LPTBINFO, 4)
1698     TEST_TYPE_ALIGN  (LPTBINFO, 4)
1699     TEST_TARGET_SIZE (LPTBINFO, 8)
1700     TEST_TARGET_ALIGN(LPTBINFO, 4)
1701 }
1702
1703 static void test_pack_PBROWSEINFOA(void)
1704 {
1705     /* PBROWSEINFOA */
1706     TEST_TYPE_SIZE   (PBROWSEINFOA, 4)
1707     TEST_TYPE_ALIGN  (PBROWSEINFOA, 4)
1708     TEST_TARGET_SIZE (PBROWSEINFOA, 32)
1709     TEST_TARGET_ALIGN(PBROWSEINFOA, 4)
1710 }
1711
1712 static void test_pack_PBROWSEINFOW(void)
1713 {
1714     /* PBROWSEINFOW */
1715     TEST_TYPE_SIZE   (PBROWSEINFOW, 4)
1716     TEST_TYPE_ALIGN  (PBROWSEINFOW, 4)
1717     TEST_TARGET_SIZE (PBROWSEINFOW, 32)
1718     TEST_TARGET_ALIGN(PBROWSEINFOW, 4)
1719 }
1720
1721 static void test_pack_QCMINFO(void)
1722 {
1723     /* QCMINFO (pack 8) */
1724     TEST_TYPE_SIZE   (QCMINFO, 20)
1725     TEST_TYPE_ALIGN  (QCMINFO, 4)
1726     TEST_FIELD_SIZE  (QCMINFO, hmenu, 4)
1727     TEST_FIELD_ALIGN (QCMINFO, hmenu, 4)
1728     TEST_FIELD_OFFSET(QCMINFO, hmenu, 0)
1729     TEST_FIELD_SIZE  (QCMINFO, indexMenu, 4)
1730     TEST_FIELD_ALIGN (QCMINFO, indexMenu, 4)
1731     TEST_FIELD_OFFSET(QCMINFO, indexMenu, 4)
1732     TEST_FIELD_SIZE  (QCMINFO, idCmdFirst, 4)
1733     TEST_FIELD_ALIGN (QCMINFO, idCmdFirst, 4)
1734     TEST_FIELD_OFFSET(QCMINFO, idCmdFirst, 8)
1735     TEST_FIELD_SIZE  (QCMINFO, idCmdLast, 4)
1736     TEST_FIELD_ALIGN (QCMINFO, idCmdLast, 4)
1737     TEST_FIELD_OFFSET(QCMINFO, idCmdLast, 12)
1738     TEST_FIELD_SIZE  (QCMINFO, pIdMap, 4)
1739     TEST_FIELD_ALIGN (QCMINFO, pIdMap, 4)
1740     TEST_FIELD_OFFSET(QCMINFO, pIdMap, 16)
1741 }
1742
1743 static void test_pack_QCMINFO_IDMAP(void)
1744 {
1745     /* QCMINFO_IDMAP (pack 8) */
1746     TEST_TYPE_SIZE   (QCMINFO_IDMAP, 12)
1747     TEST_TYPE_ALIGN  (QCMINFO_IDMAP, 4)
1748     TEST_FIELD_SIZE  (QCMINFO_IDMAP, nMaxIds, 4)
1749     TEST_FIELD_ALIGN (QCMINFO_IDMAP, nMaxIds, 4)
1750     TEST_FIELD_OFFSET(QCMINFO_IDMAP, nMaxIds, 0)
1751     TEST_FIELD_SIZE  (QCMINFO_IDMAP, pIdList, 8)
1752     TEST_FIELD_ALIGN (QCMINFO_IDMAP, pIdList, 4)
1753     TEST_FIELD_OFFSET(QCMINFO_IDMAP, pIdList, 4)
1754 }
1755
1756 static void test_pack_QCMINFO_IDMAP_PLACEMENT(void)
1757 {
1758     /* QCMINFO_IDMAP_PLACEMENT (pack 8) */
1759     TEST_TYPE_SIZE   (QCMINFO_IDMAP_PLACEMENT, 8)
1760     TEST_TYPE_ALIGN  (QCMINFO_IDMAP_PLACEMENT, 4)
1761     TEST_FIELD_SIZE  (QCMINFO_IDMAP_PLACEMENT, id, 4)
1762     TEST_FIELD_ALIGN (QCMINFO_IDMAP_PLACEMENT, id, 4)
1763     TEST_FIELD_OFFSET(QCMINFO_IDMAP_PLACEMENT, id, 0)
1764     TEST_FIELD_SIZE  (QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
1765     TEST_FIELD_ALIGN (QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
1766     TEST_FIELD_OFFSET(QCMINFO_IDMAP_PLACEMENT, fFlags, 4)
1767 }
1768
1769 static void test_pack_SHChangeDWORDAsIDList(void)
1770 {
1771     /* SHChangeDWORDAsIDList (pack 1) */
1772     TEST_TYPE_SIZE   (SHChangeDWORDAsIDList, 12)
1773     TEST_TYPE_ALIGN  (SHChangeDWORDAsIDList, 1)
1774     TEST_FIELD_SIZE  (SHChangeDWORDAsIDList, cb, 2)
1775     TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, cb, 1)
1776     TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, cb, 0)
1777     TEST_FIELD_SIZE  (SHChangeDWORDAsIDList, dwItem1, 4)
1778     TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, dwItem1, 1)
1779     TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, dwItem1, 2)
1780     TEST_FIELD_SIZE  (SHChangeDWORDAsIDList, dwItem2, 4)
1781     TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, dwItem2, 1)
1782     TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, dwItem2, 6)
1783     TEST_FIELD_SIZE  (SHChangeDWORDAsIDList, cbZero, 2)
1784     TEST_FIELD_ALIGN (SHChangeDWORDAsIDList, cbZero, 1)
1785     TEST_FIELD_OFFSET(SHChangeDWORDAsIDList, cbZero, 10)
1786 }
1787
1788 static void test_pack_SHChangeNotifyEntry(void)
1789 {
1790     /* SHChangeNotifyEntry (pack 1) */
1791     TEST_TYPE_SIZE   (SHChangeNotifyEntry, 8)
1792     TEST_TYPE_ALIGN  (SHChangeNotifyEntry, 1)
1793     TEST_FIELD_SIZE  (SHChangeNotifyEntry, pidl, 4)
1794     TEST_FIELD_ALIGN (SHChangeNotifyEntry, pidl, 1)
1795     TEST_FIELD_OFFSET(SHChangeNotifyEntry, pidl, 0)
1796     TEST_FIELD_SIZE  (SHChangeNotifyEntry, fRecursive, 4)
1797     TEST_FIELD_ALIGN (SHChangeNotifyEntry, fRecursive, 1)
1798     TEST_FIELD_OFFSET(SHChangeNotifyEntry, fRecursive, 4)
1799 }
1800
1801 static void test_pack_SHChangeProductKeyAsIDList(void)
1802 {
1803     /* SHChangeProductKeyAsIDList (pack 1) */
1804     TEST_TYPE_SIZE   (SHChangeProductKeyAsIDList, 82)
1805     TEST_TYPE_ALIGN  (SHChangeProductKeyAsIDList, 1)
1806     TEST_FIELD_SIZE  (SHChangeProductKeyAsIDList, cb, 2)
1807     TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, cb, 1)
1808     TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, cb, 0)
1809     TEST_FIELD_SIZE  (SHChangeProductKeyAsIDList, wszProductKey, 78)
1810     TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, wszProductKey, 1)
1811     TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, wszProductKey, 2)
1812     TEST_FIELD_SIZE  (SHChangeProductKeyAsIDList, cbZero, 2)
1813     TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, cbZero, 1)
1814     TEST_FIELD_OFFSET(SHChangeProductKeyAsIDList, cbZero, 80)
1815 }
1816
1817 static void test_pack_SHDESCRIPTIONID(void)
1818 {
1819     /* SHDESCRIPTIONID (pack 8) */
1820     TEST_TYPE_SIZE   (SHDESCRIPTIONID, 20)
1821     TEST_TYPE_ALIGN  (SHDESCRIPTIONID, 4)
1822     TEST_FIELD_SIZE  (SHDESCRIPTIONID, dwDescriptionId, 4)
1823     TEST_FIELD_ALIGN (SHDESCRIPTIONID, dwDescriptionId, 4)
1824     TEST_FIELD_OFFSET(SHDESCRIPTIONID, dwDescriptionId, 0)
1825     TEST_FIELD_SIZE  (SHDESCRIPTIONID, clsid, 16)
1826     TEST_FIELD_ALIGN (SHDESCRIPTIONID, clsid, 4)
1827     TEST_FIELD_OFFSET(SHDESCRIPTIONID, clsid, 4)
1828 }
1829
1830 static void test_pack_SHELLFLAGSTATE(void)
1831 {
1832     /* SHELLFLAGSTATE (pack 1) */
1833     TEST_TYPE_SIZE   (SHELLFLAGSTATE, 4)
1834     TEST_TYPE_ALIGN  (SHELLFLAGSTATE, 1)
1835 }
1836
1837 static void test_pack_SHELLSTATE(void)
1838 {
1839     /* SHELLSTATE (pack 1) */
1840     TEST_TYPE_SIZE   (SHELLSTATE, 32)
1841     TEST_TYPE_ALIGN  (SHELLSTATE, 1)
1842     TEST_FIELD_SIZE  (SHELLSTATE, dwWin95Unused, 4)
1843     TEST_FIELD_ALIGN (SHELLSTATE, dwWin95Unused, 1)
1844     TEST_FIELD_OFFSET(SHELLSTATE, dwWin95Unused, 4)
1845     TEST_FIELD_SIZE  (SHELLSTATE, uWin95Unused, 4)
1846     TEST_FIELD_ALIGN (SHELLSTATE, uWin95Unused, 1)
1847     TEST_FIELD_OFFSET(SHELLSTATE, uWin95Unused, 8)
1848     TEST_FIELD_SIZE  (SHELLSTATE, lParamSort, 4)
1849     TEST_FIELD_ALIGN (SHELLSTATE, lParamSort, 1)
1850     TEST_FIELD_OFFSET(SHELLSTATE, lParamSort, 12)
1851     TEST_FIELD_SIZE  (SHELLSTATE, iSortDirection, 4)
1852     TEST_FIELD_ALIGN (SHELLSTATE, iSortDirection, 1)
1853     TEST_FIELD_OFFSET(SHELLSTATE, iSortDirection, 16)
1854     TEST_FIELD_SIZE  (SHELLSTATE, version, 4)
1855     TEST_FIELD_ALIGN (SHELLSTATE, version, 1)
1856     TEST_FIELD_OFFSET(SHELLSTATE, version, 20)
1857     TEST_FIELD_SIZE  (SHELLSTATE, uNotUsed, 4)
1858     TEST_FIELD_ALIGN (SHELLSTATE, uNotUsed, 1)
1859     TEST_FIELD_OFFSET(SHELLSTATE, uNotUsed, 24)
1860 }
1861
1862 static void test_pack_TBINFO(void)
1863 {
1864     /* TBINFO (pack 8) */
1865     TEST_TYPE_SIZE   (TBINFO, 8)
1866     TEST_TYPE_ALIGN  (TBINFO, 4)
1867     TEST_FIELD_SIZE  (TBINFO, cbuttons, 4)
1868     TEST_FIELD_ALIGN (TBINFO, cbuttons, 4)
1869     TEST_FIELD_OFFSET(TBINFO, cbuttons, 0)
1870     TEST_FIELD_SIZE  (TBINFO, uFlags, 4)
1871     TEST_FIELD_ALIGN (TBINFO, uFlags, 4)
1872     TEST_FIELD_OFFSET(TBINFO, uFlags, 4)
1873 }
1874
1875 static void test_pack(void)
1876 {
1877     test_pack_APPBARDATA();
1878     test_pack_AUTO_SCROLL_DATA();
1879     test_pack_BFFCALLBACK();
1880     test_pack_BLOB();
1881     test_pack_BROWSEINFOA();
1882     test_pack_BROWSEINFOW();
1883     test_pack_BSTR();
1884     test_pack_BSTRBLOB();
1885     test_pack_BYTE_BLOB();
1886     test_pack_BYTE_SIZEDARR();
1887     test_pack_CABINETSTATE();
1888     test_pack_CIDA();
1889     test_pack_CLIPDATA();
1890     test_pack_CLIPFORMAT();
1891     test_pack_CLSID();
1892     test_pack_COAUTHIDENTITY();
1893     test_pack_COAUTHINFO();
1894     test_pack_CSFV();
1895     test_pack_DATE();
1896     test_pack_DOUBLE();
1897     test_pack_DRAGINFOA();
1898     test_pack_DRAGINFOW();
1899     test_pack_DROPFILES();
1900     test_pack_DWORD_SIZEDARR();
1901     test_pack_FILEDESCRIPTORA();
1902     test_pack_FILEDESCRIPTORW();
1903     test_pack_FILEGROUPDESCRIPTORA();
1904     test_pack_FILEGROUPDESCRIPTORW();
1905     test_pack_FILEOP_FLAGS();
1906     test_pack_FLAGGED_BYTE_BLOB();
1907     test_pack_FLAGGED_WORD_BLOB();
1908     test_pack_FMTID();
1909     test_pack_HMETAFILEPICT();
1910     test_pack_HYPER_SIZEDARR();
1911     test_pack_IID();
1912     test_pack_ITEMIDLIST();
1913     test_pack_LPBLOB();
1914     test_pack_LPBROWSEINFOA();
1915     test_pack_LPBROWSEINFOW();
1916     test_pack_LPBSTR();
1917     test_pack_LPBSTRBLOB();
1918     test_pack_LPCABINETSTATE();
1919     test_pack_LPCITEMIDLIST();
1920     test_pack_LPCOLESTR();
1921     test_pack_LPCSFV();
1922     test_pack_LPCSHITEMID();
1923     test_pack_LPCY();
1924     test_pack_LPDECIMAL();
1925     test_pack_LPDRAGINFOA();
1926     test_pack_LPDRAGINFOW();
1927     test_pack_LPDROPFILES();
1928     test_pack_LPFILEDESCRIPTORA();
1929     test_pack_LPFILEDESCRIPTORW();
1930     test_pack_LPFILEGROUPDESCRIPTORA();
1931     test_pack_LPFILEGROUPDESCRIPTORW();
1932     test_pack_LPFNVIEWCALLBACK();
1933     test_pack_LPIDA();
1934     test_pack_LPITEMIDLIST();
1935     test_pack_LPOLESTR();
1936     test_pack_LPQCMINFO();
1937     test_pack_LPSHChangeDWORDAsIDList();
1938     test_pack_LPSHChangeProductKeyAsIDList();
1939     test_pack_LPSHDESCRIPTIONID();
1940     test_pack_LPSHELLDETAILS();
1941     test_pack_LPSHELLEXECUTEINFOA();
1942     test_pack_LPSHELLEXECUTEINFOW();
1943     test_pack_LPSHELLFLAGSTATE();
1944     test_pack_LPSHELLSTATE();
1945     test_pack_LPSHFILEOPSTRUCTA();
1946     test_pack_LPSHFILEOPSTRUCTW();
1947     test_pack_LPSHITEMID();
1948     test_pack_LPSHNAMEMAPPINGA();
1949     test_pack_LPSHNAMEMAPPINGW();
1950     test_pack_LPSTRRET();
1951     test_pack_LPTBINFO();
1952     test_pack_NOTIFYICONDATAA();
1953     test_pack_NOTIFYICONDATAW();
1954     test_pack_OLECHAR();
1955     test_pack_PAPPBARDATA();
1956     test_pack_PBROWSEINFOA();
1957     test_pack_PBROWSEINFOW();
1958     test_pack_PNOTIFYICONDATAA();
1959     test_pack_PNOTIFYICONDATAW();
1960     test_pack_PRINTEROP_FLAGS();
1961     test_pack_PROPID();
1962     test_pack_QCMINFO();
1963     test_pack_QCMINFO_IDMAP();
1964     test_pack_QCMINFO_IDMAP_PLACEMENT();
1965     test_pack_RemHBITMAP();
1966     test_pack_RemHENHMETAFILE();
1967     test_pack_RemHGLOBAL();
1968     test_pack_RemHMETAFILEPICT();
1969     test_pack_RemHPALETTE();
1970     test_pack_SCODE();
1971     test_pack_SHChangeDWORDAsIDList();
1972     test_pack_SHChangeNotifyEntry();
1973     test_pack_SHChangeProductKeyAsIDList();
1974     test_pack_SHDESCRIPTIONID();
1975     test_pack_SHELLDETAILS();
1976     test_pack_SHELLEXECUTEINFOA();
1977     test_pack_SHELLEXECUTEINFOW();
1978     test_pack_SHELLFLAGSTATE();
1979     test_pack_SHELLSTATE();
1980     test_pack_SHFILEINFOA();
1981     test_pack_SHFILEINFOW();
1982     test_pack_SHFILEOPSTRUCTA();
1983     test_pack_SHFILEOPSTRUCTW();
1984     test_pack_SHITEMID();
1985     test_pack_SHNAMEMAPPINGA();
1986     test_pack_SHNAMEMAPPINGW();
1987     test_pack_STRRET();
1988     test_pack_TBINFO();
1989     test_pack_UP_BYTE_BLOB();
1990     test_pack_UP_FLAGGED_BYTE_BLOB();
1991     test_pack_UP_FLAGGED_WORD_BLOB();
1992     test_pack_VARIANT_BOOL();
1993     test_pack_VARTYPE();
1994     test_pack_WORD_SIZEDARR();
1995     test_pack_remoteMETAFILEPICT();
1996     test_pack_userBITMAP();
1997     test_pack_userCLIPFORMAT();
1998     test_pack_userHBITMAP();
1999     test_pack_userHENHMETAFILE();
2000     test_pack_userHGLOBAL();
2001     test_pack_userHMETAFILE();
2002     test_pack_userHMETAFILEPICT();
2003     test_pack_userHPALETTE();
2004     test_pack_wireBSTR();
2005     test_pack_wireCLIPFORMAT();
2006     test_pack_wireHBITMAP();
2007     test_pack_wireHENHMETAFILE();
2008     test_pack_wireHGLOBAL();
2009     test_pack_wireHMETAFILE();
2010     test_pack_wireHMETAFILEPICT();
2011     test_pack_wireHPALETTE();
2012 }
2013
2014 START_TEST(generated)
2015 {
2016 #ifdef _WIN64
2017     ok(0, "The type size / alignment tests don't support Win64 yet\n");
2018 #else
2019     test_pack();
2020 #endif
2021 }