ReactOS  0.4.14-dev-552-g2fad488
generated.c
Go to the documentation of this file.
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 #ifndef __REACTOS__
9 #define WINVER 0x0501
10 #define _WIN32_IE 0x0501
11 #define _WIN32_WINNT 0x0501
12 #endif
13 
14 #define WINE_NOWINSOCK
15 
16 #include <stdarg.h>
17 #include "windef.h"
18 #include "winbase.h"
19 #include "wtypes.h"
20 #include "shellapi.h"
21 #include "winuser.h"
22 #include "wingdi.h"
23 #include "shlobj.h"
24 
25 #include "wine/test.h"
26 
27 /***********************************************************************
28  * Compatibility macros
29  */
30 
31 #define DWORD_PTR UINT_PTR
32 #define LONG_PTR INT_PTR
33 #define ULONG_PTR UINT_PTR
34 
35 /***********************************************************************
36  * Windows API extension
37  */
38 
39 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
40 # define _TYPE_ALIGNMENT(type) __alignof(type)
41 #elif defined(__GNUC__)
42 # define _TYPE_ALIGNMENT(type) __alignof__(type)
43 #else
44 /*
45  * FIXME: May not be possible without a compiler extension
46  * (if type is not just a name that is, otherwise the normal
47  * TYPE_ALIGNMENT can be used)
48  */
49 #endif
50 
51 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
52 #pragma warning(disable:4116)
53 #endif
54 
55 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
56 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
57 #endif
58 
59 /***********************************************************************
60  * Test helper macros
61  */
62 
63 #define TEST_TYPE_SIZE(type, size) C_ASSERT(sizeof(type) == size);
64 
65 #ifdef TYPE_ALIGNMENT
66 # define TEST_TYPE_ALIGN(type, align) C_ASSERT(TYPE_ALIGNMENT(type) == align);
67 #else
68 # define TEST_TYPE_ALIGN(type, align)
69 #endif
70 
71 #ifdef _TYPE_ALIGNMENT
72 # define TEST_TARGET_ALIGN(type, align) C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
73 # define TEST_FIELD_ALIGN(type, field, align) C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
74 #else
75 # define TEST_TARGET_ALIGN(type, align)
76 # define TEST_FIELD_ALIGN(type, field, align)
77 #endif
78 
79 #define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
80 
81 #define TEST_TARGET_SIZE(type, size) TEST_TYPE_SIZE(*(type)0, size)
82 #define TEST_FIELD_SIZE(type, field, size) TEST_TYPE_SIZE((((type*)0)->field), size)
83 #define TEST_TYPE_SIGNED(type) C_ASSERT((type) -1 < 0);
84 #define TEST_TYPE_UNSIGNED(type) C_ASSERT((type) -1 > 0);
85 
86 
87 #ifdef _WIN64
88 
89 static void test_pack_BLOB(void)
90 {
91  /* BLOB */
92  TEST_TYPE_SIZE (BLOB, 16)
94  TEST_FIELD_SIZE (BLOB, cbSize, 4)
95  TEST_FIELD_ALIGN (BLOB, cbSize, 4)
96  TEST_FIELD_OFFSET(BLOB, cbSize, 0)
97  TEST_FIELD_SIZE (BLOB, pBlobData, 8)
98  TEST_FIELD_ALIGN (BLOB, pBlobData, 8)
99  TEST_FIELD_OFFSET(BLOB, pBlobData, 8)
100 }
101 
102 static void test_pack_BSTR(void)
103 {
104  /* BSTR */
105  TEST_TYPE_SIZE (BSTR, 8)
106  TEST_TYPE_ALIGN (BSTR, 8)
109 }
110 
111 static void test_pack_BSTRBLOB(void)
112 {
113  /* BSTRBLOB */
114  TEST_TYPE_SIZE (BSTRBLOB, 16)
115  TEST_TYPE_ALIGN (BSTRBLOB, 8)
116  TEST_FIELD_SIZE (BSTRBLOB, cbSize, 4)
117  TEST_FIELD_ALIGN (BSTRBLOB, cbSize, 4)
118  TEST_FIELD_OFFSET(BSTRBLOB, cbSize, 0)
119  TEST_FIELD_SIZE (BSTRBLOB, pData, 8)
120  TEST_FIELD_ALIGN (BSTRBLOB, pData, 8)
121  TEST_FIELD_OFFSET(BSTRBLOB, pData, 8)
122 }
123 
124 static void test_pack_BYTE_BLOB(void)
125 {
126  /* BYTE_BLOB */
127  TEST_TYPE_SIZE (BYTE_BLOB, 8)
128  TEST_TYPE_ALIGN (BYTE_BLOB, 4)
129  TEST_FIELD_SIZE (BYTE_BLOB, clSize, 4)
130  TEST_FIELD_ALIGN (BYTE_BLOB, clSize, 4)
131  TEST_FIELD_OFFSET(BYTE_BLOB, clSize, 0)
132  TEST_FIELD_SIZE (BYTE_BLOB, abData, 1)
133  TEST_FIELD_ALIGN (BYTE_BLOB, abData, 1)
134  TEST_FIELD_OFFSET(BYTE_BLOB, abData, 4)
135 }
136 
137 static void test_pack_BYTE_SIZEDARR(void)
138 {
139  /* BYTE_SIZEDARR */
140  TEST_TYPE_SIZE (BYTE_SIZEDARR, 16)
141  TEST_TYPE_ALIGN (BYTE_SIZEDARR, 8)
142  TEST_FIELD_SIZE (BYTE_SIZEDARR, clSize, 4)
143  TEST_FIELD_ALIGN (BYTE_SIZEDARR, clSize, 4)
144  TEST_FIELD_OFFSET(BYTE_SIZEDARR, clSize, 0)
145  TEST_FIELD_SIZE (BYTE_SIZEDARR, pData, 8)
146  TEST_FIELD_ALIGN (BYTE_SIZEDARR, pData, 8)
147  TEST_FIELD_OFFSET(BYTE_SIZEDARR, pData, 8)
148 }
149 
150 static void test_pack_CLIPDATA(void)
151 {
152  /* CLIPDATA */
153  TEST_TYPE_SIZE (CLIPDATA, 16)
154  TEST_TYPE_ALIGN (CLIPDATA, 8)
155  TEST_FIELD_SIZE (CLIPDATA, cbSize, 4)
156  TEST_FIELD_ALIGN (CLIPDATA, cbSize, 4)
157  TEST_FIELD_OFFSET(CLIPDATA, cbSize, 0)
158  TEST_FIELD_SIZE (CLIPDATA, ulClipFmt, 4)
159  TEST_FIELD_ALIGN (CLIPDATA, ulClipFmt, 4)
160  TEST_FIELD_OFFSET(CLIPDATA, ulClipFmt, 4)
161  TEST_FIELD_SIZE (CLIPDATA, pClipData, 8)
162  TEST_FIELD_ALIGN (CLIPDATA, pClipData, 8)
163  TEST_FIELD_OFFSET(CLIPDATA, pClipData, 8)
164 }
165 
166 static void test_pack_CLIPFORMAT(void)
167 {
168  /* CLIPFORMAT */
169  TEST_TYPE_SIZE (CLIPFORMAT, 2)
170  TEST_TYPE_ALIGN (CLIPFORMAT, 2)
171  TEST_TYPE_UNSIGNED(CLIPFORMAT)
172 }
173 
174 static void test_pack_COAUTHIDENTITY(void)
175 {
176  /* COAUTHIDENTITY */
177  TEST_TYPE_SIZE (COAUTHIDENTITY, 48)
178  TEST_TYPE_ALIGN (COAUTHIDENTITY, 8)
179  TEST_FIELD_SIZE (COAUTHIDENTITY, User, 8)
180  TEST_FIELD_ALIGN (COAUTHIDENTITY, User, 8)
181  TEST_FIELD_OFFSET(COAUTHIDENTITY, User, 0)
182  TEST_FIELD_SIZE (COAUTHIDENTITY, UserLength, 4)
183  TEST_FIELD_ALIGN (COAUTHIDENTITY, UserLength, 4)
184  TEST_FIELD_OFFSET(COAUTHIDENTITY, UserLength, 8)
185  TEST_FIELD_SIZE (COAUTHIDENTITY, Domain, 8)
186  TEST_FIELD_ALIGN (COAUTHIDENTITY, Domain, 8)
187  TEST_FIELD_OFFSET(COAUTHIDENTITY, Domain, 16)
188  TEST_FIELD_SIZE (COAUTHIDENTITY, DomainLength, 4)
189  TEST_FIELD_ALIGN (COAUTHIDENTITY, DomainLength, 4)
190  TEST_FIELD_OFFSET(COAUTHIDENTITY, DomainLength, 24)
191  TEST_FIELD_SIZE (COAUTHIDENTITY, Password, 8)
192  TEST_FIELD_ALIGN (COAUTHIDENTITY, Password, 8)
193  TEST_FIELD_OFFSET(COAUTHIDENTITY, Password, 32)
194  TEST_FIELD_SIZE (COAUTHIDENTITY, PasswordLength, 4)
195  TEST_FIELD_ALIGN (COAUTHIDENTITY, PasswordLength, 4)
196  TEST_FIELD_OFFSET(COAUTHIDENTITY, PasswordLength, 40)
197  TEST_FIELD_SIZE (COAUTHIDENTITY, Flags, 4)
198  TEST_FIELD_ALIGN (COAUTHIDENTITY, Flags, 4)
199  TEST_FIELD_OFFSET(COAUTHIDENTITY, Flags, 44)
200 }
201 
202 static void test_pack_COAUTHINFO(void)
203 {
204  /* COAUTHINFO */
205  TEST_TYPE_SIZE (COAUTHINFO, 40)
206  TEST_TYPE_ALIGN (COAUTHINFO, 8)
207  TEST_FIELD_SIZE (COAUTHINFO, dwAuthnSvc, 4)
208  TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnSvc, 4)
209  TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnSvc, 0)
210  TEST_FIELD_SIZE (COAUTHINFO, dwAuthzSvc, 4)
211  TEST_FIELD_ALIGN (COAUTHINFO, dwAuthzSvc, 4)
212  TEST_FIELD_OFFSET(COAUTHINFO, dwAuthzSvc, 4)
213  TEST_FIELD_SIZE (COAUTHINFO, pwszServerPrincName, 8)
214  TEST_FIELD_ALIGN (COAUTHINFO, pwszServerPrincName, 8)
215  TEST_FIELD_OFFSET(COAUTHINFO, pwszServerPrincName, 8)
216  TEST_FIELD_SIZE (COAUTHINFO, dwAuthnLevel, 4)
217  TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnLevel, 4)
218  TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnLevel, 16)
219  TEST_FIELD_SIZE (COAUTHINFO, dwImpersonationLevel, 4)
220  TEST_FIELD_ALIGN (COAUTHINFO, dwImpersonationLevel, 4)
221  TEST_FIELD_OFFSET(COAUTHINFO, dwImpersonationLevel, 20)
222  TEST_FIELD_SIZE (COAUTHINFO, pAuthIdentityData, 8)
223  TEST_FIELD_ALIGN (COAUTHINFO, pAuthIdentityData, 8)
224  TEST_FIELD_OFFSET(COAUTHINFO, pAuthIdentityData, 24)
225  TEST_FIELD_SIZE (COAUTHINFO, dwCapabilities, 4)
226  TEST_FIELD_ALIGN (COAUTHINFO, dwCapabilities, 4)
227  TEST_FIELD_OFFSET(COAUTHINFO, dwCapabilities, 32)
228 }
229 
230 static void test_pack_DATE(void)
231 {
232  /* DATE */
233  TEST_TYPE_SIZE (DATE, 8)
234  TEST_TYPE_ALIGN (DATE, 8)
235 }
236 
237 static void test_pack_DOUBLE(void)
238 {
239  /* DOUBLE */
242 }
243 
244 static void test_pack_DWORD_SIZEDARR(void)
245 {
246  /* DWORD_SIZEDARR */
247  TEST_TYPE_SIZE (DWORD_SIZEDARR, 16)
248  TEST_TYPE_ALIGN (DWORD_SIZEDARR, 8)
249  TEST_FIELD_SIZE (DWORD_SIZEDARR, clSize, 4)
250  TEST_FIELD_ALIGN (DWORD_SIZEDARR, clSize, 4)
251  TEST_FIELD_OFFSET(DWORD_SIZEDARR, clSize, 0)
252  TEST_FIELD_SIZE (DWORD_SIZEDARR, pData, 8)
253  TEST_FIELD_ALIGN (DWORD_SIZEDARR, pData, 8)
254  TEST_FIELD_OFFSET(DWORD_SIZEDARR, pData, 8)
255 }
256 
257 static void test_pack_FLAGGED_BYTE_BLOB(void)
258 {
259  /* FLAGGED_BYTE_BLOB */
260  TEST_TYPE_SIZE (FLAGGED_BYTE_BLOB, 12)
261  TEST_TYPE_ALIGN (FLAGGED_BYTE_BLOB, 4)
262  TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, fFlags, 4)
263  TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, fFlags, 4)
264  TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, fFlags, 0)
265  TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, clSize, 4)
266  TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, clSize, 4)
267  TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, clSize, 4)
268  TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, abData, 1)
269  TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, abData, 1)
270  TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, abData, 8)
271 }
272 
273 static void test_pack_FLAGGED_WORD_BLOB(void)
274 {
275  /* FLAGGED_WORD_BLOB */
276  TEST_TYPE_SIZE (FLAGGED_WORD_BLOB, 12)
277  TEST_TYPE_ALIGN (FLAGGED_WORD_BLOB, 4)
278  TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, fFlags, 4)
279  TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, fFlags, 4)
280  TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, fFlags, 0)
281  TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, clSize, 4)
282  TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, clSize, 4)
283  TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, clSize, 4)
284  TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, asData, 2)
285  TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, asData, 2)
286  TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, asData, 8)
287 }
288 
289 static void test_pack_HMETAFILEPICT(void)
290 {
291  /* HMETAFILEPICT */
292  TEST_TYPE_SIZE (HMETAFILEPICT, 8)
293  TEST_TYPE_ALIGN (HMETAFILEPICT, 8)
294 }
295 
296 static void test_pack_HYPER_SIZEDARR(void)
297 {
298  /* HYPER_SIZEDARR */
299  TEST_TYPE_SIZE (HYPER_SIZEDARR, 16)
300  TEST_TYPE_ALIGN (HYPER_SIZEDARR, 8)
301  TEST_FIELD_SIZE (HYPER_SIZEDARR, clSize, 4)
302  TEST_FIELD_ALIGN (HYPER_SIZEDARR, clSize, 4)
303  TEST_FIELD_OFFSET(HYPER_SIZEDARR, clSize, 0)
304  TEST_FIELD_SIZE (HYPER_SIZEDARR, pData, 8)
305  TEST_FIELD_ALIGN (HYPER_SIZEDARR, pData, 8)
306  TEST_FIELD_OFFSET(HYPER_SIZEDARR, pData, 8)
307 }
308 
309 static void test_pack_LPBLOB(void)
310 {
311  /* LPBLOB */
314 }
315 
316 static void test_pack_LPBSTR(void)
317 {
318  /* LPBSTR */
319  TEST_TYPE_SIZE (LPBSTR, 8)
320  TEST_TYPE_ALIGN (LPBSTR, 8)
321  TEST_TARGET_SIZE (LPBSTR, 8)
322  TEST_TARGET_ALIGN(LPBSTR, 8)
323 }
324 
325 static void test_pack_LPBSTRBLOB(void)
326 {
327  /* LPBSTRBLOB */
328  TEST_TYPE_SIZE (LPBSTRBLOB, 8)
329  TEST_TYPE_ALIGN (LPBSTRBLOB, 8)
330 }
331 
332 static void test_pack_LPCOLESTR(void)
333 {
334  /* LPCOLESTR */
335  TEST_TYPE_SIZE (LPCOLESTR, 8)
336  TEST_TYPE_ALIGN (LPCOLESTR, 8)
337  TEST_TARGET_SIZE (LPCOLESTR, 2)
338  TEST_TARGET_ALIGN(LPCOLESTR, 2)
339 }
340 
341 static void test_pack_LPCY(void)
342 {
343  /* LPCY */
344  TEST_TYPE_SIZE (LPCY, 8)
345  TEST_TYPE_ALIGN (LPCY, 8)
346 }
347 
348 static void test_pack_LPDECIMAL(void)
349 {
350  /* LPDECIMAL */
351  TEST_TYPE_SIZE (LPDECIMAL, 8)
352  TEST_TYPE_ALIGN (LPDECIMAL, 8)
353 }
354 
355 static void test_pack_LPOLESTR(void)
356 {
357  /* LPOLESTR */
362 }
363 
364 static void test_pack_OLECHAR(void)
365 {
366  /* OLECHAR */
369 }
370 
371 static void test_pack_PROPID(void)
372 {
373  /* PROPID */
376 }
377 
378 static void test_pack_RemHBITMAP(void)
379 {
380  /* RemHBITMAP */
381  TEST_TYPE_SIZE (RemHBITMAP, 8)
382  TEST_TYPE_ALIGN (RemHBITMAP, 4)
383  TEST_FIELD_SIZE (RemHBITMAP, cbData, 4)
384  TEST_FIELD_ALIGN (RemHBITMAP, cbData, 4)
385  TEST_FIELD_OFFSET(RemHBITMAP, cbData, 0)
386  TEST_FIELD_SIZE (RemHBITMAP, data, 1)
387  TEST_FIELD_ALIGN (RemHBITMAP, data, 1)
388  TEST_FIELD_OFFSET(RemHBITMAP, data, 4)
389 }
390 
391 static void test_pack_RemHENHMETAFILE(void)
392 {
393  /* RemHENHMETAFILE */
394  TEST_TYPE_SIZE (RemHENHMETAFILE, 8)
395  TEST_TYPE_ALIGN (RemHENHMETAFILE, 4)
396  TEST_FIELD_SIZE (RemHENHMETAFILE, cbData, 4)
397  TEST_FIELD_ALIGN (RemHENHMETAFILE, cbData, 4)
398  TEST_FIELD_OFFSET(RemHENHMETAFILE, cbData, 0)
399  TEST_FIELD_SIZE (RemHENHMETAFILE, data, 1)
400  TEST_FIELD_ALIGN (RemHENHMETAFILE, data, 1)
401  TEST_FIELD_OFFSET(RemHENHMETAFILE, data, 4)
402 }
403 
404 static void test_pack_RemHGLOBAL(void)
405 {
406  /* RemHGLOBAL */
407  TEST_TYPE_SIZE (RemHGLOBAL, 12)
408  TEST_TYPE_ALIGN (RemHGLOBAL, 4)
409  TEST_FIELD_SIZE (RemHGLOBAL, fNullHGlobal, 4)
410  TEST_FIELD_ALIGN (RemHGLOBAL, fNullHGlobal, 4)
411  TEST_FIELD_OFFSET(RemHGLOBAL, fNullHGlobal, 0)
412  TEST_FIELD_SIZE (RemHGLOBAL, cbData, 4)
413  TEST_FIELD_ALIGN (RemHGLOBAL, cbData, 4)
414  TEST_FIELD_OFFSET(RemHGLOBAL, cbData, 4)
415  TEST_FIELD_SIZE (RemHGLOBAL, data, 1)
416  TEST_FIELD_ALIGN (RemHGLOBAL, data, 1)
417  TEST_FIELD_OFFSET(RemHGLOBAL, data, 8)
418 }
419 
420 static void test_pack_RemHMETAFILEPICT(void)
421 {
422  /* RemHMETAFILEPICT */
423  TEST_TYPE_SIZE (RemHMETAFILEPICT, 20)
424  TEST_TYPE_ALIGN (RemHMETAFILEPICT, 4)
425  TEST_FIELD_SIZE (RemHMETAFILEPICT, mm, 4)
426  TEST_FIELD_ALIGN (RemHMETAFILEPICT, mm, 4)
427  TEST_FIELD_OFFSET(RemHMETAFILEPICT, mm, 0)
428  TEST_FIELD_SIZE (RemHMETAFILEPICT, xExt, 4)
429  TEST_FIELD_ALIGN (RemHMETAFILEPICT, xExt, 4)
430  TEST_FIELD_OFFSET(RemHMETAFILEPICT, xExt, 4)
431  TEST_FIELD_SIZE (RemHMETAFILEPICT, yExt, 4)
432  TEST_FIELD_ALIGN (RemHMETAFILEPICT, yExt, 4)
433  TEST_FIELD_OFFSET(RemHMETAFILEPICT, yExt, 8)
434  TEST_FIELD_SIZE (RemHMETAFILEPICT, cbData, 4)
435  TEST_FIELD_ALIGN (RemHMETAFILEPICT, cbData, 4)
436  TEST_FIELD_OFFSET(RemHMETAFILEPICT, cbData, 12)
437  TEST_FIELD_SIZE (RemHMETAFILEPICT, data, 1)
438  TEST_FIELD_ALIGN (RemHMETAFILEPICT, data, 1)
439  TEST_FIELD_OFFSET(RemHMETAFILEPICT, data, 16)
440 }
441 
442 static void test_pack_RemHPALETTE(void)
443 {
444  /* RemHPALETTE */
445  TEST_TYPE_SIZE (RemHPALETTE, 8)
446  TEST_TYPE_ALIGN (RemHPALETTE, 4)
447  TEST_FIELD_SIZE (RemHPALETTE, cbData, 4)
448  TEST_FIELD_ALIGN (RemHPALETTE, cbData, 4)
449  TEST_FIELD_OFFSET(RemHPALETTE, cbData, 0)
450  TEST_FIELD_SIZE (RemHPALETTE, data, 1)
451  TEST_FIELD_ALIGN (RemHPALETTE, data, 1)
452  TEST_FIELD_OFFSET(RemHPALETTE, data, 4)
453 }
454 
455 static void test_pack_SCODE(void)
456 {
457  /* SCODE */
458  TEST_TYPE_SIZE (SCODE, 4)
460 }
461 
462 static void test_pack_UP_BYTE_BLOB(void)
463 {
464  /* UP_BYTE_BLOB */
465  TEST_TYPE_SIZE (UP_BYTE_BLOB, 8)
466  TEST_TYPE_ALIGN (UP_BYTE_BLOB, 8)
467  TEST_TARGET_SIZE (UP_BYTE_BLOB, 8)
468  TEST_TARGET_ALIGN(UP_BYTE_BLOB, 4)
469 }
470 
471 static void test_pack_UP_FLAGGED_BYTE_BLOB(void)
472 {
473  /* UP_FLAGGED_BYTE_BLOB */
474  TEST_TYPE_SIZE (UP_FLAGGED_BYTE_BLOB, 8)
475  TEST_TYPE_ALIGN (UP_FLAGGED_BYTE_BLOB, 8)
476  TEST_TARGET_SIZE (UP_FLAGGED_BYTE_BLOB, 12)
477  TEST_TARGET_ALIGN(UP_FLAGGED_BYTE_BLOB, 4)
478 }
479 
480 static void test_pack_UP_FLAGGED_WORD_BLOB(void)
481 {
482  /* UP_FLAGGED_WORD_BLOB */
483  TEST_TYPE_SIZE (UP_FLAGGED_WORD_BLOB, 8)
484  TEST_TYPE_ALIGN (UP_FLAGGED_WORD_BLOB, 8)
485  TEST_TARGET_SIZE (UP_FLAGGED_WORD_BLOB, 12)
486  TEST_TARGET_ALIGN(UP_FLAGGED_WORD_BLOB, 4)
487 }
488 
489 static void test_pack_VARIANT_BOOL(void)
490 {
491  /* VARIANT_BOOL */
495 }
496 
497 static void test_pack_VARTYPE(void)
498 {
499  /* VARTYPE */
503 }
504 
505 static void test_pack_WORD_SIZEDARR(void)
506 {
507  /* WORD_SIZEDARR */
508  TEST_TYPE_SIZE (WORD_SIZEDARR, 16)
509  TEST_TYPE_ALIGN (WORD_SIZEDARR, 8)
510  TEST_FIELD_SIZE (WORD_SIZEDARR, clSize, 4)
511  TEST_FIELD_ALIGN (WORD_SIZEDARR, clSize, 4)
512  TEST_FIELD_OFFSET(WORD_SIZEDARR, clSize, 0)
513  TEST_FIELD_SIZE (WORD_SIZEDARR, pData, 8)
514  TEST_FIELD_ALIGN (WORD_SIZEDARR, pData, 8)
515  TEST_FIELD_OFFSET(WORD_SIZEDARR, pData, 8)
516 }
517 
518 static void test_pack_remoteMETAFILEPICT(void)
519 {
520  /* remoteMETAFILEPICT */
521  TEST_TYPE_SIZE (remoteMETAFILEPICT, 24)
522  TEST_TYPE_ALIGN (remoteMETAFILEPICT, 8)
523  TEST_FIELD_SIZE (remoteMETAFILEPICT, mm, 4)
524  TEST_FIELD_ALIGN (remoteMETAFILEPICT, mm, 4)
525  TEST_FIELD_OFFSET(remoteMETAFILEPICT, mm, 0)
526  TEST_FIELD_SIZE (remoteMETAFILEPICT, xExt, 4)
527  TEST_FIELD_ALIGN (remoteMETAFILEPICT, xExt, 4)
528  TEST_FIELD_OFFSET(remoteMETAFILEPICT, xExt, 4)
529  TEST_FIELD_SIZE (remoteMETAFILEPICT, yExt, 4)
530  TEST_FIELD_ALIGN (remoteMETAFILEPICT, yExt, 4)
531  TEST_FIELD_OFFSET(remoteMETAFILEPICT, yExt, 8)
532  TEST_FIELD_SIZE (remoteMETAFILEPICT, hMF, 8)
533  TEST_FIELD_ALIGN (remoteMETAFILEPICT, hMF, 8)
534  TEST_FIELD_OFFSET(remoteMETAFILEPICT, hMF, 16)
535 }
536 
537 static void test_pack_userBITMAP(void)
538 {
539  /* userBITMAP */
540  TEST_TYPE_SIZE (userBITMAP, 28)
541  TEST_TYPE_ALIGN (userBITMAP, 4)
542  TEST_FIELD_SIZE (userBITMAP, bmType, 4)
543  TEST_FIELD_ALIGN (userBITMAP, bmType, 4)
544  TEST_FIELD_OFFSET(userBITMAP, bmType, 0)
545  TEST_FIELD_SIZE (userBITMAP, bmWidth, 4)
546  TEST_FIELD_ALIGN (userBITMAP, bmWidth, 4)
547  TEST_FIELD_OFFSET(userBITMAP, bmWidth, 4)
548  TEST_FIELD_SIZE (userBITMAP, bmHeight, 4)
549  TEST_FIELD_ALIGN (userBITMAP, bmHeight, 4)
550  TEST_FIELD_OFFSET(userBITMAP, bmHeight, 8)
551  TEST_FIELD_SIZE (userBITMAP, bmWidthBytes, 4)
552  TEST_FIELD_ALIGN (userBITMAP, bmWidthBytes, 4)
553  TEST_FIELD_OFFSET(userBITMAP, bmWidthBytes, 12)
554  TEST_FIELD_SIZE (userBITMAP, bmPlanes, 2)
555  TEST_FIELD_ALIGN (userBITMAP, bmPlanes, 2)
556  TEST_FIELD_OFFSET(userBITMAP, bmPlanes, 16)
557  TEST_FIELD_SIZE (userBITMAP, bmBitsPixel, 2)
558  TEST_FIELD_ALIGN (userBITMAP, bmBitsPixel, 2)
559  TEST_FIELD_OFFSET(userBITMAP, bmBitsPixel, 18)
560  TEST_FIELD_SIZE (userBITMAP, cbSize, 4)
561  TEST_FIELD_ALIGN (userBITMAP, cbSize, 4)
562  TEST_FIELD_OFFSET(userBITMAP, cbSize, 20)
563  TEST_FIELD_SIZE (userBITMAP, pBuffer, 1)
564  TEST_FIELD_ALIGN (userBITMAP, pBuffer, 1)
565  TEST_FIELD_OFFSET(userBITMAP, pBuffer, 24)
566 }
567 
568 static void test_pack_userCLIPFORMAT(void)
569 {
570  /* userCLIPFORMAT */
571  TEST_FIELD_SIZE (userCLIPFORMAT, fContext, 4)
572  TEST_FIELD_ALIGN (userCLIPFORMAT, fContext, 4)
573  TEST_FIELD_OFFSET(userCLIPFORMAT, fContext, 0)
574 }
575 
576 static void test_pack_userHBITMAP(void)
577 {
578  /* userHBITMAP */
579  TEST_FIELD_SIZE (userHBITMAP, fContext, 4)
580  TEST_FIELD_ALIGN (userHBITMAP, fContext, 4)
581  TEST_FIELD_OFFSET(userHBITMAP, fContext, 0)
582 }
583 
584 static void test_pack_userHENHMETAFILE(void)
585 {
586  /* userHENHMETAFILE */
587  TEST_FIELD_SIZE (userHENHMETAFILE, fContext, 4)
588  TEST_FIELD_ALIGN (userHENHMETAFILE, fContext, 4)
589  TEST_FIELD_OFFSET(userHENHMETAFILE, fContext, 0)
590 }
591 
592 static void test_pack_userHGLOBAL(void)
593 {
594  /* userHGLOBAL */
595  TEST_FIELD_SIZE (userHGLOBAL, fContext, 4)
596  TEST_FIELD_ALIGN (userHGLOBAL, fContext, 4)
597  TEST_FIELD_OFFSET(userHGLOBAL, fContext, 0)
598 }
599 
600 static void test_pack_userHMETAFILE(void)
601 {
602  /* userHMETAFILE */
603  TEST_FIELD_SIZE (userHMETAFILE, fContext, 4)
604  TEST_FIELD_ALIGN (userHMETAFILE, fContext, 4)
605  TEST_FIELD_OFFSET(userHMETAFILE, fContext, 0)
606 }
607 
608 static void test_pack_userHMETAFILEPICT(void)
609 {
610  /* userHMETAFILEPICT */
611  TEST_FIELD_SIZE (userHMETAFILEPICT, fContext, 4)
612  TEST_FIELD_ALIGN (userHMETAFILEPICT, fContext, 4)
613  TEST_FIELD_OFFSET(userHMETAFILEPICT, fContext, 0)
614 }
615 
616 static void test_pack_userHPALETTE(void)
617 {
618  /* userHPALETTE */
619  TEST_FIELD_SIZE (userHPALETTE, fContext, 4)
620  TEST_FIELD_ALIGN (userHPALETTE, fContext, 4)
621  TEST_FIELD_OFFSET(userHPALETTE, fContext, 0)
622 }
623 
624 static void test_pack_wireBSTR(void)
625 {
626  /* wireBSTR */
627  TEST_TYPE_SIZE (wireBSTR, 8)
628  TEST_TYPE_ALIGN (wireBSTR, 8)
629  TEST_TARGET_SIZE (wireBSTR, 12)
630  TEST_TARGET_ALIGN(wireBSTR, 4)
631 }
632 
633 static void test_pack_wireCLIPFORMAT(void)
634 {
635  /* wireCLIPFORMAT */
636  TEST_TYPE_SIZE (wireCLIPFORMAT, 8)
637  TEST_TYPE_ALIGN (wireCLIPFORMAT, 8)
638 }
639 
640 static void test_pack_wireHBITMAP(void)
641 {
642  /* wireHBITMAP */
643  TEST_TYPE_SIZE (wireHBITMAP, 8)
644  TEST_TYPE_ALIGN (wireHBITMAP, 8)
645 }
646 
647 static void test_pack_wireHENHMETAFILE(void)
648 {
649  /* wireHENHMETAFILE */
650  TEST_TYPE_SIZE (wireHENHMETAFILE, 8)
651  TEST_TYPE_ALIGN (wireHENHMETAFILE, 8)
652 }
653 
654 static void test_pack_wireHGLOBAL(void)
655 {
656  /* wireHGLOBAL */
657  TEST_TYPE_SIZE (wireHGLOBAL, 8)
658  TEST_TYPE_ALIGN (wireHGLOBAL, 8)
659 }
660 
661 static void test_pack_wireHMETAFILE(void)
662 {
663  /* wireHMETAFILE */
664  TEST_TYPE_SIZE (wireHMETAFILE, 8)
665  TEST_TYPE_ALIGN (wireHMETAFILE, 8)
666 }
667 
668 static void test_pack_wireHMETAFILEPICT(void)
669 {
670  /* wireHMETAFILEPICT */
671  TEST_TYPE_SIZE (wireHMETAFILEPICT, 8)
672  TEST_TYPE_ALIGN (wireHMETAFILEPICT, 8)
673 }
674 
675 static void test_pack_wireHPALETTE(void)
676 {
677  /* wireHPALETTE */
678  TEST_TYPE_SIZE (wireHPALETTE, 8)
679  TEST_TYPE_ALIGN (wireHPALETTE, 8)
680 }
681 
682 static void test_pack_CLSID(void)
683 {
684  /* CLSID */
685  TEST_TYPE_SIZE (CLSID, 16)
687 }
688 
689 static void test_pack_FMTID(void)
690 {
691  /* FMTID */
692  TEST_TYPE_SIZE (FMTID, 16)
694 }
695 
696 static void test_pack_IID(void)
697 {
698  /* IID */
699  TEST_TYPE_SIZE (IID, 16)
700  TEST_TYPE_ALIGN (IID, 4)
701 }
702 
703 static void test_pack_APPBARDATA(void)
704 {
705  /* APPBARDATA */
708  TEST_FIELD_SIZE (APPBARDATA, cbSize, 4)
709  TEST_FIELD_ALIGN (APPBARDATA, cbSize, 4)
710  TEST_FIELD_OFFSET(APPBARDATA, cbSize, 0)
714  TEST_FIELD_SIZE (APPBARDATA, uCallbackMessage, 4)
715  TEST_FIELD_ALIGN (APPBARDATA, uCallbackMessage, 4)
716  TEST_FIELD_OFFSET(APPBARDATA, uCallbackMessage, 16)
717  TEST_FIELD_SIZE (APPBARDATA, uEdge, 4)
718  TEST_FIELD_ALIGN (APPBARDATA, uEdge, 4)
719  TEST_FIELD_OFFSET(APPBARDATA, uEdge, 20)
720  TEST_FIELD_SIZE (APPBARDATA, rc, 16)
726 }
727 
728 static void test_pack_DRAGINFOA(void)
729 {
730  /* DRAGINFOA */
731  TEST_TYPE_SIZE (DRAGINFOA, 32)
732  TEST_TYPE_ALIGN (DRAGINFOA, 8)
733  TEST_FIELD_SIZE (DRAGINFOA, uSize, 4)
734  TEST_FIELD_ALIGN (DRAGINFOA, uSize, 4)
735  TEST_FIELD_OFFSET(DRAGINFOA, uSize, 0)
736  TEST_FIELD_SIZE (DRAGINFOA, pt, 8)
737  TEST_FIELD_ALIGN (DRAGINFOA, pt, 4)
738  TEST_FIELD_OFFSET(DRAGINFOA, pt, 4)
739  TEST_FIELD_SIZE (DRAGINFOA, fNC, 4)
740  TEST_FIELD_ALIGN (DRAGINFOA, fNC, 4)
741  TEST_FIELD_OFFSET(DRAGINFOA, fNC, 12)
742  TEST_FIELD_SIZE (DRAGINFOA, lpFileList, 8)
743  TEST_FIELD_ALIGN (DRAGINFOA, lpFileList, 8)
744  TEST_FIELD_OFFSET(DRAGINFOA, lpFileList, 16)
745  TEST_FIELD_SIZE (DRAGINFOA, grfKeyState, 4)
746  TEST_FIELD_ALIGN (DRAGINFOA, grfKeyState, 4)
747  TEST_FIELD_OFFSET(DRAGINFOA, grfKeyState, 24)
748 }
749 
750 static void test_pack_DRAGINFOW(void)
751 {
752  /* DRAGINFOW */
753  TEST_TYPE_SIZE (DRAGINFOW, 32)
754  TEST_TYPE_ALIGN (DRAGINFOW, 8)
755  TEST_FIELD_SIZE (DRAGINFOW, uSize, 4)
756  TEST_FIELD_ALIGN (DRAGINFOW, uSize, 4)
757  TEST_FIELD_OFFSET(DRAGINFOW, uSize, 0)
758  TEST_FIELD_SIZE (DRAGINFOW, pt, 8)
759  TEST_FIELD_ALIGN (DRAGINFOW, pt, 4)
760  TEST_FIELD_OFFSET(DRAGINFOW, pt, 4)
761  TEST_FIELD_SIZE (DRAGINFOW, fNC, 4)
762  TEST_FIELD_ALIGN (DRAGINFOW, fNC, 4)
763  TEST_FIELD_OFFSET(DRAGINFOW, fNC, 12)
764  TEST_FIELD_SIZE (DRAGINFOW, lpFileList, 8)
765  TEST_FIELD_ALIGN (DRAGINFOW, lpFileList, 8)
766  TEST_FIELD_OFFSET(DRAGINFOW, lpFileList, 16)
767  TEST_FIELD_SIZE (DRAGINFOW, grfKeyState, 4)
768  TEST_FIELD_ALIGN (DRAGINFOW, grfKeyState, 4)
769  TEST_FIELD_OFFSET(DRAGINFOW, grfKeyState, 24)
770 }
771 
772 static void test_pack_FILEOP_FLAGS(void)
773 {
774  /* FILEOP_FLAGS */
778 }
779 
780 static void test_pack_LPDRAGINFOA(void)
781 {
782  /* LPDRAGINFOA */
783  TEST_TYPE_SIZE (LPDRAGINFOA, 8)
784  TEST_TYPE_ALIGN (LPDRAGINFOA, 8)
785  TEST_TARGET_SIZE (LPDRAGINFOA, 32)
786  TEST_TARGET_ALIGN(LPDRAGINFOA, 8)
787 }
788 
789 static void test_pack_LPDRAGINFOW(void)
790 {
791  /* LPDRAGINFOW */
792  TEST_TYPE_SIZE (LPDRAGINFOW, 8)
793  TEST_TYPE_ALIGN (LPDRAGINFOW, 8)
794  TEST_TARGET_SIZE (LPDRAGINFOW, 32)
795  TEST_TARGET_ALIGN(LPDRAGINFOW, 8)
796 }
797 
798 static void test_pack_LPSHELLEXECUTEINFOA(void)
799 {
800  /* LPSHELLEXECUTEINFOA */
803 }
804 
805 static void test_pack_LPSHELLEXECUTEINFOW(void)
806 {
807  /* LPSHELLEXECUTEINFOW */
810 }
811 
812 static void test_pack_LPSHFILEOPSTRUCTA(void)
813 {
814  /* LPSHFILEOPSTRUCTA */
819 }
820 
821 static void test_pack_LPSHFILEOPSTRUCTW(void)
822 {
823  /* LPSHFILEOPSTRUCTW */
828 }
829 
830 static void test_pack_LPSHNAMEMAPPINGA(void)
831 {
832  /* LPSHNAMEMAPPINGA */
837 }
838 
839 static void test_pack_LPSHNAMEMAPPINGW(void)
840 {
841  /* LPSHNAMEMAPPINGW */
846 }
847 
848 static void test_pack_NOTIFYICONDATAA(void)
849 {
850  /* NOTIFYICONDATAA */
851  TEST_FIELD_SIZE (NOTIFYICONDATAA, cbSize, 4)
852  TEST_FIELD_ALIGN (NOTIFYICONDATAA, cbSize, 4)
863  TEST_FIELD_SIZE (NOTIFYICONDATAA, uCallbackMessage, 4)
864  TEST_FIELD_ALIGN (NOTIFYICONDATAA, uCallbackMessage, 4)
865  TEST_FIELD_OFFSET(NOTIFYICONDATAA, uCallbackMessage, 24)
869  TEST_FIELD_SIZE (NOTIFYICONDATAA, szTip, 128)
872  TEST_FIELD_SIZE (NOTIFYICONDATAA, dwState, 4)
873  TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwState, 4)
874  TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwState, 168)
875  TEST_FIELD_SIZE (NOTIFYICONDATAA, dwStateMask, 4)
876  TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwStateMask, 4)
877  TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwStateMask, 172)
878  TEST_FIELD_SIZE (NOTIFYICONDATAA, szInfo, 256)
879  TEST_FIELD_ALIGN (NOTIFYICONDATAA, szInfo, 1)
880  TEST_FIELD_OFFSET(NOTIFYICONDATAA, szInfo, 176)
881 }
882 
883 static void test_pack_NOTIFYICONDATAW(void)
884 {
885  /* NOTIFYICONDATAW */
886  TEST_FIELD_SIZE (NOTIFYICONDATAW, cbSize, 4)
887  TEST_FIELD_ALIGN (NOTIFYICONDATAW, cbSize, 4)
898  TEST_FIELD_SIZE (NOTIFYICONDATAW, uCallbackMessage, 4)
899  TEST_FIELD_ALIGN (NOTIFYICONDATAW, uCallbackMessage, 4)
900  TEST_FIELD_OFFSET(NOTIFYICONDATAW, uCallbackMessage, 24)
904  TEST_FIELD_SIZE (NOTIFYICONDATAW, szTip, 256)
907  TEST_FIELD_SIZE (NOTIFYICONDATAW, dwState, 4)
908  TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwState, 4)
909  TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwState, 296)
910  TEST_FIELD_SIZE (NOTIFYICONDATAW, dwStateMask, 4)
911  TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwStateMask, 4)
912  TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwStateMask, 300)
913  TEST_FIELD_SIZE (NOTIFYICONDATAW, szInfo, 512)
914  TEST_FIELD_ALIGN (NOTIFYICONDATAW, szInfo, 2)
915  TEST_FIELD_OFFSET(NOTIFYICONDATAW, szInfo, 304)
916 }
917 
918 static void test_pack_PAPPBARDATA(void)
919 {
920  /* PAPPBARDATA */
925 }
926 
927 static void test_pack_PNOTIFYICONDATAA(void)
928 {
929  /* PNOTIFYICONDATAA */
932 }
933 
934 static void test_pack_PNOTIFYICONDATAW(void)
935 {
936  /* PNOTIFYICONDATAW */
939 }
940 
941 static void test_pack_PRINTEROP_FLAGS(void)
942 {
943  /* PRINTEROP_FLAGS */
947 }
948 
949 static void test_pack_SHELLEXECUTEINFOA(void)
950 {
951  /* SHELLEXECUTEINFOA */
967  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpParameters, 8)
968  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpParameters, 8)
969  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpParameters, 32)
976  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hInstApp, 8)
977  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hInstApp, 8)
978  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hInstApp, 56)
979  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpIDList, 8)
980  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpIDList, 8)
981  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpIDList, 64)
982  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpClass, 8)
983  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpClass, 8)
985  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hkeyClass, 8)
986  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hkeyClass, 8)
987  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hkeyClass, 80)
988  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, dwHotKey, 4)
989  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, dwHotKey, 4)
990  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, dwHotKey, 88)
991 }
992 
993 static void test_pack_SHELLEXECUTEINFOW(void)
994 {
995  /* SHELLEXECUTEINFOW */
1005  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpVerb, 8)
1006  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpVerb, 8)
1008  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpFile, 8)
1009  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpFile, 8)
1011  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpParameters, 8)
1012  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpParameters, 8)
1013  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpParameters, 32)
1020  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hInstApp, 8)
1021  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hInstApp, 8)
1022  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hInstApp, 56)
1023  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpIDList, 8)
1024  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpIDList, 8)
1025  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpIDList, 64)
1026  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpClass, 8)
1027  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpClass, 8)
1028  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpClass, 72)
1029  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hkeyClass, 8)
1030  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hkeyClass, 8)
1031  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hkeyClass, 80)
1032  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, dwHotKey, 4)
1033  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, dwHotKey, 4)
1034  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, dwHotKey, 88)
1035 }
1036 
1037 static void test_pack_SHFILEINFOA(void)
1038 {
1039  /* SHFILEINFOA */
1045  TEST_FIELD_SIZE (SHFILEINFOA, iIcon, 4)
1046  TEST_FIELD_ALIGN (SHFILEINFOA, iIcon, 4)
1047  TEST_FIELD_OFFSET(SHFILEINFOA, iIcon, 8)
1051  TEST_FIELD_SIZE (SHFILEINFOA, szDisplayName, 260)
1052  TEST_FIELD_ALIGN (SHFILEINFOA, szDisplayName, 1)
1053  TEST_FIELD_OFFSET(SHFILEINFOA, szDisplayName, 16)
1057 }
1058 
1059 static void test_pack_SHFILEINFOW(void)
1060 {
1061  /* SHFILEINFOW */
1067  TEST_FIELD_SIZE (SHFILEINFOW, iIcon, 4)
1068  TEST_FIELD_ALIGN (SHFILEINFOW, iIcon, 4)
1069  TEST_FIELD_OFFSET(SHFILEINFOW, iIcon, 8)
1073  TEST_FIELD_SIZE (SHFILEINFOW, szDisplayName, 520)
1074  TEST_FIELD_ALIGN (SHFILEINFOW, szDisplayName, 2)
1075  TEST_FIELD_OFFSET(SHFILEINFOW, szDisplayName, 16)
1079 }
1080 
1081 static void test_pack_SHFILEOPSTRUCTA(void)
1082 {
1083  /* SHFILEOPSTRUCTA */
1089  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, wFunc, 4)
1090  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, wFunc, 4)
1092  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, pFrom, 8)
1093  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, pFrom, 8)
1098  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fFlags, 2)
1099  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fFlags, 2)
1100  TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fFlags, 32)
1101  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
1102  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
1103  TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fAnyOperationsAborted, 36)
1104  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, hNameMappings, 8)
1105  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hNameMappings, 8)
1106  TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hNameMappings, 40)
1107  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, lpszProgressTitle, 8)
1108  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, lpszProgressTitle, 8)
1109  TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, lpszProgressTitle, 48)
1110 }
1111 
1112 static void test_pack_SHFILEOPSTRUCTW(void)
1113 {
1114  /* SHFILEOPSTRUCTW */
1120  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, wFunc, 4)
1121  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, wFunc, 4)
1123  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, pFrom, 8)
1124  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, pFrom, 8)
1129  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fFlags, 2)
1130  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fFlags, 2)
1131  TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fFlags, 32)
1132  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
1133  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
1134  TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fAnyOperationsAborted, 36)
1135  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, hNameMappings, 8)
1136  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hNameMappings, 8)
1137  TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hNameMappings, 40)
1138  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, lpszProgressTitle, 8)
1139  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, lpszProgressTitle, 8)
1140  TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, lpszProgressTitle, 48)
1141 }
1142 
1143 static void test_pack_SHNAMEMAPPINGA(void)
1144 {
1145  /* SHNAMEMAPPINGA */
1148  TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszOldPath, 8)
1149  TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszOldPath, 8)
1150  TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszOldPath, 0)
1151  TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszNewPath, 8)
1152  TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszNewPath, 8)
1153  TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszNewPath, 8)
1154  TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchOldPath, 4)
1155  TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchOldPath, 4)
1156  TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchOldPath, 16)
1157  TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchNewPath, 4)
1158  TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchNewPath, 4)
1159  TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchNewPath, 20)
1160 }
1161 
1162 static void test_pack_SHNAMEMAPPINGW(void)
1163 {
1164  /* SHNAMEMAPPINGW */
1167  TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszOldPath, 8)
1168  TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszOldPath, 8)
1169  TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszOldPath, 0)
1170  TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszNewPath, 8)
1171  TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszNewPath, 8)
1172  TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszNewPath, 8)
1173  TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchOldPath, 4)
1174  TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchOldPath, 4)
1175  TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchOldPath, 16)
1176  TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchNewPath, 4)
1177  TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchNewPath, 4)
1178  TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchNewPath, 20)
1179 }
1180 
1181 static void test_pack_ITEMIDLIST(void)
1182 {
1183  /* ITEMIDLIST (pack 1) */
1186  TEST_FIELD_SIZE (ITEMIDLIST, mkid, 3)
1187  TEST_FIELD_ALIGN (ITEMIDLIST, mkid, 1)
1188  TEST_FIELD_OFFSET(ITEMIDLIST, mkid, 0)
1189 }
1190 
1191 static void test_pack_LPCITEMIDLIST(void)
1192 {
1193  /* LPCITEMIDLIST */
1198 }
1199 
1200 static void test_pack_LPCSHITEMID(void)
1201 {
1202  /* LPCSHITEMID */
1207 }
1208 
1209 static void test_pack_LPITEMIDLIST(void)
1210 {
1211  /* LPITEMIDLIST */
1214 }
1215 
1216 static void test_pack_LPSHELLDETAILS(void)
1217 {
1218  /* LPSHELLDETAILS */
1221 }
1222 
1223 static void test_pack_LPSHITEMID(void)
1224 {
1225  /* LPSHITEMID */
1228 }
1229 
1230 static void test_pack_LPSTRRET(void)
1231 {
1232  /* LPSTRRET */
1235 }
1236 
1237 static void test_pack_SHELLDETAILS(void)
1238 {
1239  /* SHELLDETAILS (pack 1) */
1243  TEST_FIELD_SIZE (SHELLDETAILS, cxChar, 4)
1244  TEST_FIELD_ALIGN (SHELLDETAILS, cxChar, 1)
1245  TEST_FIELD_OFFSET(SHELLDETAILS, cxChar, 4)
1246 }
1247 
1248 static void test_pack_SHITEMID(void)
1249 {
1250  /* SHITEMID (pack 1) */
1256  TEST_FIELD_SIZE (SHITEMID, abID, 1)
1257  TEST_FIELD_ALIGN (SHITEMID, abID, 1)
1258  TEST_FIELD_OFFSET(SHITEMID, abID, 2)
1259 }
1260 
1261 static void test_pack_STRRET(void)
1262 {
1263  /* STRRET (pack 8) */
1264  TEST_FIELD_SIZE (STRRET, uType, 4)
1265  TEST_FIELD_ALIGN (STRRET, uType, 4)
1266  TEST_FIELD_OFFSET(STRRET, uType, 0)
1267 }
1268 
1269 static void test_pack_AUTO_SCROLL_DATA(void)
1270 {
1271  /* AUTO_SCROLL_DATA (pack 1) */
1274  TEST_FIELD_SIZE (AUTO_SCROLL_DATA, iNextSample, 4)
1275  TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, iNextSample, 1)
1276  TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, iNextSample, 0)
1277  TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwLastScroll, 4)
1278  TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwLastScroll, 1)
1279  TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwLastScroll, 4)
1280  TEST_FIELD_SIZE (AUTO_SCROLL_DATA, bFull, 4)
1286  TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwTimes, 12)
1287  TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwTimes, 1)
1288  TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwTimes, 36)
1289 }
1290 
1291 static void test_pack_BFFCALLBACK(void)
1292 {
1293  /* BFFCALLBACK */
1296 }
1297 
1298 static void test_pack_BROWSEINFOA(void)
1299 {
1300  /* BROWSEINFOA (pack 8) */
1303  TEST_FIELD_SIZE (BROWSEINFOA, hwndOwner, 8)
1304  TEST_FIELD_ALIGN (BROWSEINFOA, hwndOwner, 8)
1305  TEST_FIELD_OFFSET(BROWSEINFOA, hwndOwner, 0)
1306  TEST_FIELD_SIZE (BROWSEINFOA, pidlRoot, 8)
1307  TEST_FIELD_ALIGN (BROWSEINFOA, pidlRoot, 8)
1308  TEST_FIELD_OFFSET(BROWSEINFOA, pidlRoot, 8)
1309  TEST_FIELD_SIZE (BROWSEINFOA, pszDisplayName, 8)
1310  TEST_FIELD_ALIGN (BROWSEINFOA, pszDisplayName, 8)
1311  TEST_FIELD_OFFSET(BROWSEINFOA, pszDisplayName, 16)
1312  TEST_FIELD_SIZE (BROWSEINFOA, lpszTitle, 8)
1313  TEST_FIELD_ALIGN (BROWSEINFOA, lpszTitle, 8)
1314  TEST_FIELD_OFFSET(BROWSEINFOA, lpszTitle, 24)
1315  TEST_FIELD_SIZE (BROWSEINFOA, ulFlags, 4)
1316  TEST_FIELD_ALIGN (BROWSEINFOA, ulFlags, 4)
1317  TEST_FIELD_OFFSET(BROWSEINFOA, ulFlags, 32)
1318  TEST_FIELD_SIZE (BROWSEINFOA, lpfn, 8)
1319  TEST_FIELD_ALIGN (BROWSEINFOA, lpfn, 8)
1320  TEST_FIELD_OFFSET(BROWSEINFOA, lpfn, 40)
1324  TEST_FIELD_SIZE (BROWSEINFOA, iImage, 4)
1325  TEST_FIELD_ALIGN (BROWSEINFOA, iImage, 4)
1326  TEST_FIELD_OFFSET(BROWSEINFOA, iImage, 56)
1327 }
1328 
1329 static void test_pack_BROWSEINFOW(void)
1330 {
1331  /* BROWSEINFOW (pack 8) */
1334  TEST_FIELD_SIZE (BROWSEINFOW, hwndOwner, 8)
1335  TEST_FIELD_ALIGN (BROWSEINFOW, hwndOwner, 8)
1336  TEST_FIELD_OFFSET(BROWSEINFOW, hwndOwner, 0)
1337  TEST_FIELD_SIZE (BROWSEINFOW, pidlRoot, 8)
1338  TEST_FIELD_ALIGN (BROWSEINFOW, pidlRoot, 8)
1339  TEST_FIELD_OFFSET(BROWSEINFOW, pidlRoot, 8)
1340  TEST_FIELD_SIZE (BROWSEINFOW, pszDisplayName, 8)
1341  TEST_FIELD_ALIGN (BROWSEINFOW, pszDisplayName, 8)
1342  TEST_FIELD_OFFSET(BROWSEINFOW, pszDisplayName, 16)
1343  TEST_FIELD_SIZE (BROWSEINFOW, lpszTitle, 8)
1344  TEST_FIELD_ALIGN (BROWSEINFOW, lpszTitle, 8)
1345  TEST_FIELD_OFFSET(BROWSEINFOW, lpszTitle, 24)
1346  TEST_FIELD_SIZE (BROWSEINFOW, ulFlags, 4)
1347  TEST_FIELD_ALIGN (BROWSEINFOW, ulFlags, 4)
1348  TEST_FIELD_OFFSET(BROWSEINFOW, ulFlags, 32)
1349  TEST_FIELD_SIZE (BROWSEINFOW, lpfn, 8)
1350  TEST_FIELD_ALIGN (BROWSEINFOW, lpfn, 8)
1351  TEST_FIELD_OFFSET(BROWSEINFOW, lpfn, 40)
1355  TEST_FIELD_SIZE (BROWSEINFOW, iImage, 4)
1356  TEST_FIELD_ALIGN (BROWSEINFOW, iImage, 4)
1357  TEST_FIELD_OFFSET(BROWSEINFOW, iImage, 56)
1358 }
1359 
1360 static void test_pack_CABINETSTATE(void)
1361 {
1362  /* CABINETSTATE (pack 1) */
1365  TEST_FIELD_SIZE (CABINETSTATE, cLength, 2)
1366  TEST_FIELD_ALIGN (CABINETSTATE, cLength, 1)
1367  TEST_FIELD_OFFSET(CABINETSTATE, cLength, 0)
1368  TEST_FIELD_SIZE (CABINETSTATE, nVersion, 2)
1369  TEST_FIELD_ALIGN (CABINETSTATE, nVersion, 1)
1370  TEST_FIELD_OFFSET(CABINETSTATE, nVersion, 2)
1371  TEST_FIELD_SIZE (CABINETSTATE, fMenuEnumFilter, 4)
1372  TEST_FIELD_ALIGN (CABINETSTATE, fMenuEnumFilter, 1)
1373  TEST_FIELD_OFFSET(CABINETSTATE, fMenuEnumFilter, 8)
1374 }
1375 
1376 static void test_pack_CIDA(void)
1377 {
1378  /* CIDA (pack 1) */
1379  TEST_TYPE_SIZE (CIDA, 8)
1380  TEST_TYPE_ALIGN (CIDA, 1)
1381  TEST_FIELD_SIZE (CIDA, cidl, 4)
1382  TEST_FIELD_ALIGN (CIDA, cidl, 1)
1383  TEST_FIELD_OFFSET(CIDA, cidl, 0)
1384  TEST_FIELD_SIZE (CIDA, aoffset, 4)
1385  TEST_FIELD_ALIGN (CIDA, aoffset, 1)
1386  TEST_FIELD_OFFSET(CIDA, aoffset, 4)
1387 }
1388 
1389 static void test_pack_CSFV(void)
1390 {
1391  /* CSFV (pack 8) */
1392  TEST_FIELD_SIZE (CSFV, cbSize, 4)
1393  TEST_FIELD_ALIGN (CSFV, cbSize, 4)
1394  TEST_FIELD_OFFSET(CSFV, cbSize, 0)
1395  TEST_FIELD_SIZE (CSFV, pshf, 8)
1396  TEST_FIELD_ALIGN (CSFV, pshf, 8)
1397  TEST_FIELD_OFFSET(CSFV, pshf, 8)
1398  TEST_FIELD_SIZE (CSFV, psvOuter, 8)
1399  TEST_FIELD_ALIGN (CSFV, psvOuter, 8)
1400  TEST_FIELD_OFFSET(CSFV, psvOuter, 16)
1401  TEST_FIELD_SIZE (CSFV, pidl, 8)
1402  TEST_FIELD_ALIGN (CSFV, pidl, 8)
1403  TEST_FIELD_OFFSET(CSFV, pidl, 24)
1404  TEST_FIELD_SIZE (CSFV, lEvents, 4)
1405  TEST_FIELD_ALIGN (CSFV, lEvents, 4)
1406  TEST_FIELD_OFFSET(CSFV, lEvents, 32)
1407  TEST_FIELD_SIZE (CSFV, pfnCallback, 8)
1408  TEST_FIELD_ALIGN (CSFV, pfnCallback, 8)
1409  TEST_FIELD_OFFSET(CSFV, pfnCallback, 40)
1410 }
1411 
1412 static void test_pack_DROPFILES(void)
1413 {
1414  /* DROPFILES (pack 1) */
1417  TEST_FIELD_SIZE (DROPFILES, pFiles, 4)
1418  TEST_FIELD_ALIGN (DROPFILES, pFiles, 1)
1419  TEST_FIELD_OFFSET(DROPFILES, pFiles, 0)
1423  TEST_FIELD_SIZE (DROPFILES, fNC, 4)
1424  TEST_FIELD_ALIGN (DROPFILES, fNC, 1)
1425  TEST_FIELD_OFFSET(DROPFILES, fNC, 12)
1426  TEST_FIELD_SIZE (DROPFILES, fWide, 4)
1427  TEST_FIELD_ALIGN (DROPFILES, fWide, 1)
1428  TEST_FIELD_OFFSET(DROPFILES, fWide, 16)
1429 }
1430 
1431 static void test_pack_FILEDESCRIPTORA(void)
1432 {
1433  /* FILEDESCRIPTORA (pack 1) */
1442  TEST_FIELD_SIZE (FILEDESCRIPTORA, sizel, 8)
1443  TEST_FIELD_ALIGN (FILEDESCRIPTORA, sizel, 1)
1445  TEST_FIELD_SIZE (FILEDESCRIPTORA, pointl, 8)
1446  TEST_FIELD_ALIGN (FILEDESCRIPTORA, pointl, 1)
1447  TEST_FIELD_OFFSET(FILEDESCRIPTORA, pointl, 28)
1451  TEST_FIELD_SIZE (FILEDESCRIPTORA, ftCreationTime, 8)
1452  TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftCreationTime, 1)
1453  TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftCreationTime, 40)
1454  TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastAccessTime, 8)
1455  TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastAccessTime, 1)
1456  TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastAccessTime, 48)
1457  TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastWriteTime, 8)
1458  TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastWriteTime, 1)
1459  TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastWriteTime, 56)
1460  TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeHigh, 4)
1461  TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeHigh, 1)
1462  TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeHigh, 64)
1463  TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeLow, 4)
1464  TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeLow, 1)
1465  TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeLow, 68)
1466  TEST_FIELD_SIZE (FILEDESCRIPTORA, cFileName, 260)
1467  TEST_FIELD_ALIGN (FILEDESCRIPTORA, cFileName, 1)
1468  TEST_FIELD_OFFSET(FILEDESCRIPTORA, cFileName, 72)
1469 }
1470 
1471 static void test_pack_FILEDESCRIPTORW(void)
1472 {
1473  /* FILEDESCRIPTORW (pack 1) */
1482  TEST_FIELD_SIZE (FILEDESCRIPTORW, sizel, 8)
1483  TEST_FIELD_ALIGN (FILEDESCRIPTORW, sizel, 1)
1485  TEST_FIELD_SIZE (FILEDESCRIPTORW, pointl, 8)
1486  TEST_FIELD_ALIGN (FILEDESCRIPTORW, pointl, 1)
1487  TEST_FIELD_OFFSET(FILEDESCRIPTORW, pointl, 28)
1491  TEST_FIELD_SIZE (FILEDESCRIPTORW, ftCreationTime, 8)
1492  TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftCreationTime, 1)
1493  TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftCreationTime, 40)
1494  TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastAccessTime, 8)
1495  TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastAccessTime, 1)
1496  TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastAccessTime, 48)
1497  TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastWriteTime, 8)
1498  TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastWriteTime, 1)
1499  TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastWriteTime, 56)
1500  TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeHigh, 4)
1501  TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeHigh, 1)
1502  TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeHigh, 64)
1503  TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeLow, 4)
1504  TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeLow, 1)
1505  TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeLow, 68)
1506  TEST_FIELD_SIZE (FILEDESCRIPTORW, cFileName, 520)
1507  TEST_FIELD_ALIGN (FILEDESCRIPTORW, cFileName, 1)
1508  TEST_FIELD_OFFSET(FILEDESCRIPTORW, cFileName, 72)
1509 }
1510 
1511 static void test_pack_FILEGROUPDESCRIPTORA(void)
1512 {
1513  /* FILEGROUPDESCRIPTORA (pack 1) */
1522 }
1523 
1524 static void test_pack_FILEGROUPDESCRIPTORW(void)
1525 {
1526  /* FILEGROUPDESCRIPTORW (pack 1) */
1535 }
1536 
1537 static void test_pack_ITEMSPACING(void)
1538 {
1539  /* ITEMSPACING (pack 8) */
1542  TEST_FIELD_SIZE (ITEMSPACING, cxSmall, 4)
1543  TEST_FIELD_ALIGN (ITEMSPACING, cxSmall, 4)
1544  TEST_FIELD_OFFSET(ITEMSPACING, cxSmall, 0)
1545  TEST_FIELD_SIZE (ITEMSPACING, cySmall, 4)
1546  TEST_FIELD_ALIGN (ITEMSPACING, cySmall, 4)
1547  TEST_FIELD_OFFSET(ITEMSPACING, cySmall, 4)
1548  TEST_FIELD_SIZE (ITEMSPACING, cxLarge, 4)
1549  TEST_FIELD_ALIGN (ITEMSPACING, cxLarge, 4)
1550  TEST_FIELD_OFFSET(ITEMSPACING, cxLarge, 8)
1551  TEST_FIELD_SIZE (ITEMSPACING, cyLarge, 4)
1552  TEST_FIELD_ALIGN (ITEMSPACING, cyLarge, 4)
1553  TEST_FIELD_OFFSET(ITEMSPACING, cyLarge, 12)
1554 }
1555 
1556 static void test_pack_LPBROWSEINFOA(void)
1557 {
1558  /* LPBROWSEINFOA */
1563 }
1564 
1565 static void test_pack_LPBROWSEINFOW(void)
1566 {
1567  /* LPBROWSEINFOW */
1572 }
1573 
1574 static void test_pack_LPCABINETSTATE(void)
1575 {
1576  /* LPCABINETSTATE */
1581 }
1582 
1583 static void test_pack_LPCSFV(void)
1584 {
1585  /* LPCSFV */
1586  TEST_TYPE_SIZE (LPCSFV, 8)
1587  TEST_TYPE_ALIGN (LPCSFV, 8)
1588 }
1589 
1590 static void test_pack_LPDROPFILES(void)
1591 {
1592  /* LPDROPFILES */
1597 }
1598 
1599 static void test_pack_LPFILEDESCRIPTORA(void)
1600 {
1601  /* LPFILEDESCRIPTORA */
1606 }
1607 
1608 static void test_pack_LPFILEDESCRIPTORW(void)
1609 {
1610  /* LPFILEDESCRIPTORW */
1615 }
1616 
1617 static void test_pack_LPFILEGROUPDESCRIPTORA(void)
1618 {
1619  /* LPFILEGROUPDESCRIPTORA */
1624 }
1625 
1626 static void test_pack_LPFILEGROUPDESCRIPTORW(void)
1627 {
1628  /* LPFILEGROUPDESCRIPTORW */
1633 }
1634 
1635 static void test_pack_LPFNVIEWCALLBACK(void)
1636 {
1637  /* LPFNVIEWCALLBACK */
1640 }
1641 
1642 static void test_pack_LPIDA(void)
1643 {
1644  /* LPIDA */
1645  TEST_TYPE_SIZE (LPIDA, 8)
1646  TEST_TYPE_ALIGN (LPIDA, 8)
1647  TEST_TARGET_SIZE (LPIDA, 8)
1649 }
1650 
1651 static void test_pack_LPQCMINFO(void)
1652 {
1653  /* LPQCMINFO */
1658 }
1659 
1660 static void test_pack_LPSHChangeDWORDAsIDList(void)
1661 {
1662  /* LPSHChangeDWORDAsIDList */
1667 }
1668 
1670 {
1671  /* LPSHChangeProductKeyAsIDList */
1676 }
1677 
1678 static void test_pack_LPSHDESCRIPTIONID(void)
1679 {
1680  /* LPSHDESCRIPTIONID */
1685 }
1686 
1687 static void test_pack_LPSHELLFLAGSTATE(void)
1688 {
1689  /* LPSHELLFLAGSTATE */
1694 }
1695 
1696 static void test_pack_LPSHELLSTATE(void)
1697 {
1698  /* LPSHELLSTATE */
1703 }
1704 
1705 static void test_pack_LPTBINFO(void)
1706 {
1707  /* LPTBINFO */
1712 }
1713 
1714 static void test_pack_PBROWSEINFOA(void)
1715 {
1716  /* PBROWSEINFOA */
1721 }
1722 
1723 static void test_pack_PBROWSEINFOW(void)
1724 {
1725  /* PBROWSEINFOW */
1730 }
1731 
1732 static void test_pack_QCMINFO(void)
1733 {
1734  /* QCMINFO (pack 8) */
1735  TEST_TYPE_SIZE (QCMINFO, 32)
1740  TEST_FIELD_SIZE (QCMINFO, indexMenu, 4)
1741  TEST_FIELD_ALIGN (QCMINFO, indexMenu, 4)
1742  TEST_FIELD_OFFSET(QCMINFO, indexMenu, 8)
1743  TEST_FIELD_SIZE (QCMINFO, idCmdFirst, 4)
1744  TEST_FIELD_ALIGN (QCMINFO, idCmdFirst, 4)
1745  TEST_FIELD_OFFSET(QCMINFO, idCmdFirst, 12)
1746  TEST_FIELD_SIZE (QCMINFO, idCmdLast, 4)
1747  TEST_FIELD_ALIGN (QCMINFO, idCmdLast, 4)
1748  TEST_FIELD_OFFSET(QCMINFO, idCmdLast, 16)
1749  TEST_FIELD_SIZE (QCMINFO, pIdMap, 8)
1750  TEST_FIELD_ALIGN (QCMINFO, pIdMap, 8)
1751  TEST_FIELD_OFFSET(QCMINFO, pIdMap, 24)
1752 }
1753 
1754 static void test_pack_QCMINFO_IDMAP(void)
1755 {
1756  /* QCMINFO_IDMAP (pack 8) */
1759  TEST_FIELD_SIZE (QCMINFO_IDMAP, nMaxIds, 4)
1760  TEST_FIELD_ALIGN (QCMINFO_IDMAP, nMaxIds, 4)
1761  TEST_FIELD_OFFSET(QCMINFO_IDMAP, nMaxIds, 0)
1762  TEST_FIELD_SIZE (QCMINFO_IDMAP, pIdList, 8)
1763  TEST_FIELD_ALIGN (QCMINFO_IDMAP, pIdList, 4)
1764  TEST_FIELD_OFFSET(QCMINFO_IDMAP, pIdList, 4)
1765 }
1766 
1767 static void test_pack_QCMINFO_IDMAP_PLACEMENT(void)
1768 {
1769  /* QCMINFO_IDMAP_PLACEMENT (pack 8) */
1778 }
1779 
1780 static void test_pack_SFV_CREATE(void)
1781 {
1782  /* SFV_CREATE (pack 8) */
1785  TEST_FIELD_SIZE (SFV_CREATE, cbSize, 4)
1786  TEST_FIELD_ALIGN (SFV_CREATE, cbSize, 4)
1787  TEST_FIELD_OFFSET(SFV_CREATE, cbSize, 0)
1788  TEST_FIELD_SIZE (SFV_CREATE, pshf, 8)
1789  TEST_FIELD_ALIGN (SFV_CREATE, pshf, 8)
1790  TEST_FIELD_OFFSET(SFV_CREATE, pshf, 8)
1791  TEST_FIELD_SIZE (SFV_CREATE, psvOuter, 8)
1792  TEST_FIELD_ALIGN (SFV_CREATE, psvOuter, 8)
1793  TEST_FIELD_OFFSET(SFV_CREATE, psvOuter, 16)
1794  TEST_FIELD_SIZE (SFV_CREATE, psfvcb, 8)
1795  TEST_FIELD_ALIGN (SFV_CREATE, psfvcb, 8)
1796  TEST_FIELD_OFFSET(SFV_CREATE, psfvcb, 24)
1797 }
1798 
1799 static void test_pack_SHChangeDWORDAsIDList(void)
1800 {
1801  /* SHChangeDWORDAsIDList (pack 1) */
1816 }
1817 
1818 static void test_pack_SHChangeNotifyEntry(void)
1819 {
1820  /* SHChangeNotifyEntry (pack 1) */
1826  TEST_FIELD_SIZE (SHChangeNotifyEntry, fRecursive, 4)
1827  TEST_FIELD_ALIGN (SHChangeNotifyEntry, fRecursive, 1)
1828  TEST_FIELD_OFFSET(SHChangeNotifyEntry, fRecursive, 8)
1829 }
1830 
1831 static void test_pack_SHChangeProductKeyAsIDList(void)
1832 {
1833  /* SHChangeProductKeyAsIDList (pack 1) */
1839  TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, wszProductKey, 78)
1840  TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, wszProductKey, 1)
1845 }
1846 
1847 static void test_pack_SHDESCRIPTIONID(void)
1848 {
1849  /* SHDESCRIPTIONID (pack 8) */
1852  TEST_FIELD_SIZE (SHDESCRIPTIONID, dwDescriptionId, 4)
1853  TEST_FIELD_ALIGN (SHDESCRIPTIONID, dwDescriptionId, 4)
1854  TEST_FIELD_OFFSET(SHDESCRIPTIONID, dwDescriptionId, 0)
1858 }
1859 
1860 static void test_pack_SHELLFLAGSTATE(void)
1861 {
1862  /* SHELLFLAGSTATE (pack 1) */
1865 }
1866 
1867 static void test_pack_SHELLSTATE(void)
1868 {
1869  /* SHELLSTATE (pack 1) */
1872  TEST_FIELD_SIZE (SHELLSTATE, dwWin95Unused, 4)
1873  TEST_FIELD_ALIGN (SHELLSTATE, dwWin95Unused, 1)
1874  TEST_FIELD_OFFSET(SHELLSTATE, dwWin95Unused, 4)
1875  TEST_FIELD_SIZE (SHELLSTATE, uWin95Unused, 4)
1876  TEST_FIELD_ALIGN (SHELLSTATE, uWin95Unused, 1)
1877  TEST_FIELD_OFFSET(SHELLSTATE, uWin95Unused, 8)
1878  TEST_FIELD_SIZE (SHELLSTATE, lParamSort, 4)
1879  TEST_FIELD_ALIGN (SHELLSTATE, lParamSort, 1)
1880  TEST_FIELD_OFFSET(SHELLSTATE, lParamSort, 12)
1881  TEST_FIELD_SIZE (SHELLSTATE, iSortDirection, 4)
1882  TEST_FIELD_ALIGN (SHELLSTATE, iSortDirection, 1)
1883  TEST_FIELD_OFFSET(SHELLSTATE, iSortDirection, 16)
1887  TEST_FIELD_SIZE (SHELLSTATE, uNotUsed, 4)
1888  TEST_FIELD_ALIGN (SHELLSTATE, uNotUsed, 1)
1889  TEST_FIELD_OFFSET(SHELLSTATE, uNotUsed, 24)
1890 }
1891 
1892 static void test_pack_TBINFO(void)
1893 {
1894  /* TBINFO (pack 8) */
1895  TEST_TYPE_SIZE (TBINFO, 8)
1896  TEST_TYPE_ALIGN (TBINFO, 4)
1897  TEST_FIELD_SIZE (TBINFO, cbuttons, 4)
1898  TEST_FIELD_ALIGN (TBINFO, cbuttons, 4)
1899  TEST_FIELD_OFFSET(TBINFO, cbuttons, 0)
1903 }
1904 
1905 #else /* _WIN64 */
1906 
1907 static void test_pack_BLOB(void)
1908 {
1909  /* BLOB */
1910  TEST_TYPE_SIZE (BLOB, 8)
1911  TEST_TYPE_ALIGN (BLOB, 4)
1912  TEST_FIELD_SIZE (BLOB, cbSize, 4)
1913  TEST_FIELD_ALIGN (BLOB, cbSize, 4)
1914  TEST_FIELD_OFFSET(BLOB, cbSize, 0)
1915  TEST_FIELD_SIZE (BLOB, pBlobData, 4)
1916  TEST_FIELD_ALIGN (BLOB, pBlobData, 4)
1917  TEST_FIELD_OFFSET(BLOB, pBlobData, 4)
1918 }
1919 
1920 static void test_pack_BSTR(void)
1921 {
1922  /* BSTR */
1923  TEST_TYPE_SIZE (BSTR, 4)
1924  TEST_TYPE_ALIGN (BSTR, 4)
1925  TEST_TARGET_SIZE (BSTR, 2)
1927 }
1928 
1929 static void test_pack_BSTRBLOB(void)
1930 {
1931  /* BSTRBLOB */
1932  TEST_TYPE_SIZE (BSTRBLOB, 8)
1933  TEST_TYPE_ALIGN (BSTRBLOB, 4)
1934  TEST_FIELD_SIZE (BSTRBLOB, cbSize, 4)
1935  TEST_FIELD_ALIGN (BSTRBLOB, cbSize, 4)
1936  TEST_FIELD_OFFSET(BSTRBLOB, cbSize, 0)
1937  TEST_FIELD_SIZE (BSTRBLOB, pData, 4)
1938  TEST_FIELD_ALIGN (BSTRBLOB, pData, 4)
1939  TEST_FIELD_OFFSET(BSTRBLOB, pData, 4)
1940 }
1941 
1942 static void test_pack_BYTE_BLOB(void)
1943 {
1944  /* BYTE_BLOB */
1945  TEST_TYPE_SIZE (BYTE_BLOB, 8)
1946  TEST_TYPE_ALIGN (BYTE_BLOB, 4)
1947  TEST_FIELD_SIZE (BYTE_BLOB, clSize, 4)
1948  TEST_FIELD_ALIGN (BYTE_BLOB, clSize, 4)
1949  TEST_FIELD_OFFSET(BYTE_BLOB, clSize, 0)
1950  TEST_FIELD_SIZE (BYTE_BLOB, abData, 1)
1951  TEST_FIELD_ALIGN (BYTE_BLOB, abData, 1)
1952  TEST_FIELD_OFFSET(BYTE_BLOB, abData, 4)
1953 }
1954 
1955 static void test_pack_BYTE_SIZEDARR(void)
1956 {
1957  /* BYTE_SIZEDARR */
1958  TEST_TYPE_SIZE (BYTE_SIZEDARR, 8)
1959  TEST_TYPE_ALIGN (BYTE_SIZEDARR, 4)
1960  TEST_FIELD_SIZE (BYTE_SIZEDARR, clSize, 4)
1961  TEST_FIELD_ALIGN (BYTE_SIZEDARR, clSize, 4)
1962  TEST_FIELD_OFFSET(BYTE_SIZEDARR, clSize, 0)
1963  TEST_FIELD_SIZE (BYTE_SIZEDARR, pData, 4)
1964  TEST_FIELD_ALIGN (BYTE_SIZEDARR, pData, 4)
1965  TEST_FIELD_OFFSET(BYTE_SIZEDARR, pData, 4)
1966 }
1967 
1968 static void test_pack_CLIPDATA(void)
1969 {
1970  /* CLIPDATA */
1971  TEST_TYPE_SIZE (CLIPDATA, 12)
1972  TEST_TYPE_ALIGN (CLIPDATA, 4)
1973  TEST_FIELD_SIZE (CLIPDATA, cbSize, 4)
1974  TEST_FIELD_ALIGN (CLIPDATA, cbSize, 4)
1975  TEST_FIELD_OFFSET(CLIPDATA, cbSize, 0)
1976  TEST_FIELD_SIZE (CLIPDATA, ulClipFmt, 4)
1977  TEST_FIELD_ALIGN (CLIPDATA, ulClipFmt, 4)
1978  TEST_FIELD_OFFSET(CLIPDATA, ulClipFmt, 4)
1979  TEST_FIELD_SIZE (CLIPDATA, pClipData, 4)
1980  TEST_FIELD_ALIGN (CLIPDATA, pClipData, 4)
1981  TEST_FIELD_OFFSET(CLIPDATA, pClipData, 8)
1982 }
1983 
1984 static void test_pack_CLIPFORMAT(void)
1985 {
1986  /* CLIPFORMAT */
1987  TEST_TYPE_SIZE (CLIPFORMAT, 2)
1988  TEST_TYPE_ALIGN (CLIPFORMAT, 2)
1989  TEST_TYPE_UNSIGNED(CLIPFORMAT)
1990 }
1991 
1992 static void test_pack_COAUTHIDENTITY(void)
1993 {
1994  /* COAUTHIDENTITY */
1995  TEST_TYPE_SIZE (COAUTHIDENTITY, 28)
1996  TEST_TYPE_ALIGN (COAUTHIDENTITY, 4)
1997  TEST_FIELD_SIZE (COAUTHIDENTITY, User, 4)
1998  TEST_FIELD_ALIGN (COAUTHIDENTITY, User, 4)
1999  TEST_FIELD_OFFSET(COAUTHIDENTITY, User, 0)
2000  TEST_FIELD_SIZE (COAUTHIDENTITY, UserLength, 4)
2001  TEST_FIELD_ALIGN (COAUTHIDENTITY, UserLength, 4)
2002  TEST_FIELD_OFFSET(COAUTHIDENTITY, UserLength, 4)
2003  TEST_FIELD_SIZE (COAUTHIDENTITY, Domain, 4)
2004  TEST_FIELD_ALIGN (COAUTHIDENTITY, Domain, 4)
2005  TEST_FIELD_OFFSET(COAUTHIDENTITY, Domain, 8)
2006  TEST_FIELD_SIZE (COAUTHIDENTITY, DomainLength, 4)
2007  TEST_FIELD_ALIGN (COAUTHIDENTITY, DomainLength, 4)
2008  TEST_FIELD_OFFSET(COAUTHIDENTITY, DomainLength, 12)
2009  TEST_FIELD_SIZE (COAUTHIDENTITY, Password, 4)
2010  TEST_FIELD_ALIGN (COAUTHIDENTITY, Password, 4)
2011  TEST_FIELD_OFFSET(COAUTHIDENTITY, Password, 16)
2012  TEST_FIELD_SIZE (COAUTHIDENTITY, PasswordLength, 4)
2013  TEST_FIELD_ALIGN (COAUTHIDENTITY, PasswordLength, 4)
2014  TEST_FIELD_OFFSET(COAUTHIDENTITY, PasswordLength, 20)
2015  TEST_FIELD_SIZE (COAUTHIDENTITY, Flags, 4)
2016  TEST_FIELD_ALIGN (COAUTHIDENTITY, Flags, 4)
2017  TEST_FIELD_OFFSET(COAUTHIDENTITY, Flags, 24)
2018 }
2019 
2020 static void test_pack_COAUTHINFO(void)
2021 {
2022  /* COAUTHINFO */
2023  TEST_TYPE_SIZE (COAUTHINFO, 28)
2024  TEST_TYPE_ALIGN (COAUTHINFO, 4)
2025  TEST_FIELD_SIZE (COAUTHINFO, dwAuthnSvc, 4)
2026  TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnSvc, 4)
2027  TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnSvc, 0)
2028  TEST_FIELD_SIZE (COAUTHINFO, dwAuthzSvc, 4)
2029  TEST_FIELD_ALIGN (COAUTHINFO, dwAuthzSvc, 4)
2030  TEST_FIELD_OFFSET(COAUTHINFO, dwAuthzSvc, 4)
2031  TEST_FIELD_SIZE (COAUTHINFO, pwszServerPrincName, 4)
2032  TEST_FIELD_ALIGN (COAUTHINFO, pwszServerPrincName, 4)
2033  TEST_FIELD_OFFSET(COAUTHINFO, pwszServerPrincName, 8)
2034  TEST_FIELD_SIZE (COAUTHINFO, dwAuthnLevel, 4)
2035  TEST_FIELD_ALIGN (COAUTHINFO, dwAuthnLevel, 4)
2036  TEST_FIELD_OFFSET(COAUTHINFO, dwAuthnLevel, 12)
2037  TEST_FIELD_SIZE (COAUTHINFO, dwImpersonationLevel, 4)
2038  TEST_FIELD_ALIGN (COAUTHINFO, dwImpersonationLevel, 4)
2039  TEST_FIELD_OFFSET(COAUTHINFO, dwImpersonationLevel, 16)
2040  TEST_FIELD_SIZE (COAUTHINFO, pAuthIdentityData, 4)
2041  TEST_FIELD_ALIGN (COAUTHINFO, pAuthIdentityData, 4)
2042  TEST_FIELD_OFFSET(COAUTHINFO, pAuthIdentityData, 20)
2043  TEST_FIELD_SIZE (COAUTHINFO, dwCapabilities, 4)
2044  TEST_FIELD_ALIGN (COAUTHINFO, dwCapabilities, 4)
2045  TEST_FIELD_OFFSET(COAUTHINFO, dwCapabilities, 24)
2046 }
2047 
2048 static void test_pack_DATE(void)
2049 {
2050  /* DATE */
2051  TEST_TYPE_SIZE (DATE, 8)
2052  TEST_TYPE_ALIGN (DATE, 8)
2053 }
2054 
2055 static void test_pack_DOUBLE(void)
2056 {
2057  /* DOUBLE */
2058  TEST_TYPE_SIZE (DOUBLE, 8)
2059  TEST_TYPE_ALIGN (DOUBLE, 8)
2060 }
2061 
2062 static void test_pack_DWORD_SIZEDARR(void)
2063 {
2064  /* DWORD_SIZEDARR */
2065  TEST_TYPE_SIZE (DWORD_SIZEDARR, 8)
2066  TEST_TYPE_ALIGN (DWORD_SIZEDARR, 4)
2067  TEST_FIELD_SIZE (DWORD_SIZEDARR, clSize, 4)
2068  TEST_FIELD_ALIGN (DWORD_SIZEDARR, clSize, 4)
2069  TEST_FIELD_OFFSET(DWORD_SIZEDARR, clSize, 0)
2070  TEST_FIELD_SIZE (DWORD_SIZEDARR, pData, 4)
2071  TEST_FIELD_ALIGN (DWORD_SIZEDARR, pData, 4)
2072  TEST_FIELD_OFFSET(DWORD_SIZEDARR, pData, 4)
2073 }
2074 
2076 {
2077  /* FLAGGED_BYTE_BLOB */
2078  TEST_TYPE_SIZE (FLAGGED_BYTE_BLOB, 12)
2079  TEST_TYPE_ALIGN (FLAGGED_BYTE_BLOB, 4)
2080  TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, fFlags, 4)
2081  TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, fFlags, 4)
2082  TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, fFlags, 0)
2083  TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, clSize, 4)
2084  TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, clSize, 4)
2085  TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, clSize, 4)
2086  TEST_FIELD_SIZE (FLAGGED_BYTE_BLOB, abData, 1)
2087  TEST_FIELD_ALIGN (FLAGGED_BYTE_BLOB, abData, 1)
2088  TEST_FIELD_OFFSET(FLAGGED_BYTE_BLOB, abData, 8)
2089 }
2090 
2092 {
2093  /* FLAGGED_WORD_BLOB */
2094  TEST_TYPE_SIZE (FLAGGED_WORD_BLOB, 12)
2095  TEST_TYPE_ALIGN (FLAGGED_WORD_BLOB, 4)
2096  TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, fFlags, 4)
2097  TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, fFlags, 4)
2098  TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, fFlags, 0)
2099  TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, clSize, 4)
2100  TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, clSize, 4)
2101  TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, clSize, 4)
2102  TEST_FIELD_SIZE (FLAGGED_WORD_BLOB, asData, 2)
2103  TEST_FIELD_ALIGN (FLAGGED_WORD_BLOB, asData, 2)
2104  TEST_FIELD_OFFSET(FLAGGED_WORD_BLOB, asData, 8)
2105 }
2106 
2107 static void test_pack_HMETAFILEPICT(void)
2108 {
2109  /* HMETAFILEPICT */
2110  TEST_TYPE_SIZE (HMETAFILEPICT, 4)
2111  TEST_TYPE_ALIGN (HMETAFILEPICT, 4)
2112 }
2113 
2114 static void test_pack_HYPER_SIZEDARR(void)
2115 {
2116  /* HYPER_SIZEDARR */
2117  TEST_TYPE_SIZE (HYPER_SIZEDARR, 8)
2118  TEST_TYPE_ALIGN (HYPER_SIZEDARR, 4)
2119  TEST_FIELD_SIZE (HYPER_SIZEDARR, clSize, 4)
2120  TEST_FIELD_ALIGN (HYPER_SIZEDARR, clSize, 4)
2121  TEST_FIELD_OFFSET(HYPER_SIZEDARR, clSize, 0)
2122  TEST_FIELD_SIZE (HYPER_SIZEDARR, pData, 4)
2123  TEST_FIELD_ALIGN (HYPER_SIZEDARR, pData, 4)
2124  TEST_FIELD_OFFSET(HYPER_SIZEDARR, pData, 4)
2125 }
2126 
2127 static void test_pack_LPBLOB(void)
2128 {
2129  /* LPBLOB */
2130  TEST_TYPE_SIZE (LPBLOB, 4)
2131  TEST_TYPE_ALIGN (LPBLOB, 4)
2132 }
2133 
2134 static void test_pack_LPBSTR(void)
2135 {
2136  /* LPBSTR */
2137  TEST_TYPE_SIZE (LPBSTR, 4)
2138  TEST_TYPE_ALIGN (LPBSTR, 4)
2139  TEST_TARGET_SIZE (LPBSTR, 4)
2140  TEST_TARGET_ALIGN(LPBSTR, 4)
2141 }
2142 
2143 static void test_pack_LPBSTRBLOB(void)
2144 {
2145  /* LPBSTRBLOB */
2146  TEST_TYPE_SIZE (LPBSTRBLOB, 4)
2147  TEST_TYPE_ALIGN (LPBSTRBLOB, 4)
2148 }
2149 
2150 static void test_pack_LPCOLESTR(void)
2151 {
2152  /* LPCOLESTR */
2153  TEST_TYPE_SIZE (LPCOLESTR, 4)
2154  TEST_TYPE_ALIGN (LPCOLESTR, 4)
2155  TEST_TARGET_SIZE (LPCOLESTR, 2)
2156  TEST_TARGET_ALIGN(LPCOLESTR, 2)
2157 }
2158 
2159 static void test_pack_LPCY(void)
2160 {
2161  /* LPCY */
2162  TEST_TYPE_SIZE (LPCY, 4)
2163  TEST_TYPE_ALIGN (LPCY, 4)
2164 }
2165 
2166 static void test_pack_LPDECIMAL(void)
2167 {
2168  /* LPDECIMAL */
2169  TEST_TYPE_SIZE (LPDECIMAL, 4)
2170  TEST_TYPE_ALIGN (LPDECIMAL, 4)
2171 }
2172 
2173 static void test_pack_LPOLESTR(void)
2174 {
2175  /* LPOLESTR */
2180 }
2181 
2182 static void test_pack_OLECHAR(void)
2183 {
2184  /* OLECHAR */
2185  TEST_TYPE_SIZE (OLECHAR, 2)
2187 }
2188 
2189 static void test_pack_PROPID(void)
2190 {
2191  /* PROPID */
2192  TEST_TYPE_SIZE (PROPID, 4)
2193  TEST_TYPE_ALIGN (PROPID, 4)
2194 }
2195 
2196 static void test_pack_RemHBITMAP(void)
2197 {
2198  /* RemHBITMAP */
2199  TEST_TYPE_SIZE (RemHBITMAP, 8)
2200  TEST_TYPE_ALIGN (RemHBITMAP, 4)
2201  TEST_FIELD_SIZE (RemHBITMAP, cbData, 4)
2202  TEST_FIELD_ALIGN (RemHBITMAP, cbData, 4)
2203  TEST_FIELD_OFFSET(RemHBITMAP, cbData, 0)
2204  TEST_FIELD_SIZE (RemHBITMAP, data, 1)
2205  TEST_FIELD_ALIGN (RemHBITMAP, data, 1)
2206  TEST_FIELD_OFFSET(RemHBITMAP, data, 4)
2207 }
2208 
2209 static void test_pack_RemHENHMETAFILE(void)
2210 {
2211  /* RemHENHMETAFILE */
2212  TEST_TYPE_SIZE (RemHENHMETAFILE, 8)
2213  TEST_TYPE_ALIGN (RemHENHMETAFILE, 4)
2214  TEST_FIELD_SIZE (RemHENHMETAFILE, cbData, 4)
2215  TEST_FIELD_ALIGN (RemHENHMETAFILE, cbData, 4)
2216  TEST_FIELD_OFFSET(RemHENHMETAFILE, cbData, 0)
2217  TEST_FIELD_SIZE (RemHENHMETAFILE, data, 1)
2218  TEST_FIELD_ALIGN (RemHENHMETAFILE, data, 1)
2219  TEST_FIELD_OFFSET(RemHENHMETAFILE, data, 4)
2220 }
2221 
2222 static void test_pack_RemHGLOBAL(void)
2223 {
2224  /* RemHGLOBAL */
2225  TEST_TYPE_SIZE (RemHGLOBAL, 12)
2226  TEST_TYPE_ALIGN (RemHGLOBAL, 4)
2227  TEST_FIELD_SIZE (RemHGLOBAL, fNullHGlobal, 4)
2228  TEST_FIELD_ALIGN (RemHGLOBAL, fNullHGlobal, 4)
2229  TEST_FIELD_OFFSET(RemHGLOBAL, fNullHGlobal, 0)
2230  TEST_FIELD_SIZE (RemHGLOBAL, cbData, 4)
2231  TEST_FIELD_ALIGN (RemHGLOBAL, cbData, 4)
2232  TEST_FIELD_OFFSET(RemHGLOBAL, cbData, 4)
2233  TEST_FIELD_SIZE (RemHGLOBAL, data, 1)
2234  TEST_FIELD_ALIGN (RemHGLOBAL, data, 1)
2235  TEST_FIELD_OFFSET(RemHGLOBAL, data, 8)
2236 }
2237 
2239 {
2240  /* RemHMETAFILEPICT */
2241  TEST_TYPE_SIZE (RemHMETAFILEPICT, 20)
2242  TEST_TYPE_ALIGN (RemHMETAFILEPICT, 4)
2243  TEST_FIELD_SIZE (RemHMETAFILEPICT, mm, 4)
2244  TEST_FIELD_ALIGN (RemHMETAFILEPICT, mm, 4)
2245  TEST_FIELD_OFFSET(RemHMETAFILEPICT, mm, 0)
2246  TEST_FIELD_SIZE (RemHMETAFILEPICT, xExt, 4)
2247  TEST_FIELD_ALIGN (RemHMETAFILEPICT, xExt, 4)
2248  TEST_FIELD_OFFSET(RemHMETAFILEPICT, xExt, 4)
2249  TEST_FIELD_SIZE (RemHMETAFILEPICT, yExt, 4)
2250  TEST_FIELD_ALIGN (RemHMETAFILEPICT, yExt, 4)
2251  TEST_FIELD_OFFSET(RemHMETAFILEPICT, yExt, 8)
2252  TEST_FIELD_SIZE (RemHMETAFILEPICT, cbData, 4)
2253  TEST_FIELD_ALIGN (RemHMETAFILEPICT, cbData, 4)
2254  TEST_FIELD_OFFSET(RemHMETAFILEPICT, cbData, 12)
2255  TEST_FIELD_SIZE (RemHMETAFILEPICT, data, 1)
2256  TEST_FIELD_ALIGN (RemHMETAFILEPICT, data, 1)
2257  TEST_FIELD_OFFSET(RemHMETAFILEPICT, data, 16)
2258 }
2259 
2260 static void test_pack_RemHPALETTE(void)
2261 {
2262  /* RemHPALETTE */
2263  TEST_TYPE_SIZE (RemHPALETTE, 8)
2264  TEST_TYPE_ALIGN (RemHPALETTE, 4)
2265  TEST_FIELD_SIZE (RemHPALETTE, cbData, 4)
2266  TEST_FIELD_ALIGN (RemHPALETTE, cbData, 4)
2267  TEST_FIELD_OFFSET(RemHPALETTE, cbData, 0)
2268  TEST_FIELD_SIZE (RemHPALETTE, data, 1)
2269  TEST_FIELD_ALIGN (RemHPALETTE, data, 1)
2270  TEST_FIELD_OFFSET(RemHPALETTE, data, 4)
2271 }
2272 
2273 static void test_pack_SCODE(void)
2274 {
2275  /* SCODE */
2276  TEST_TYPE_SIZE (SCODE, 4)
2277  TEST_TYPE_ALIGN (SCODE, 4)
2278 }
2279 
2280 static void test_pack_UP_BYTE_BLOB(void)
2281 {
2282  /* UP_BYTE_BLOB */
2283  TEST_TYPE_SIZE (UP_BYTE_BLOB, 4)
2284  TEST_TYPE_ALIGN (UP_BYTE_BLOB, 4)
2285  TEST_TARGET_SIZE (UP_BYTE_BLOB, 8)
2286  TEST_TARGET_ALIGN(UP_BYTE_BLOB, 4)
2287 }
2288 
2290 {
2291  /* UP_FLAGGED_BYTE_BLOB */
2292  TEST_TYPE_SIZE (UP_FLAGGED_BYTE_BLOB, 4)
2293  TEST_TYPE_ALIGN (UP_FLAGGED_BYTE_BLOB, 4)
2294  TEST_TARGET_SIZE (UP_FLAGGED_BYTE_BLOB, 12)
2295  TEST_TARGET_ALIGN(UP_FLAGGED_BYTE_BLOB, 4)
2296 }
2297 
2299 {
2300  /* UP_FLAGGED_WORD_BLOB */
2301  TEST_TYPE_SIZE (UP_FLAGGED_WORD_BLOB, 4)
2302  TEST_TYPE_ALIGN (UP_FLAGGED_WORD_BLOB, 4)
2303  TEST_TARGET_SIZE (UP_FLAGGED_WORD_BLOB, 12)
2304  TEST_TARGET_ALIGN(UP_FLAGGED_WORD_BLOB, 4)
2305 }
2306 
2307 static void test_pack_VARIANT_BOOL(void)
2308 {
2309  /* VARIANT_BOOL */
2313 }
2314 
2315 static void test_pack_VARTYPE(void)
2316 {
2317  /* VARTYPE */
2318  TEST_TYPE_SIZE (VARTYPE, 2)
2321 }
2322 
2323 static void test_pack_WORD_SIZEDARR(void)
2324 {
2325  /* WORD_SIZEDARR */
2326  TEST_TYPE_SIZE (WORD_SIZEDARR, 8)
2327  TEST_TYPE_ALIGN (WORD_SIZEDARR, 4)
2328  TEST_FIELD_SIZE (WORD_SIZEDARR, clSize, 4)
2329  TEST_FIELD_ALIGN (WORD_SIZEDARR, clSize, 4)
2330  TEST_FIELD_OFFSET(WORD_SIZEDARR, clSize, 0)
2331  TEST_FIELD_SIZE (WORD_SIZEDARR, pData, 4)
2332  TEST_FIELD_ALIGN (WORD_SIZEDARR, pData, 4)
2333  TEST_FIELD_OFFSET(WORD_SIZEDARR, pData, 4)
2334 }
2335 
2337 {
2338  /* remoteMETAFILEPICT */
2339  TEST_TYPE_SIZE (remoteMETAFILEPICT, 16)
2340  TEST_TYPE_ALIGN (remoteMETAFILEPICT, 4)
2341  TEST_FIELD_SIZE (remoteMETAFILEPICT, mm, 4)
2342  TEST_FIELD_ALIGN (remoteMETAFILEPICT, mm, 4)
2343  TEST_FIELD_OFFSET(remoteMETAFILEPICT, mm, 0)
2344  TEST_FIELD_SIZE (remoteMETAFILEPICT, xExt, 4)
2345  TEST_FIELD_ALIGN (remoteMETAFILEPICT, xExt, 4)
2346  TEST_FIELD_OFFSET(remoteMETAFILEPICT, xExt, 4)
2347  TEST_FIELD_SIZE (remoteMETAFILEPICT, yExt, 4)
2348  TEST_FIELD_ALIGN (remoteMETAFILEPICT, yExt, 4)
2349  TEST_FIELD_OFFSET(remoteMETAFILEPICT, yExt, 8)
2350  TEST_FIELD_SIZE (remoteMETAFILEPICT, hMF, 4)
2351  TEST_FIELD_ALIGN (remoteMETAFILEPICT, hMF, 4)
2352  TEST_FIELD_OFFSET(remoteMETAFILEPICT, hMF, 12)
2353 }
2354 
2355 static void test_pack_userBITMAP(void)
2356 {
2357  /* userBITMAP */
2358  TEST_TYPE_SIZE (userBITMAP, 28)
2359  TEST_TYPE_ALIGN (userBITMAP, 4)
2360  TEST_FIELD_SIZE (userBITMAP, bmType, 4)
2361  TEST_FIELD_ALIGN (userBITMAP, bmType, 4)
2362  TEST_FIELD_OFFSET(userBITMAP, bmType, 0)
2363  TEST_FIELD_SIZE (userBITMAP, bmWidth, 4)
2364  TEST_FIELD_ALIGN (userBITMAP, bmWidth, 4)
2365  TEST_FIELD_OFFSET(userBITMAP, bmWidth, 4)
2366  TEST_FIELD_SIZE (userBITMAP, bmHeight, 4)
2367  TEST_FIELD_ALIGN (userBITMAP, bmHeight, 4)
2368  TEST_FIELD_OFFSET(userBITMAP, bmHeight, 8)
2369  TEST_FIELD_SIZE (userBITMAP, bmWidthBytes, 4)
2370  TEST_FIELD_ALIGN (userBITMAP, bmWidthBytes, 4)
2371  TEST_FIELD_OFFSET(userBITMAP, bmWidthBytes, 12)
2372  TEST_FIELD_SIZE (userBITMAP, bmPlanes, 2)
2373  TEST_FIELD_ALIGN (userBITMAP, bmPlanes, 2)
2374  TEST_FIELD_OFFSET(userBITMAP, bmPlanes, 16)
2375  TEST_FIELD_SIZE (userBITMAP, bmBitsPixel, 2)
2376  TEST_FIELD_ALIGN (userBITMAP, bmBitsPixel, 2)
2377  TEST_FIELD_OFFSET(userBITMAP, bmBitsPixel, 18)
2378  TEST_FIELD_SIZE (userBITMAP, cbSize, 4)
2379  TEST_FIELD_ALIGN (userBITMAP, cbSize, 4)
2380  TEST_FIELD_OFFSET(userBITMAP, cbSize, 20)
2381  TEST_FIELD_SIZE (userBITMAP, pBuffer, 1)
2382  TEST_FIELD_ALIGN (userBITMAP, pBuffer, 1)
2383  TEST_FIELD_OFFSET(userBITMAP, pBuffer, 24)
2384 }
2385 
2386 static void test_pack_userCLIPFORMAT(void)
2387 {
2388  /* userCLIPFORMAT */
2389  TEST_FIELD_SIZE (userCLIPFORMAT, fContext, 4)
2390  TEST_FIELD_ALIGN (userCLIPFORMAT, fContext, 4)
2391  TEST_FIELD_OFFSET(userCLIPFORMAT, fContext, 0)
2392 }
2393 
2394 static void test_pack_userHBITMAP(void)
2395 {
2396  /* userHBITMAP */
2397  TEST_FIELD_SIZE (userHBITMAP, fContext, 4)
2398  TEST_FIELD_ALIGN (userHBITMAP, fContext, 4)
2399  TEST_FIELD_OFFSET(userHBITMAP, fContext, 0)
2400 }
2401 
2403 {
2404  /* userHENHMETAFILE */
2405  TEST_FIELD_SIZE (userHENHMETAFILE, fContext, 4)
2406  TEST_FIELD_ALIGN (userHENHMETAFILE, fContext, 4)
2407  TEST_FIELD_OFFSET(userHENHMETAFILE, fContext, 0)
2408 }
2409 
2410 static void test_pack_userHGLOBAL(void)
2411 {
2412  /* userHGLOBAL */
2413  TEST_FIELD_SIZE (userHGLOBAL, fContext, 4)
2414  TEST_FIELD_ALIGN (userHGLOBAL, fContext, 4)
2415  TEST_FIELD_OFFSET(userHGLOBAL, fContext, 0)
2416 }
2417 
2418 static void test_pack_userHMETAFILE(void)
2419 {
2420  /* userHMETAFILE */
2421  TEST_FIELD_SIZE (userHMETAFILE, fContext, 4)
2422  TEST_FIELD_ALIGN (userHMETAFILE, fContext, 4)
2423  TEST_FIELD_OFFSET(userHMETAFILE, fContext, 0)
2424 }
2425 
2427 {
2428  /* userHMETAFILEPICT */
2429  TEST_FIELD_SIZE (userHMETAFILEPICT, fContext, 4)
2430  TEST_FIELD_ALIGN (userHMETAFILEPICT, fContext, 4)
2431  TEST_FIELD_OFFSET(userHMETAFILEPICT, fContext, 0)
2432 }
2433 
2434 static void test_pack_userHPALETTE(void)
2435 {
2436  /* userHPALETTE */
2437  TEST_FIELD_SIZE (userHPALETTE, fContext, 4)
2438  TEST_FIELD_ALIGN (userHPALETTE, fContext, 4)
2439  TEST_FIELD_OFFSET(userHPALETTE, fContext, 0)
2440 }
2441 
2442 static void test_pack_wireBSTR(void)
2443 {
2444  /* wireBSTR */
2445  TEST_TYPE_SIZE (wireBSTR, 4)
2446  TEST_TYPE_ALIGN (wireBSTR, 4)
2447  TEST_TARGET_SIZE (wireBSTR, 12)
2448  TEST_TARGET_ALIGN(wireBSTR, 4)
2449 }
2450 
2451 static void test_pack_wireCLIPFORMAT(void)
2452 {
2453  /* wireCLIPFORMAT */
2454  TEST_TYPE_SIZE (wireCLIPFORMAT, 4)
2455  TEST_TYPE_ALIGN (wireCLIPFORMAT, 4)
2456 }
2457 
2458 static void test_pack_wireHBITMAP(void)
2459 {
2460  /* wireHBITMAP */
2461  TEST_TYPE_SIZE (wireHBITMAP, 4)
2462  TEST_TYPE_ALIGN (wireHBITMAP, 4)
2463 }
2464 
2466 {
2467  /* wireHENHMETAFILE */
2468  TEST_TYPE_SIZE (wireHENHMETAFILE, 4)
2469  TEST_TYPE_ALIGN (wireHENHMETAFILE, 4)
2470 }
2471 
2472 static void test_pack_wireHGLOBAL(void)
2473 {
2474  /* wireHGLOBAL */
2475  TEST_TYPE_SIZE (wireHGLOBAL, 4)
2476  TEST_TYPE_ALIGN (wireHGLOBAL, 4)
2477 }
2478 
2479 static void test_pack_wireHMETAFILE(void)
2480 {
2481  /* wireHMETAFILE */
2482  TEST_TYPE_SIZE (wireHMETAFILE, 4)
2483  TEST_TYPE_ALIGN (wireHMETAFILE, 4)
2484 }
2485 
2487 {
2488  /* wireHMETAFILEPICT */
2489  TEST_TYPE_SIZE (wireHMETAFILEPICT, 4)
2490  TEST_TYPE_ALIGN (wireHMETAFILEPICT, 4)
2491 }
2492 
2493 static void test_pack_wireHPALETTE(void)
2494 {
2495  /* wireHPALETTE */
2496  TEST_TYPE_SIZE (wireHPALETTE, 4)
2497  TEST_TYPE_ALIGN (wireHPALETTE, 4)
2498 }
2499 
2500 static void test_pack_CLSID(void)
2501 {
2502  /* CLSID */
2503  TEST_TYPE_SIZE (CLSID, 16)
2504  TEST_TYPE_ALIGN (CLSID, 4)
2505 }
2506 
2507 static void test_pack_FMTID(void)
2508 {
2509  /* FMTID */
2510  TEST_TYPE_SIZE (FMTID, 16)
2511  TEST_TYPE_ALIGN (FMTID, 4)
2512 }
2513 
2514 static void test_pack_IID(void)
2515 {
2516  /* IID */
2517  TEST_TYPE_SIZE (IID, 16)
2518  TEST_TYPE_ALIGN (IID, 4)
2519 }
2520 
2521 static void test_pack_APPBARDATA(void)
2522 {
2523  /* APPBARDATA (pack 1) */
2526  TEST_FIELD_SIZE (APPBARDATA, cbSize, 4)
2527  TEST_FIELD_ALIGN (APPBARDATA, cbSize, 1)
2528  TEST_FIELD_OFFSET(APPBARDATA, cbSize, 0)
2532  TEST_FIELD_SIZE (APPBARDATA, uCallbackMessage, 4)
2533  TEST_FIELD_ALIGN (APPBARDATA, uCallbackMessage, 1)
2534  TEST_FIELD_OFFSET(APPBARDATA, uCallbackMessage, 8)
2535  TEST_FIELD_SIZE (APPBARDATA, uEdge, 4)
2536  TEST_FIELD_ALIGN (APPBARDATA, uEdge, 1)
2537  TEST_FIELD_OFFSET(APPBARDATA, uEdge, 12)
2538  TEST_FIELD_SIZE (APPBARDATA, rc, 16)
2539  TEST_FIELD_ALIGN (APPBARDATA, rc, 1)
2540  TEST_FIELD_OFFSET(APPBARDATA, rc, 16)
2544 }
2545 
2546 static void test_pack_DRAGINFOA(void)
2547 {
2548  /* DRAGINFOA (pack 1) */
2549  TEST_TYPE_SIZE (DRAGINFOA, 24)
2550  TEST_TYPE_ALIGN (DRAGINFOA, 1)
2551  TEST_FIELD_SIZE (DRAGINFOA, uSize, 4)
2552  TEST_FIELD_ALIGN (DRAGINFOA, uSize, 1)
2553  TEST_FIELD_OFFSET(DRAGINFOA, uSize, 0)
2554  TEST_FIELD_SIZE (DRAGINFOA, pt, 8)
2555  TEST_FIELD_ALIGN (DRAGINFOA, pt, 1)
2556  TEST_FIELD_OFFSET(DRAGINFOA, pt, 4)
2557  TEST_FIELD_SIZE (DRAGINFOA, fNC, 4)
2558  TEST_FIELD_ALIGN (DRAGINFOA, fNC, 1)
2559  TEST_FIELD_OFFSET(DRAGINFOA, fNC, 12)
2560  TEST_FIELD_SIZE (DRAGINFOA, lpFileList, 4)
2561  TEST_FIELD_ALIGN (DRAGINFOA, lpFileList, 1)
2562  TEST_FIELD_OFFSET(DRAGINFOA, lpFileList, 16)
2563  TEST_FIELD_SIZE (DRAGINFOA, grfKeyState, 4)
2564  TEST_FIELD_ALIGN (DRAGINFOA, grfKeyState, 1)
2565  TEST_FIELD_OFFSET(DRAGINFOA, grfKeyState, 20)
2566 }
2567 
2568 static void test_pack_DRAGINFOW(void)
2569 {
2570  /* DRAGINFOW (pack 1) */
2571  TEST_TYPE_SIZE (DRAGINFOW, 24)
2572  TEST_TYPE_ALIGN (DRAGINFOW, 1)
2573  TEST_FIELD_SIZE (DRAGINFOW, uSize, 4)
2574  TEST_FIELD_ALIGN (DRAGINFOW, uSize, 1)
2575  TEST_FIELD_OFFSET(DRAGINFOW, uSize, 0)
2576  TEST_FIELD_SIZE (DRAGINFOW, pt, 8)
2577  TEST_FIELD_ALIGN (DRAGINFOW, pt, 1)
2578  TEST_FIELD_OFFSET(DRAGINFOW, pt, 4)
2579  TEST_FIELD_SIZE (DRAGINFOW, fNC, 4)
2580  TEST_FIELD_ALIGN (DRAGINFOW, fNC, 1)
2581  TEST_FIELD_OFFSET(DRAGINFOW, fNC, 12)
2582  TEST_FIELD_SIZE (DRAGINFOW, lpFileList, 4)
2583  TEST_FIELD_ALIGN (DRAGINFOW, lpFileList, 1)
2584  TEST_FIELD_OFFSET(DRAGINFOW, lpFileList, 16)
2585  TEST_FIELD_SIZE (DRAGINFOW, grfKeyState, 4)
2586  TEST_FIELD_ALIGN (DRAGINFOW, grfKeyState, 1)
2587  TEST_FIELD_OFFSET(DRAGINFOW, grfKeyState, 20)
2588 }
2589 
2590 static void test_pack_FILEOP_FLAGS(void)
2591 {
2592  /* FILEOP_FLAGS */
2596 }
2597 
2598 static void test_pack_LPDRAGINFOA(void)
2599 {
2600  /* LPDRAGINFOA */
2601  TEST_TYPE_SIZE (LPDRAGINFOA, 4)
2602  TEST_TYPE_ALIGN (LPDRAGINFOA, 4)
2603  TEST_TARGET_SIZE (LPDRAGINFOA, 24)
2604  TEST_TARGET_ALIGN(LPDRAGINFOA, 1)
2605 }
2606 
2607 static void test_pack_LPDRAGINFOW(void)
2608 {
2609  /* LPDRAGINFOW */
2610  TEST_TYPE_SIZE (LPDRAGINFOW, 4)
2611  TEST_TYPE_ALIGN (LPDRAGINFOW, 4)
2612  TEST_TARGET_SIZE (LPDRAGINFOW, 24)
2613  TEST_TARGET_ALIGN(LPDRAGINFOW, 1)
2614 }
2615 
2617 {
2618  /* LPSHELLEXECUTEINFOA */
2621 }
2622 
2624 {
2625  /* LPSHELLEXECUTEINFOW */
2628 }
2629 
2631 {
2632  /* LPSHFILEOPSTRUCTA */
2637 }
2638 
2640 {
2641  /* LPSHFILEOPSTRUCTW */
2646 }
2647 
2649 {
2650  /* LPSHNAMEMAPPINGA */
2655 }
2656 
2658 {
2659  /* LPSHNAMEMAPPINGW */
2664 }
2665 
2666 static void test_pack_NOTIFYICONDATAA(void)
2667 {
2668  /* NOTIFYICONDATAA (pack 1) */
2669  TEST_FIELD_SIZE (NOTIFYICONDATAA, cbSize, 4)
2670  TEST_FIELD_ALIGN (NOTIFYICONDATAA, cbSize, 1)
2681  TEST_FIELD_SIZE (NOTIFYICONDATAA, uCallbackMessage, 4)
2682  TEST_FIELD_ALIGN (NOTIFYICONDATAA, uCallbackMessage, 1)
2683  TEST_FIELD_OFFSET(NOTIFYICONDATAA, uCallbackMessage, 16)
2687  TEST_FIELD_SIZE (NOTIFYICONDATAA, szTip, 128)
2688  TEST_FIELD_ALIGN (NOTIFYICONDATAA, szTip, 1)
2690  TEST_FIELD_SIZE (NOTIFYICONDATAA, dwState, 4)
2691  TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwState, 1)
2692  TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwState, 152)
2693  TEST_FIELD_SIZE (NOTIFYICONDATAA, dwStateMask, 4)
2694  TEST_FIELD_ALIGN (NOTIFYICONDATAA, dwStateMask, 1)
2695  TEST_FIELD_OFFSET(NOTIFYICONDATAA, dwStateMask, 156)
2696  TEST_FIELD_SIZE (NOTIFYICONDATAA, szInfo, 256)
2697  TEST_FIELD_ALIGN (NOTIFYICONDATAA, szInfo, 1)
2698  TEST_FIELD_OFFSET(NOTIFYICONDATAA, szInfo, 160)
2699 }
2700 
2701 static void test_pack_NOTIFYICONDATAW(void)
2702 {
2703  /* NOTIFYICONDATAW (pack 1) */
2704  TEST_FIELD_SIZE (NOTIFYICONDATAW, cbSize, 4)
2705  TEST_FIELD_ALIGN (NOTIFYICONDATAW, cbSize, 1)
2716  TEST_FIELD_SIZE (NOTIFYICONDATAW, uCallbackMessage, 4)
2717  TEST_FIELD_ALIGN (NOTIFYICONDATAW, uCallbackMessage, 1)
2718  TEST_FIELD_OFFSET(NOTIFYICONDATAW, uCallbackMessage, 16)
2722  TEST_FIELD_SIZE (NOTIFYICONDATAW, szTip, 256)
2723  TEST_FIELD_ALIGN (NOTIFYICONDATAW, szTip, 1)
2725  TEST_FIELD_SIZE (NOTIFYICONDATAW, dwState, 4)
2726  TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwState, 1)
2727  TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwState, 280)
2728  TEST_FIELD_SIZE (NOTIFYICONDATAW, dwStateMask, 4)
2729  TEST_FIELD_ALIGN (NOTIFYICONDATAW, dwStateMask, 1)
2730  TEST_FIELD_OFFSET(NOTIFYICONDATAW, dwStateMask, 284)
2731  TEST_FIELD_SIZE (NOTIFYICONDATAW, szInfo, 512)
2732  TEST_FIELD_ALIGN (NOTIFYICONDATAW, szInfo, 1)
2733  TEST_FIELD_OFFSET(NOTIFYICONDATAW, szInfo, 288)
2734 }
2735 
2736 static void test_pack_PAPPBARDATA(void)
2737 {
2738  /* PAPPBARDATA */
2743 }
2744 
2746 {
2747  /* PNOTIFYICONDATAA */
2750 }
2751 
2753 {
2754  /* PNOTIFYICONDATAW */
2757 }
2758 
2759 static void test_pack_PRINTEROP_FLAGS(void)
2760 {
2761  /* PRINTEROP_FLAGS */
2765 }
2766 
2768 {
2769  /* SHELLEXECUTEINFOA (pack 1) */
2770  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, cbSize, 4)
2771  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, cbSize, 1)
2779  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpVerb, 4)
2780  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpVerb, 1)
2782  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpFile, 4)
2783  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpFile, 1)
2785  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpParameters, 4)
2786  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpParameters, 1)
2787  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpParameters, 20)
2794  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hInstApp, 4)
2795  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hInstApp, 1)
2796  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hInstApp, 32)
2797  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpIDList, 4)
2798  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpIDList, 1)
2799  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpIDList, 36)
2800  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, lpClass, 4)
2801  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, lpClass, 1)
2802  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, lpClass, 40)
2803  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, hkeyClass, 4)
2804  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, hkeyClass, 1)
2805  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, hkeyClass, 44)
2806  TEST_FIELD_SIZE (SHELLEXECUTEINFOA, dwHotKey, 4)
2807  TEST_FIELD_ALIGN (SHELLEXECUTEINFOA, dwHotKey, 1)
2808  TEST_FIELD_OFFSET(SHELLEXECUTEINFOA, dwHotKey, 48)
2809 }
2810 
2812 {
2813  /* SHELLEXECUTEINFOW (pack 1) */
2814  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, cbSize, 4)
2815  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, cbSize, 1)
2823  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpVerb, 4)
2824  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpVerb, 1)
2826  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpFile, 4)
2827  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpFile, 1)
2829  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpParameters, 4)
2830  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpParameters, 1)
2831  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpParameters, 20)
2838  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hInstApp, 4)
2839  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hInstApp, 1)
2840  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hInstApp, 32)
2841  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpIDList, 4)
2842  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpIDList, 1)
2843  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpIDList, 36)
2844  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, lpClass, 4)
2845  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, lpClass, 1)
2846  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, lpClass, 40)
2847  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, hkeyClass, 4)
2848  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, hkeyClass, 1)
2849  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, hkeyClass, 44)
2850  TEST_FIELD_SIZE (SHELLEXECUTEINFOW, dwHotKey, 4)
2851  TEST_FIELD_ALIGN (SHELLEXECUTEINFOW, dwHotKey, 1)
2852  TEST_FIELD_OFFSET(SHELLEXECUTEINFOW, dwHotKey, 48)
2853 }
2854 
2855 static void test_pack_SHFILEINFOA(void)
2856 {
2857  /* SHFILEINFOA (pack 1) */
2863  TEST_FIELD_SIZE (SHFILEINFOA, iIcon, 4)
2864  TEST_FIELD_ALIGN (SHFILEINFOA, iIcon, 1)
2865  TEST_FIELD_OFFSET(SHFILEINFOA, iIcon, 4)
2869  TEST_FIELD_SIZE (SHFILEINFOA, szDisplayName, 260)
2870  TEST_FIELD_ALIGN (SHFILEINFOA, szDisplayName, 1)
2871  TEST_FIELD_OFFSET(SHFILEINFOA, szDisplayName, 12)
2875 }
2876 
2877 static void test_pack_SHFILEINFOW(void)
2878 {
2879  /* SHFILEINFOW (pack 1) */
2885  TEST_FIELD_SIZE (SHFILEINFOW, iIcon, 4)
2886  TEST_FIELD_ALIGN (SHFILEINFOW, iIcon, 1)
2887  TEST_FIELD_OFFSET(SHFILEINFOW, iIcon, 4)
2891  TEST_FIELD_SIZE (SHFILEINFOW, szDisplayName, 520)
2892  TEST_FIELD_ALIGN (SHFILEINFOW, szDisplayName, 1)
2893  TEST_FIELD_OFFSET(SHFILEINFOW, szDisplayName, 12)
2897 }
2898 
2899 static void test_pack_SHFILEOPSTRUCTA(void)
2900 {
2901  /* SHFILEOPSTRUCTA (pack 1) */
2907  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, wFunc, 4)
2908  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, wFunc, 1)
2910  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, pFrom, 4)
2911  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, pFrom, 1)
2916  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fFlags, 2)
2917  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fFlags, 1)
2918  TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fFlags, 16)
2919  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, fAnyOperationsAborted, 4)
2920  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, fAnyOperationsAborted, 1)
2921  TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, fAnyOperationsAborted, 18)
2922  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, hNameMappings, 4)
2923  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, hNameMappings, 1)
2924  TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, hNameMappings, 22)
2925  TEST_FIELD_SIZE (SHFILEOPSTRUCTA, lpszProgressTitle, 4)
2926  TEST_FIELD_ALIGN (SHFILEOPSTRUCTA, lpszProgressTitle, 1)
2927  TEST_FIELD_OFFSET(SHFILEOPSTRUCTA, lpszProgressTitle, 26)
2928 }
2929 
2930 static void test_pack_SHFILEOPSTRUCTW(void)
2931 {
2932  /* SHFILEOPSTRUCTW (pack 1) */
2938  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, wFunc, 4)
2939  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, wFunc, 1)
2941  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, pFrom, 4)
2942  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, pFrom, 1)
2947  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fFlags, 2)
2948  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fFlags, 1)
2949  TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fFlags, 16)
2950  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, fAnyOperationsAborted, 4)
2951  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, fAnyOperationsAborted, 1)
2952  TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, fAnyOperationsAborted, 18)
2953  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, hNameMappings, 4)
2954  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, hNameMappings, 1)
2955  TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, hNameMappings, 22)
2956  TEST_FIELD_SIZE (SHFILEOPSTRUCTW, lpszProgressTitle, 4)
2957  TEST_FIELD_ALIGN (SHFILEOPSTRUCTW, lpszProgressTitle, 1)
2958  TEST_FIELD_OFFSET(SHFILEOPSTRUCTW, lpszProgressTitle, 26)
2959 }
2960 
2961 static void test_pack_SHNAMEMAPPINGA(void)
2962 {
2963  /* SHNAMEMAPPINGA (pack 1) */
2966  TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszOldPath, 4)
2967  TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszOldPath, 1)
2968  TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszOldPath, 0)
2969  TEST_FIELD_SIZE (SHNAMEMAPPINGA, pszNewPath, 4)
2970  TEST_FIELD_ALIGN (SHNAMEMAPPINGA, pszNewPath, 1)
2971  TEST_FIELD_OFFSET(SHNAMEMAPPINGA, pszNewPath, 4)
2972  TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchOldPath, 4)
2973  TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchOldPath, 1)
2974  TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchOldPath, 8)
2975  TEST_FIELD_SIZE (SHNAMEMAPPINGA, cchNewPath, 4)
2976  TEST_FIELD_ALIGN (SHNAMEMAPPINGA, cchNewPath, 1)
2977  TEST_FIELD_OFFSET(SHNAMEMAPPINGA, cchNewPath, 12)
2978 }
2979 
2980 static void test_pack_SHNAMEMAPPINGW(void)
2981 {
2982  /* SHNAMEMAPPINGW (pack 1) */
2985  TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszOldPath, 4)
2986  TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszOldPath, 1)
2987  TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszOldPath, 0)
2988  TEST_FIELD_SIZE (SHNAMEMAPPINGW, pszNewPath, 4)
2989  TEST_FIELD_ALIGN (SHNAMEMAPPINGW, pszNewPath, 1)
2990  TEST_FIELD_OFFSET(SHNAMEMAPPINGW, pszNewPath, 4)
2991  TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchOldPath, 4)
2992  TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchOldPath, 1)
2993  TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchOldPath, 8)
2994  TEST_FIELD_SIZE (SHNAMEMAPPINGW, cchNewPath, 4)
2995  TEST_FIELD_ALIGN (SHNAMEMAPPINGW, cchNewPath, 1)
2996  TEST_FIELD_OFFSET(SHNAMEMAPPINGW, cchNewPath, 12)
2997 }
2998 
2999 static void test_pack_ITEMIDLIST(void)
3000 {
3001  /* ITEMIDLIST (pack 1) */
3004  TEST_FIELD_SIZE (ITEMIDLIST, mkid, 3)
3005  TEST_FIELD_ALIGN (ITEMIDLIST, mkid, 1)
3006  TEST_FIELD_OFFSET(ITEMIDLIST, mkid, 0)
3007 }
3008 
3009 static void test_pack_LPCITEMIDLIST(void)
3010 {
3011  /* LPCITEMIDLIST */
3016 }
3017 
3018 static void test_pack_LPCSHITEMID(void)
3019 {
3020  /* LPCSHITEMID */
3025 }
3026 
3027 static void test_pack_LPITEMIDLIST(void)
3028 {
3029  /* LPITEMIDLIST */
3032 }
3033 
3034 static void test_pack_LPSHELLDETAILS(void)
3035 {
3036  /* LPSHELLDETAILS */
3039 }
3040 
3041 static void test_pack_LPSHITEMID(void)
3042 {
3043  /* LPSHITEMID */
3046 }
3047 
3048 static void test_pack_LPSTRRET(void)
3049 {
3050  /* LPSTRRET */
3053 }
3054 
3055 static void test_pack_SHELLDETAILS(void)
3056 {
3057  /* SHELLDETAILS (pack 1) */
3061  TEST_FIELD_SIZE (SHELLDETAILS, cxChar, 4)
3062  TEST_FIELD_ALIGN (SHELLDETAILS, cxChar, 1)
3063  TEST_FIELD_OFFSET(SHELLDETAILS, cxChar, 4)
3064 }
3065 
3066 static void test_pack_SHITEMID(void)
3067 {
3068  /* SHITEMID (pack 1) */
3074  TEST_FIELD_SIZE (SHITEMID, abID, 1)
3075  TEST_FIELD_ALIGN (SHITEMID, abID, 1)
3076  TEST_FIELD_OFFSET(SHITEMID, abID, 2)
3077 }
3078 
3079 static void test_pack_STRRET(void)
3080 {
3081  /* STRRET (pack 8) */
3082  TEST_FIELD_SIZE (STRRET, uType, 4)
3083  TEST_FIELD_ALIGN (STRRET, uType, 4)
3084  TEST_FIELD_OFFSET(STRRET, uType, 0)
3085 }
3086 
3088 {
3089  /* AUTO_SCROLL_DATA (pack 1) */
3092  TEST_FIELD_SIZE (AUTO_SCROLL_DATA, iNextSample, 4)
3093  TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, iNextSample, 1)
3094  TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, iNextSample, 0)
3095  TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwLastScroll, 4)
3096  TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwLastScroll, 1)
3097  TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwLastScroll, 4)
3098  TEST_FIELD_SIZE (AUTO_SCROLL_DATA, bFull, 4)
3104  TEST_FIELD_SIZE (AUTO_SCROLL_DATA, dwTimes, 12)
3105  TEST_FIELD_ALIGN (AUTO_SCROLL_DATA, dwTimes, 1)
3106  TEST_FIELD_OFFSET(AUTO_SCROLL_DATA, dwTimes, 36)
3107 }
3108 
3109 static void test_pack_BFFCALLBACK(void)
3110 {
3111  /* BFFCALLBACK */
3114 }
3115 
3116 static void test_pack_BROWSEINFOA(void)
3117 {
3118  /* BROWSEINFOA (pack 8) */
3121  TEST_FIELD_SIZE (BROWSEINFOA, hwndOwner, 4)
3122  TEST_FIELD_ALIGN (BROWSEINFOA, hwndOwner, 4)
3123  TEST_FIELD_OFFSET(BROWSEINFOA, hwndOwner, 0)
3124  TEST_FIELD_SIZE (BROWSEINFOA, pidlRoot, 4)
3125  TEST_FIELD_ALIGN (BROWSEINFOA, pidlRoot, 4)
3126  TEST_FIELD_OFFSET(BROWSEINFOA, pidlRoot, 4)
3127  TEST_FIELD_SIZE (BROWSEINFOA, pszDisplayName, 4)
3128  TEST_FIELD_ALIGN (BROWSEINFOA, pszDisplayName, 4)
3129  TEST_FIELD_OFFSET(BROWSEINFOA, pszDisplayName, 8)
3130  TEST_FIELD_SIZE (BROWSEINFOA, lpszTitle, 4)
3131  TEST_FIELD_ALIGN (BROWSEINFOA, lpszTitle, 4)
3132  TEST_FIELD_OFFSET(BROWSEINFOA, lpszTitle, 12)
3133  TEST_FIELD_SIZE (BROWSEINFOA, ulFlags, 4)
3134  TEST_FIELD_ALIGN (BROWSEINFOA, ulFlags, 4)
3135  TEST_FIELD_OFFSET(BROWSEINFOA, ulFlags, 16)
3136  TEST_FIELD_SIZE (BROWSEINFOA, lpfn, 4)
3137  TEST_FIELD_ALIGN (BROWSEINFOA, lpfn, 4)
3138  TEST_FIELD_OFFSET(BROWSEINFOA, lpfn, 20)
3142  TEST_FIELD_SIZE (BROWSEINFOA, iImage, 4)
3143  TEST_FIELD_ALIGN (BROWSEINFOA, iImage, 4)
3144  TEST_FIELD_OFFSET(BROWSEINFOA, iImage, 28)
3145 }
3146 
3147 static void test_pack_BROWSEINFOW(void)
3148 {
3149  /* BROWSEINFOW (pack 8) */
3152  TEST_FIELD_SIZE (BROWSEINFOW, hwndOwner, 4)
3153  TEST_FIELD_ALIGN (BROWSEINFOW, hwndOwner, 4)
3154  TEST_FIELD_OFFSET(BROWSEINFOW, hwndOwner, 0)
3155  TEST_FIELD_SIZE (BROWSEINFOW, pidlRoot, 4)
3156  TEST_FIELD_ALIGN (BROWSEINFOW, pidlRoot, 4)
3157  TEST_FIELD_OFFSET(BROWSEINFOW, pidlRoot, 4)
3158  TEST_FIELD_SIZE (BROWSEINFOW, pszDisplayName, 4)
3159  TEST_FIELD_ALIGN (BROWSEINFOW, pszDisplayName, 4)
3160  TEST_FIELD_OFFSET(BROWSEINFOW, pszDisplayName, 8)
3161  TEST_FIELD_SIZE (BROWSEINFOW, lpszTitle, 4)
3162  TEST_FIELD_ALIGN (BROWSEINFOW, lpszTitle, 4)
3163  TEST_FIELD_OFFSET(BROWSEINFOW, lpszTitle, 12)
3164  TEST_FIELD_SIZE (BROWSEINFOW, ulFlags, 4)
3165  TEST_FIELD_ALIGN (BROWSEINFOW, ulFlags, 4)
3166  TEST_FIELD_OFFSET(BROWSEINFOW, ulFlags, 16)
3167  TEST_FIELD_SIZE (BROWSEINFOW, lpfn, 4)
3168  TEST_FIELD_ALIGN (BROWSEINFOW, lpfn, 4)
3169  TEST_FIELD_OFFSET(BROWSEINFOW, lpfn, 20)
3173  TEST_FIELD_SIZE (BROWSEINFOW, iImage, 4)
3174  TEST_FIELD_ALIGN (BROWSEINFOW, iImage, 4)
3175  TEST_FIELD_OFFSET(BROWSEINFOW, iImage, 28)
3176 }
3177 
3178 static void test_pack_CABINETSTATE(void)
3179 {
3180  /* CABINETSTATE (pack 1) */
3183  TEST_FIELD_SIZE (CABINETSTATE, cLength, 2)
3184  TEST_FIELD_ALIGN (CABINETSTATE, cLength, 1)
3185  TEST_FIELD_OFFSET(CABINETSTATE, cLength, 0)
3186  TEST_FIELD_SIZE (CABINETSTATE, nVersion, 2)
3187  TEST_FIELD_ALIGN (CABINETSTATE, nVersion, 1)
3188  TEST_FIELD_OFFSET(CABINETSTATE, nVersion, 2)
3189  TEST_FIELD_SIZE (CABINETSTATE, fMenuEnumFilter, 4)
3190  TEST_FIELD_ALIGN (CABINETSTATE, fMenuEnumFilter, 1)
3191  TEST_FIELD_OFFSET(CABINETSTATE, fMenuEnumFilter, 8)
3192 }
3193 
3194 static void test_pack_CIDA(void)
3195 {
3196  /* CIDA (pack 1) */
3197  TEST_TYPE_SIZE (CIDA, 8)
3198  TEST_TYPE_ALIGN (CIDA, 1)
3199  TEST_FIELD_SIZE (CIDA, cidl, 4)
3200  TEST_FIELD_ALIGN (CIDA, cidl, 1)
3201  TEST_FIELD_OFFSET(CIDA, cidl, 0)
3202  TEST_FIELD_SIZE (CIDA, aoffset, 4)
3203  TEST_FIELD_ALIGN (CIDA, aoffset, 1)
3204  TEST_FIELD_OFFSET(CIDA, aoffset, 4)
3205 }
3206 
3207 static void test_pack_CSFV(void)
3208 {
3209  /* CSFV (pack 8) */
3210  TEST_FIELD_SIZE (CSFV, cbSize, 4)
3211  TEST_FIELD_ALIGN (CSFV, cbSize, 4)
3212  TEST_FIELD_OFFSET(CSFV, cbSize, 0)
3213  TEST_FIELD_SIZE (CSFV, pshf, 4)
3214  TEST_FIELD_ALIGN (CSFV, pshf, 4)
3215  TEST_FIELD_OFFSET(CSFV, pshf, 4)
3216  TEST_FIELD_SIZE (CSFV, psvOuter, 4)
3217  TEST_FIELD_ALIGN (CSFV, psvOuter, 4)
3218  TEST_FIELD_OFFSET(CSFV, psvOuter, 8)
3219  TEST_FIELD_SIZE (CSFV, pidl, 4)
3220  TEST_FIELD_ALIGN (CSFV, pidl, 4)
3221  TEST_FIELD_OFFSET(CSFV, pidl, 12)
3222  TEST_FIELD_SIZE (CSFV, lEvents, 4)
3223  TEST_FIELD_ALIGN (CSFV, lEvents, 4)
3224  TEST_FIELD_OFFSET(CSFV, lEvents, 16)
3225  TEST_FIELD_SIZE (CSFV, pfnCallback, 4)
3226  TEST_FIELD_ALIGN (CSFV, pfnCallback, 4)
3227  TEST_FIELD_OFFSET(CSFV, pfnCallback, 20)
3228 }
3229 
3230 static void test_pack_DROPFILES(void)
3231 {
3232  /* DROPFILES (pack 1) */
3235  TEST_FIELD_SIZE (DROPFILES, pFiles, 4)
3236  TEST_FIELD_ALIGN (DROPFILES, pFiles, 1)
3237  TEST_FIELD_OFFSET(DROPFILES, pFiles, 0)
3241  TEST_FIELD_SIZE (DROPFILES, fNC, 4)
3242  TEST_FIELD_ALIGN (DROPFILES, fNC, 1)
3243  TEST_FIELD_OFFSET(DROPFILES, fNC, 12)
3244  TEST_FIELD_SIZE (DROPFILES, fWide, 4)
3245  TEST_FIELD_ALIGN (DROPFILES, fWide, 1)
3246  TEST_FIELD_OFFSET(DROPFILES, fWide, 16)
3247 }
3248 
3249 static void test_pack_FILEDESCRIPTORA(void)
3250 {
3251  /* FILEDESCRIPTORA (pack 1) */
3260  TEST_FIELD_SIZE (FILEDESCRIPTORA, sizel, 8)
3261  TEST_FIELD_ALIGN (FILEDESCRIPTORA, sizel, 1)
3263  TEST_FIELD_SIZE (FILEDESCRIPTORA, pointl, 8)
3264  TEST_FIELD_ALIGN (FILEDESCRIPTORA, pointl, 1)
3265  TEST_FIELD_OFFSET(FILEDESCRIPTORA, pointl, 28)
3269  TEST_FIELD_SIZE (FILEDESCRIPTORA, ftCreationTime, 8)
3270  TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftCreationTime, 1)
3271  TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftCreationTime, 40)
3272  TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastAccessTime, 8)
3273  TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastAccessTime, 1)
3274  TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastAccessTime, 48)
3275  TEST_FIELD_SIZE (FILEDESCRIPTORA, ftLastWriteTime, 8)
3276  TEST_FIELD_ALIGN (FILEDESCRIPTORA, ftLastWriteTime, 1)
3277  TEST_FIELD_OFFSET(FILEDESCRIPTORA, ftLastWriteTime, 56)
3278  TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeHigh, 4)
3279  TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeHigh, 1)
3280  TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeHigh, 64)
3281  TEST_FIELD_SIZE (FILEDESCRIPTORA, nFileSizeLow, 4)
3282  TEST_FIELD_ALIGN (FILEDESCRIPTORA, nFileSizeLow, 1)
3283  TEST_FIELD_OFFSET(FILEDESCRIPTORA, nFileSizeLow, 68)
3284  TEST_FIELD_SIZE (FILEDESCRIPTORA, cFileName, 260)
3285  TEST_FIELD_ALIGN (FILEDESCRIPTORA, cFileName, 1)
3286  TEST_FIELD_OFFSET(FILEDESCRIPTORA, cFileName, 72)
3287 }
3288 
3289 static void test_pack_FILEDESCRIPTORW(void)
3290 {
3291  /* FILEDESCRIPTORW (pack 1) */
3300  TEST_FIELD_SIZE (FILEDESCRIPTORW, sizel, 8)
3301  TEST_FIELD_ALIGN (FILEDESCRIPTORW, sizel, 1)
3303  TEST_FIELD_SIZE (FILEDESCRIPTORW, pointl, 8)
3304  TEST_FIELD_ALIGN (FILEDESCRIPTORW, pointl, 1)
3305  TEST_FIELD_OFFSET(FILEDESCRIPTORW, pointl, 28)
3309  TEST_FIELD_SIZE (FILEDESCRIPTORW, ftCreationTime, 8)
3310  TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftCreationTime, 1)
3311  TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftCreationTime, 40)
3312  TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastAccessTime, 8)
3313  TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastAccessTime, 1)
3314  TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastAccessTime, 48)
3315  TEST_FIELD_SIZE (FILEDESCRIPTORW, ftLastWriteTime, 8)
3316  TEST_FIELD_ALIGN (FILEDESCRIPTORW, ftLastWriteTime, 1)
3317  TEST_FIELD_OFFSET(FILEDESCRIPTORW, ftLastWriteTime, 56)
3318  TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeHigh, 4)
3319  TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeHigh, 1)
3320  TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeHigh, 64)
3321  TEST_FIELD_SIZE (FILEDESCRIPTORW, nFileSizeLow, 4)
3322  TEST_FIELD_ALIGN (FILEDESCRIPTORW, nFileSizeLow, 1)
3323  TEST_FIELD_OFFSET(FILEDESCRIPTORW, nFileSizeLow, 68)
3324  TEST_FIELD_SIZE (FILEDESCRIPTORW, cFileName, 520)
3325  TEST_FIELD_ALIGN (FILEDESCRIPTORW, cFileName, 1)
3326  TEST_FIELD_OFFSET(FILEDESCRIPTORW, cFileName, 72)
3327 }
3328 
3330 {
3331  /* FILEGROUPDESCRIPTORA (pack 1) */
3340 }
3341 
3343 {
3344  /* FILEGROUPDESCRIPTORW (pack 1) */
3353 }
3354 
3355 static void test_pack_ITEMSPACING(void)
3356 {
3357  /* ITEMSPACING (pack 8) */
3360  TEST_FIELD_SIZE (ITEMSPACING, cxSmall, 4)
3361  TEST_FIELD_ALIGN (ITEMSPACING, cxSmall, 4)
3362  TEST_FIELD_OFFSET(ITEMSPACING, cxSmall, 0)
3363  TEST_FIELD_SIZE (ITEMSPACING, cySmall, 4)
3364  TEST_FIELD_ALIGN (ITEMSPACING, cySmall, 4)
3365  TEST_FIELD_OFFSET(ITEMSPACING, cySmall, 4)
3366  TEST_FIELD_SIZE (ITEMSPACING, cxLarge, 4)
3367  TEST_FIELD_ALIGN (ITEMSPACING, cxLarge, 4)
3368  TEST_FIELD_OFFSET(ITEMSPACING, cxLarge, 8)
3369  TEST_FIELD_SIZE (ITEMSPACING, cyLarge, 4)
3370  TEST_FIELD_ALIGN (ITEMSPACING, cyLarge, 4)
3371  TEST_FIELD_OFFSET(ITEMSPACING, cyLarge, 12)
3372 }
3373 
3374 static void test_pack_LPBROWSEINFOA(void)
3375 {
3376  /* LPBROWSEINFOA */
3381 }
3382 
3383 static void test_pack_LPBROWSEINFOW(void)
3384 {
3385  /* LPBROWSEINFOW */
3390 }
3391 
3392 static void test_pack_LPCABINETSTATE(void)
3393 {
3394  /* LPCABINETSTATE */
3399 }
3400 
3401 static void test_pack_LPCSFV(void)
3402 {
3403  /* LPCSFV */
3404  TEST_TYPE_SIZE (LPCSFV, 4)
3405  TEST_TYPE_ALIGN (LPCSFV, 4)
3406 }
3407 
3408 static void test_pack_LPDROPFILES(void)
3409 {
3410  /* LPDROPFILES */
3415 }
3416 
3418 {
3419  /* LPFILEDESCRIPTORA */
3424 }
3425 
3427 {
3428  /* LPFILEDESCRIPTORW */
3433 }
3434 
3436 {
3437  /* LPFILEGROUPDESCRIPTORA */
3442 }
3443 
3445 {
3446  /* LPFILEGROUPDESCRIPTORW */
3451 }
3452 
3454 {
3455  /* LPFNVIEWCALLBACK */
3458 }
3459 
3460 static void test_pack_LPIDA(void)
3461 {
3462  /* LPIDA */
3463  TEST_TYPE_SIZE (LPIDA, 4)
3464  TEST_TYPE_ALIGN (LPIDA, 4)
3465  TEST_TARGET_SIZE (LPIDA, 8)
3467 }
3468 
3469 static void test_pack_LPQCMINFO(void)
3470 {
3471  /* LPQCMINFO */
3476 }
3477 
3479 {
3480  /* LPSHChangeDWORDAsIDList */
3485 }
3486 
3488 {
3489  /* LPSHChangeProductKeyAsIDList */
3494 }
3495 
3497 {
3498  /* LPSHDESCRIPTIONID */
3503 }
3504 
3506 {
3507  /* LPSHELLFLAGSTATE */
3512 }
3513 
3514 static void test_pack_LPSHELLSTATE(void)
3515 {
3516  /* LPSHELLSTATE */
3521 }
3522 
3523 static void test_pack_LPTBINFO(void)
3524 {
3525  /* LPTBINFO */
3530 }
3531 
3532 static void test_pack_PBROWSEINFOA(void)
3533 {
3534  /* PBROWSEINFOA */
3539 }
3540 
3541 static void test_pack_PBROWSEINFOW(void)
3542 {
3543  /* PBROWSEINFOW */
3548 }
3549 
3550 static void test_pack_QCMINFO(void)
3551 {
3552  /* QCMINFO (pack 8) */
3553  TEST_TYPE_SIZE (QCMINFO, 20)
3558  TEST_FIELD_SIZE (QCMINFO, indexMenu, 4)
3559  TEST_FIELD_ALIGN (QCMINFO, indexMenu, 4)
3560  TEST_FIELD_OFFSET(QCMINFO, indexMenu, 4)
3561  TEST_FIELD_SIZE (QCMINFO, idCmdFirst, 4)
3562  TEST_FIELD_ALIGN (QCMINFO, idCmdFirst, 4)
3563  TEST_FIELD_OFFSET(QCMINFO, idCmdFirst, 8)
3564  TEST_FIELD_SIZE (QCMINFO, idCmdLast, 4)
3565  TEST_FIELD_ALIGN (QCMINFO, idCmdLast, 4)
3566  TEST_FIELD_OFFSET(QCMINFO, idCmdLast, 12)
3567  TEST_FIELD_SIZE (QCMINFO, pIdMap, 4)
3568  TEST_FIELD_ALIGN (QCMINFO, pIdMap, 4)
3569  TEST_FIELD_OFFSET(QCMINFO, pIdMap, 16)
3570 }
3571 
3572 static void test_pack_QCMINFO_IDMAP(void)
3573 {
3574  /* QCMINFO_IDMAP (pack 8) */
3577  TEST_FIELD_SIZE (QCMINFO_IDMAP, nMaxIds, 4)
3578  TEST_FIELD_ALIGN (QCMINFO_IDMAP, nMaxIds, 4)
3579  TEST_FIELD_OFFSET(QCMINFO_IDMAP, nMaxIds, 0)
3580  TEST_FIELD_SIZE (QCMINFO_IDMAP, pIdList, 8)
3581  TEST_FIELD_ALIGN (QCMINFO_IDMAP, pIdList, 4)
3582  TEST_FIELD_OFFSET(QCMINFO_IDMAP, pIdList, 4)
3583 }
3584 
3586 {
3587  /* QCMINFO_IDMAP_PLACEMENT (pack 8) */
3596 }
3597 
3598 static void test_pack_SFV_CREATE(void)
3599 {
3600  /* SFV_CREATE (pack 8) */
3603  TEST_FIELD_SIZE (SFV_CREATE, cbSize, 4)
3604  TEST_FIELD_ALIGN (SFV_CREATE, cbSize, 4)
3605  TEST_FIELD_OFFSET(SFV_CREATE, cbSize, 0)
3606  TEST_FIELD_SIZE (SFV_CREATE, pshf, 4)
3607  TEST_FIELD_ALIGN (SFV_CREATE, pshf, 4)
3608  TEST_FIELD_OFFSET(SFV_CREATE, pshf, 4)
3609  TEST_FIELD_SIZE (SFV_CREATE, psvOuter, 4)
3610  TEST_FIELD_ALIGN (SFV_CREATE, psvOuter, 4)
3611  TEST_FIELD_OFFSET(SFV_CREATE, psvOuter, 8)
3612  TEST_FIELD_SIZE (SFV_CREATE, psfvcb, 4)
3613  TEST_FIELD_ALIGN (SFV_CREATE, psfvcb, 4)
3614  TEST_FIELD_OFFSET(SFV_CREATE, psfvcb, 12)
3615 }
3616 
3618 {
3619  /* SHChangeDWORDAsIDList (pack 1) */
3634 }
3635 
3637 {
3638  /* SHChangeNotifyEntry (pack 1) */
3644  TEST_FIELD_SIZE (SHChangeNotifyEntry, fRecursive, 4)
3645  TEST_FIELD_ALIGN (SHChangeNotifyEntry, fRecursive, 1)
3646  TEST_FIELD_OFFSET(SHChangeNotifyEntry, fRecursive, 4)
3647 }
3648 
3650 {
3651  /* SHChangeProductKeyAsIDList (pack 1) */
3657  TEST_FIELD_SIZE (SHChangeProductKeyAsIDList, wszProductKey, 78)
3658  TEST_FIELD_ALIGN (SHChangeProductKeyAsIDList, wszProductKey, 1)
3663 }
3664 
3665 static void test_pack_SHDESCRIPTIONID(void)
3666 {
3667  /* SHDESCRIPTIONID (pack 8) */
3670  TEST_FIELD_SIZE (SHDESCRIPTIONID, dwDescriptionId, 4)
3671  TEST_FIELD_ALIGN (SHDESCRIPTIONID, dwDescriptionId, 4)
3672  TEST_FIELD_OFFSET(SHDESCRIPTIONID, dwDescriptionId, 0)
3676 }
3677 
3678 static void test_pack_SHELLFLAGSTATE(void)
3679 {
3680  /* SHELLFLAGSTATE (pack 1) */
3683 }
3684 
3685 static void test_pack_SHELLSTATE(void)
3686 {
3687  /* SHELLSTATE (pack 1) */
3690  TEST_FIELD_SIZE (SHELLSTATE, dwWin95Unused, 4)
3691  TEST_FIELD_ALIGN (SHELLSTATE, dwWin95Unused, 1)
3692  TEST_FIELD_OFFSET(SHELLSTATE, dwWin95Unused, 4)
3693  TEST_FIELD_SIZE (SHELLSTATE, uWin95Unused, 4)
3694  TEST_FIELD_ALIGN (SHELLSTATE, uWin95Unused, 1)
3695  TEST_FIELD_OFFSET(SHELLSTATE, uWin95Unused, 8)
3696  TEST_FIELD_SIZE (SHELLSTATE, lParamSort, 4)
3697  TEST_FIELD_ALIGN (SHELLSTATE, lParamSort, 1)
3698  TEST_FIELD_OFFSET(SHELLSTATE, lParamSort, 12)
3699  TEST_FIELD_SIZE (SHELLSTATE, iSortDirection, 4)
3700  TEST_FIELD_ALIGN (SHELLSTATE, iSortDirection, 1)
3701  TEST_FIELD_OFFSET(SHELLSTATE, iSortDirection, 16)
3705  TEST_FIELD_SIZE (SHELLSTATE, uNotUsed, 4)
3706  TEST_FIELD_ALIGN (SHELLSTATE, uNotUsed, 1)
3707  TEST_FIELD_OFFSET(SHELLSTATE, uNotUsed, 24)
3708 }
3709 
3710 static void test_pack_TBINFO(void)
3711 {
3712  /* TBINFO (pack 8) */
3713  TEST_TYPE_SIZE (TBINFO, 8)
3714  TEST_TYPE_ALIGN (TBINFO, 4)
3715  TEST_FIELD_SIZE (TBINFO, cbuttons, 4)
3716  TEST_FIELD_ALIGN (TBINFO, cbuttons, 4)
3717  TEST_FIELD_OFFSET(TBINFO, cbuttons, 0)
3721 }
3722 
3723 #endif /* _WIN64 */
3724 
3725 static void test_pack(void)
3726 {
3730  test_pack_BLOB();
3733  test_pack_BSTR();
3738  test_pack_CIDA();
3741  test_pack_CLSID();
3744  test_pack_CSFV();
3745  test_pack_DATE();
3746  test_pack_DOUBLE();
3758  test_pack_FMTID();
3761  test_pack_IID();
3764  test_pack_LPBLOB();
3767  test_pack_LPBSTR();
3772  test_pack_LPCSFV();
3774  test_pack_LPCY();
3784  test_pack_LPIDA();
3812  test_pack_PROPID();
3821  test_pack_SCODE();
3839  test_pack_STRRET();
3840  test_pack_TBINFO();
3864 }
3865 
3866 START_TEST(generated)
3867 {
3868  test_pack();
3869 }
static void test_pack_PAPPBARDATA(void)
Definition: generated.c:2736
static void test_pack_CLIPDATA(void)
Definition: generated.c:1968
WCHAR OLECHAR
Definition: compat.h:1941
#define TEST_FIELD_OFFSET(type, field, offset)
Definition: generated.c:79
static void test_pack_HYPER_SIZEDARR(void)
Definition: generated.c:2114
static void test_pack_userHBITMAP(void)
Definition: generated.c:2394
static void test_pack_SHNAMEMAPPINGW(void)
Definition: generated.c:2980
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
static void test_pack_LPOLESTR(void)
Definition: generated.c:2173
static void test_pack_LPSHELLDETAILS(void)
Definition: generated.c:3034
static void test_pack_VARIANT_BOOL(void)
Definition: generated.c:2307
static void test_pack_LPIDA(void)
Definition: generated.c:3460
static void test_pack_LPCSFV(void)
Definition: generated.c:3401
static void test_pack_APPBARDATA(void)
Definition: generated.c:2521
static void test_pack_LPSTRRET(void)
Definition: generated.c:3048
static void test_pack_QCMINFO_IDMAP(void)
Definition: generated.c:3572
static HMENU hmenu
Definition: win.c:66
static void test_pack_BROWSEINFOW(void)
Definition: generated.c:3147
static void test_pack_LPSHFILEOPSTRUCTW(void)
Definition: generated.c:2639
static void test_pack_SHChangeDWORDAsIDList(void)
Definition: generated.c:3617
static void test_pack_TBINFO(void)
Definition: generated.c:3710
#define pt(x, y)
Definition: drawing.c:79
static void test_pack_SHFILEOPSTRUCTW(void)
Definition: generated.c:2930
static void test_pack_LPFILEDESCRIPTORA(void)
Definition: generated.c:3417
static void test_pack_SFV_CREATE(void)
Definition: generated.c:3598
static void test_pack_LPCITEMIDLIST(void)
Definition: generated.c:3009
static void test_pack_LPFILEDESCRIPTORW(void)
Definition: generated.c:3426
Definition: shlobj.h:1192
static void test_pack_ITEMIDLIST(void)
Definition: generated.c:2999
static void test_pack_SHITEMID(void)
Definition: generated.c:3066
const ITEMIDLIST UNALIGNED * LPCITEMIDLIST
Definition: shtypes.idl:42
static void test_pack_LPFILEGROUPDESCRIPTORA(void)
Definition: generated.c:3435
#define TEST_TARGET_ALIGN(type, align)
Definition: generated.c:75
HWND hWnd
Definition: settings.c:17
static void test_pack_OLECHAR(void)
Definition: generated.c:2182
static void test_pack_remoteMETAFILEPICT(void)
Definition: generated.c:2336
double DATE
Definition: compat.h:1902
static void test_pack_wireHGLOBAL(void)
Definition: generated.c:2472
static void test_pack_DATE(void)
Definition: generated.c:2048
OLECHAR * BSTR
Definition: compat.h:1942
static void test_pack_CABINETSTATE(void)
Definition: generated.c:3178
UINT uFlags
Definition: api.c:59
Definition: nspapi.h:57
static const CLSID IPropertyStorage UINT *static const PROPSPEC PROPVARIANT *static UINT const PROPSPEC PROPVARIANT PROPID
Definition: shellole.c:77
static LPOLESTR
Definition: stg_prop.c:27
#define TEST_TYPE_SIZE(type, size)
Definition: generated.c:63
static void test_pack_SHFILEOPSTRUCTA(void)
Definition: generated.c:2899
static void test_pack_IID(void)
Definition: generated.c:2514
static void test_pack_ITEMSPACING(void)
Definition: generated.c:3355
short VARIANT_BOOL
Definition: compat.h:1939
static void test_pack_SHDESCRIPTIONID(void)
Definition: generated.c:3665
DWORD dwAttributes
Definition: vdmdbg.h:34
static void test_pack_wireHPALETTE(void)
Definition: generated.c:2493
#define TEST_FIELD_SIZE(type, field, size)
Definition: generated.c:82
static void test_pack_wireCLIPFORMAT(void)
Definition: generated.c:2451
static void test_pack_RemHGLOBAL(void)
Definition: generated.c:2222
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
static void test_pack_LPCY(void)
Definition: generated.c:2159
static void test_pack_BSTRBLOB(void)
Definition: generated.c:1929
static void test_pack_LPSHChangeProductKeyAsIDList(void)
Definition: generated.c:3487
static void test_pack_userHPALETTE(void)
Definition: generated.c:2434
static void test_pack_PBROWSEINFOA(void)
Definition: generated.c:3532
static void test_pack_STRRET(void)
Definition: generated.c:3079
static void test_pack_BSTR(void)
Definition: generated.c:1920
static void test_pack_userHMETAFILEPICT(void)
Definition: generated.c:2426
static void test_pack_SHELLFLAGSTATE(void)
Definition: generated.c:3678
static void test_pack_LPTBINFO(void)
Definition: generated.c:3523
static void test_pack_SHNAMEMAPPINGA(void)
Definition: generated.c:2961
static void test_pack_NOTIFYICONDATAA(void)
Definition: generated.c:2666
static void test_pack_BLOB(void)
Definition: generated.c:1907
LONG SCODE
Definition: compat.h:1901
static void test_pack_LPDECIMAL(void)
Definition: generated.c:2166
static void test_pack_LPBROWSEINFOW(void)
Definition: generated.c:3383
static void test_pack_LPQCMINFO(void)
Definition: generated.c:3469
static void test_pack_FLAGGED_BYTE_BLOB(void)
Definition: generated.c:2075
static const WCHAR version[]
Definition: asmname.c:66
PVOID pBuffer
static void test_pack_LPDRAGINFOA(void)
Definition: generated.c:2598
static void test_pack_LPSHELLFLAGSTATE(void)
Definition: generated.c:3505
static void test_pack_LPSHELLSTATE(void)
Definition: generated.c:3514
_Reserved_ DWORD _In_ DWORD _Out_ DWORD _Out_writes_bytes_to_opt_ pcbTypeName LPSTR szTypeName
Definition: wincrypt.h:4283
static void test_pack_QCMINFO_IDMAP_PLACEMENT(void)
Definition: generated.c:3585
static void test_pack_HMETAFILEPICT(void)
Definition: generated.c:2107
static void test_pack_BYTE_BLOB(void)
Definition: generated.c:1942
static void test_pack_SHChangeNotifyEntry(void)
Definition: generated.c:3636
static void test_pack_VARTYPE(void)
Definition: generated.c:2315
static void test_pack_LPSHELLEXECUTEINFOA(void)
Definition: generated.c:2616
static void test_pack_userBITMAP(void)
Definition: generated.c:2355
static void test_pack_DRAGINFOA(void)
Definition: generated.c:2546
static void test_pack_FMTID(void)
Definition: generated.c:2507
_In_opt_ LPCSTR lpDirectory
Definition: shellapi.h:482
static void test_pack_LPBLOB(void)
Definition: generated.c:2127
static void test_pack_UP_FLAGGED_BYTE_BLOB(void)
Definition: generated.c:2289
static void test_pack_wireBSTR(void)
Definition: generated.c:2442
static void test_pack_FLAGGED_WORD_BLOB(void)
Definition: generated.c:2091
static void test_pack_PBROWSEINFOW(void)
Definition: generated.c:3541
static void test_pack_FILEDESCRIPTORW(void)
Definition: generated.c:3289
static void test_pack_RemHBITMAP(void)
Definition: generated.c:2196
static void test_pack_LPSHFILEOPSTRUCTA(void)
Definition: generated.c:2630
static void test_pack_LPSHChangeDWORDAsIDList(void)
Definition: generated.c:3478
static void test_pack_CIDA(void)
Definition: generated.c:3194
static void test_pack_SHFILEINFOW(void)
Definition: generated.c:2877
static void test_pack_userHENHMETAFILE(void)
Definition: generated.c:2402
static void test_pack_LPCSHITEMID(void)
Definition: generated.c:3018
static void test_pack_LPCABINETSTATE(void)
Definition: generated.c:3392
static void test_pack_PRINTEROP_FLAGS(void)
Definition: generated.c:2759
static void test_pack_DROPFILES(void)
Definition: generated.c:3230
#define TEST_TYPE_ALIGN(type, align)
Definition: generated.c:68
static void test_pack_DRAGINFOW(void)
Definition: generated.c:2568
static void test_pack_LPDRAGINFOW(void)
Definition: generated.c:2607
static void test_pack_UP_BYTE_BLOB(void)
Definition: generated.c:2280
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
static void test_pack_SHELLEXECUTEINFOW(void)
Definition: generated.c:2811
static void test_pack_LPSHNAMEMAPPINGW(void)
Definition: generated.c:2657
INT(CALLBACK * BFFCALLBACK)(HWND, UINT, LPARAM, LPARAM)
Definition: shlobj.h:1102
REFCLSID clsid
Definition: msctf.c:82
static void test_pack_LPSHNAMEMAPPINGA(void)
Definition: generated.c:2648
static void test_pack_FILEDESCRIPTORA(void)
Definition: generated.c:3249
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
static void test_pack_FILEOP_FLAGS(void)
Definition: generated.c:2590
#define TEST_TYPE_UNSIGNED(type)
Definition: generated.c:84
static void test_pack_userCLIPFORMAT(void)
Definition: generated.c:2386
HRESULT(CALLBACK * LPFNVIEWCALLBACK)(_In_ IShellView *dwUser, _In_ IShellFolder *pshf, _In_ HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
Definition: shlobj.h:1182
static void test_pack_LPBSTRBLOB(void)
Definition: generated.c:2143
#define TEST_TYPE_SIGNED(type)
Definition: generated.c:83
static void test_pack_userHMETAFILE(void)
Definition: generated.c:2418
static void test_pack_SCODE(void)
Definition: generated.c:2273
static void test_pack_SHELLSTATE(void)
Definition: generated.c:3685
static void test_pack_CLIPFORMAT(void)
Definition: generated.c:1984
#define TEST_FIELD_ALIGN(type, field, align)
Definition: generated.c:76
static void test_pack_wireHMETAFILEPICT(void)
Definition: generated.c:2486
static void test_pack(void)
Definition: generated.c:3725
static void test_pack_AUTO_SCROLL_DATA(void)
Definition: generated.c:3087
static void test_pack_BROWSEINFOA(void)
Definition: generated.c:3116
static void test_pack_UP_FLAGGED_WORD_BLOB(void)
Definition: generated.c:2298
static void test_pack_FILEGROUPDESCRIPTORA(void)
Definition: generated.c:3329
static void test_pack_wireHENHMETAFILE(void)
Definition: generated.c:2465
static void test_pack_CLSID(void)
Definition: generated.c:2500
START_TEST(generated)
Definition: generated.c:13559
static void test_pack_PROPID(void)
Definition: generated.c:2189
HICON hIcon
Definition: msconfig.c:44
static void test_pack_BYTE_SIZEDARR(void)
Definition: generated.c:1955
static void test_pack_LPSHDESCRIPTIONID(void)
Definition: generated.c:3496
static void test_pack_LPITEMIDLIST(void)
Definition: generated.c:3027
static void test_pack_SHFILEINFOA(void)
Definition: generated.c:2855
static void test_pack_LPBROWSEINFOA(void)
Definition: generated.c:3374
#define TEST_TARGET_SIZE(type, size)
Definition: generated.c:81
unsigned short VARTYPE
Definition: compat.h:1903
static void test_pack_LPSHITEMID(void)
Definition: generated.c:3041
static void test_pack_FILEGROUPDESCRIPTORW(void)
Definition: generated.c:3342
static void test_pack_COAUTHINFO(void)
Definition: generated.c:2020
static void test_pack_LPCOLESTR(void)
Definition: generated.c:2150
static void test_pack_COAUTHIDENTITY(void)
Definition: generated.c:1992
static void test_pack_userHGLOBAL(void)
Definition: generated.c:2410
static void test_pack_LPSHELLEXECUTEINFOW(void)
Definition: generated.c:2623
static HMODULE MODULEINFO DWORD cb
Definition: module.c:32
DWORD dwFileAttributes
static void test_pack_LPFILEGROUPDESCRIPTORW(void)
Definition: generated.c:3444
WORD PRINTEROP_FLAGS
Definition: shellapi.h:212
double DOUBLE
Definition: typedefs.h:68
WORD FILEOP_FLAGS
Definition: shellapi.h:211
static void test_pack_DWORD_SIZEDARR(void)
Definition: generated.c:2062
static void test_pack_DOUBLE(void)
Definition: generated.c:2055
static void test_pack_wireHBITMAP(void)
Definition: generated.c:2458
static void test_pack_SHELLDETAILS(void)
Definition: generated.c:3055
static void test_pack_PNOTIFYICONDATAW(void)
Definition: generated.c:2752
TW_UINT32 TW_UINT16 TW_UINT16 TW_MEMREF pData
Definition: twain.h:1827
static void test_pack_NOTIFYICONDATAW(void)
Definition: generated.c:2701
static void test_pack_LPFNVIEWCALLBACK(void)
Definition: generated.c:3453
static void test_pack_RemHENHMETAFILE(void)
Definition: generated.c:2209
ITEMIDLIST UNALIGNED * LPITEMIDLIST
Definition: shtypes.idl:41
static void test_pack_QCMINFO(void)
Definition: generated.c:3550
static void test_pack_CSFV(void)
Definition: generated.c:3207
static void test_pack_WORD_SIZEDARR(void)
Definition: generated.c:2323
static void test_pack_RemHMETAFILEPICT(void)
Definition: generated.c:2238
LPARAM lParam
Definition: combotst.c:139
Definition: dsound.c:943
static void test_pack_SHELLEXECUTEINFOA(void)
Definition: generated.c:2767
static void test_pack_RemHPALETTE(void)
Definition: generated.c:2260
static void test_pack_BFFCALLBACK(void)
Definition: generated.c:3109
static void test_pack_LPBSTR(void)
Definition: generated.c:2134
static void test_pack_PNOTIFYICONDATAA(void)
Definition: generated.c:2745
Definition: shlobj.h:490
static void test_pack_SHChangeProductKeyAsIDList(void)
Definition: generated.c:3649
static void test_pack_LPDROPFILES(void)
Definition: generated.c:3408
static void test_pack_wireHMETAFILE(void)
Definition: generated.c:2479