urlmon/tests: Added tests for IUriBuilder_HasBeenModified.
[wine] / dlls / urlmon / tests / generated.c
1 /* File generated automatically from tools/winapi/tests.dat; do not edit! */
2 /* This file can be copied, modified and distributed without restriction. */
3
4 /*
5  * Unit tests for data structure packing
6  */
7
8 #define WINVER 0x0501
9 #define _WIN32_IE 0x0501
10 #define _WIN32_WINNT 0x0501
11
12 #define WINE_NOWINSOCK
13
14 #include <stdarg.h>
15 #include "windef.h"
16 #include "winbase.h"
17 #include "urlmon.h"
18
19 #include "wine/test.h"
20
21 /***********************************************************************
22  * Compatibility macros
23  */
24
25 #define DWORD_PTR UINT_PTR
26 #define LONG_PTR INT_PTR
27 #define ULONG_PTR UINT_PTR
28
29 /***********************************************************************
30  * Windows API extension
31  */
32
33 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
34 # define _TYPE_ALIGNMENT(type) __alignof(type)
35 #elif defined(__GNUC__)
36 # define _TYPE_ALIGNMENT(type) __alignof__(type)
37 #else
38 /*
39  * FIXME: May not be possible without a compiler extension
40  *        (if type is not just a name that is, otherwise the normal
41  *         TYPE_ALIGNMENT can be used)
42  */
43 #endif
44
45 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
46 #pragma warning(disable:4116)
47 #endif
48
49 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
50 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
51 #endif
52
53 /***********************************************************************
54  * Test helper macros
55  */
56
57 #define TEST_TYPE_SIZE(type, size)             C_ASSERT(sizeof(type) == size);
58
59 #ifdef TYPE_ALIGNMENT
60 # define TEST_TYPE_ALIGN(type, align)          C_ASSERT(TYPE_ALIGNMENT(type) == align);
61 #else
62 # define TEST_TYPE_ALIGN(type, align)
63 #endif
64
65 #ifdef _TYPE_ALIGNMENT
66 # define TEST_TARGET_ALIGN(type, align)        C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
67 # define TEST_FIELD_ALIGN(type, field, align)  C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
68 #else
69 # define TEST_TARGET_ALIGN(type, align)
70 # define TEST_FIELD_ALIGN(type, field, align)
71 #endif
72
73 #define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
74
75 #define TEST_TARGET_SIZE(type, size)            TEST_TYPE_SIZE(*(type)0, size)
76 #define TEST_FIELD_SIZE(type, field, size)      TEST_TYPE_SIZE((((type*)0)->field), size)
77 #define TEST_TYPE_SIGNED(type)                  C_ASSERT((type) -1 < 0);
78 #define TEST_TYPE_UNSIGNED(type)                C_ASSERT((type) -1 > 0);
79
80
81 #ifdef _WIN64
82
83 static void test_pack_BINDINFO(void)
84 {
85     /* BINDINFO */
86     TEST_FIELD_SIZE  (BINDINFO, cbSize, 4)
87     TEST_FIELD_ALIGN (BINDINFO, cbSize, 4)
88     TEST_FIELD_OFFSET(BINDINFO, cbSize, 0)
89     TEST_FIELD_SIZE  (BINDINFO, szExtraInfo, 8)
90     TEST_FIELD_ALIGN (BINDINFO, szExtraInfo, 8)
91     TEST_FIELD_OFFSET(BINDINFO, szExtraInfo, 8)
92 }
93
94 static void test_pack_IBindHost(void)
95 {
96     /* IBindHost */
97 }
98
99 static void test_pack_IBindHostVtbl(void)
100 {
101     /* IBindHostVtbl */
102 }
103
104 static void test_pack_IBindStatusCallback(void)
105 {
106     /* IBindStatusCallback */
107 }
108
109 static void test_pack_IBindStatusCallbackVtbl(void)
110 {
111     /* IBindStatusCallbackVtbl */
112 }
113
114 static void test_pack_IBinding(void)
115 {
116     /* IBinding */
117 }
118
119 static void test_pack_IBindingVtbl(void)
120 {
121     /* IBindingVtbl */
122 }
123
124 static void test_pack_IInternetProtocolInfo(void)
125 {
126     /* IInternetProtocolInfo */
127 }
128
129 static void test_pack_IInternetProtocolInfoVtbl(void)
130 {
131     /* IInternetProtocolInfoVtbl */
132 }
133
134 static void test_pack_IInternetSession(void)
135 {
136     /* IInternetSession */
137 }
138
139 static void test_pack_IInternetSessionVtbl(void)
140 {
141     /* IInternetSessionVtbl */
142 }
143
144 static void test_pack_IPersistMoniker(void)
145 {
146     /* IPersistMoniker */
147 }
148
149 static void test_pack_IPersistMonikerVtbl(void)
150 {
151     /* IPersistMonikerVtbl */
152 }
153
154 static void test_pack_IWinInetHttpInfo(void)
155 {
156     /* IWinInetHttpInfo */
157 }
158
159 static void test_pack_IWinInetHttpInfoVtbl(void)
160 {
161     /* IWinInetHttpInfoVtbl */
162 }
163
164 static void test_pack_IWinInetInfo(void)
165 {
166     /* IWinInetInfo */
167 }
168
169 static void test_pack_IWinInetInfoVtbl(void)
170 {
171     /* IWinInetInfoVtbl */
172 }
173
174 static void test_pack_LPBINDHOST(void)
175 {
176     /* LPBINDHOST */
177     TEST_TYPE_SIZE   (LPBINDHOST, 8)
178     TEST_TYPE_ALIGN  (LPBINDHOST, 8)
179 }
180
181 static void test_pack_LPBINDING(void)
182 {
183     /* LPBINDING */
184     TEST_TYPE_SIZE   (LPBINDING, 8)
185     TEST_TYPE_ALIGN  (LPBINDING, 8)
186 }
187
188 static void test_pack_LPBINDSTATUSCALLBACK(void)
189 {
190     /* LPBINDSTATUSCALLBACK */
191     TEST_TYPE_SIZE   (LPBINDSTATUSCALLBACK, 8)
192     TEST_TYPE_ALIGN  (LPBINDSTATUSCALLBACK, 8)
193 }
194
195 static void test_pack_LPIINTERNETPROTOCOLINFO(void)
196 {
197     /* LPIINTERNETPROTOCOLINFO */
198     TEST_TYPE_SIZE   (LPIINTERNETPROTOCOLINFO, 8)
199     TEST_TYPE_ALIGN  (LPIINTERNETPROTOCOLINFO, 8)
200 }
201
202 static void test_pack_LPIINTERNETSESSION(void)
203 {
204     /* LPIINTERNETSESSION */
205     TEST_TYPE_SIZE   (LPIINTERNETSESSION, 8)
206     TEST_TYPE_ALIGN  (LPIINTERNETSESSION, 8)
207 }
208
209 static void test_pack_LPPERSISTMONIKER(void)
210 {
211     /* LPPERSISTMONIKER */
212     TEST_TYPE_SIZE   (LPPERSISTMONIKER, 8)
213     TEST_TYPE_ALIGN  (LPPERSISTMONIKER, 8)
214 }
215
216 static void test_pack_LPREMFORMATETC(void)
217 {
218     /* LPREMFORMATETC */
219     TEST_TYPE_SIZE   (LPREMFORMATETC, 8)
220     TEST_TYPE_ALIGN  (LPREMFORMATETC, 8)
221 }
222
223 static void test_pack_LPREMSECURITY_ATTRIBUTES(void)
224 {
225     /* LPREMSECURITY_ATTRIBUTES */
226     TEST_TYPE_SIZE   (LPREMSECURITY_ATTRIBUTES, 8)
227     TEST_TYPE_ALIGN  (LPREMSECURITY_ATTRIBUTES, 8)
228 }
229
230 static void test_pack_LPWININETHTTPINFO(void)
231 {
232     /* LPWININETHTTPINFO */
233     TEST_TYPE_SIZE   (LPWININETHTTPINFO, 8)
234     TEST_TYPE_ALIGN  (LPWININETHTTPINFO, 8)
235 }
236
237 static void test_pack_LPWININETINFO(void)
238 {
239     /* LPWININETINFO */
240     TEST_TYPE_SIZE   (LPWININETINFO, 8)
241     TEST_TYPE_ALIGN  (LPWININETINFO, 8)
242 }
243
244 static void test_pack_PREMSECURITY_ATTRIBUTES(void)
245 {
246     /* PREMSECURITY_ATTRIBUTES */
247     TEST_TYPE_SIZE   (PREMSECURITY_ATTRIBUTES, 8)
248     TEST_TYPE_ALIGN  (PREMSECURITY_ATTRIBUTES, 8)
249 }
250
251 static void test_pack_REMSECURITY_ATTRIBUTES(void)
252 {
253     /* REMSECURITY_ATTRIBUTES */
254     TEST_TYPE_SIZE   (REMSECURITY_ATTRIBUTES, 12)
255     TEST_TYPE_ALIGN  (REMSECURITY_ATTRIBUTES, 4)
256     TEST_FIELD_SIZE  (REMSECURITY_ATTRIBUTES, nLength, 4)
257     TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, nLength, 4)
258     TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, nLength, 0)
259     TEST_FIELD_SIZE  (REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
260     TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
261     TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
262     TEST_FIELD_SIZE  (REMSECURITY_ATTRIBUTES, bInheritHandle, 4)
263     TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, bInheritHandle, 4)
264     TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, bInheritHandle, 8)
265 }
266
267 static void test_pack_RemBINDINFO(void)
268 {
269     /* RemBINDINFO */
270     TEST_TYPE_SIZE   (RemBINDINFO, 96)
271     TEST_TYPE_ALIGN  (RemBINDINFO, 8)
272     TEST_FIELD_SIZE  (RemBINDINFO, cbSize, 4)
273     TEST_FIELD_ALIGN (RemBINDINFO, cbSize, 4)
274     TEST_FIELD_OFFSET(RemBINDINFO, cbSize, 0)
275     TEST_FIELD_SIZE  (RemBINDINFO, szExtraInfo, 8)
276     TEST_FIELD_ALIGN (RemBINDINFO, szExtraInfo, 8)
277     TEST_FIELD_OFFSET(RemBINDINFO, szExtraInfo, 8)
278     TEST_FIELD_SIZE  (RemBINDINFO, grfBindInfoF, 4)
279     TEST_FIELD_ALIGN (RemBINDINFO, grfBindInfoF, 4)
280     TEST_FIELD_OFFSET(RemBINDINFO, grfBindInfoF, 16)
281     TEST_FIELD_SIZE  (RemBINDINFO, dwBindVerb, 4)
282     TEST_FIELD_ALIGN (RemBINDINFO, dwBindVerb, 4)
283     TEST_FIELD_OFFSET(RemBINDINFO, dwBindVerb, 20)
284     TEST_FIELD_SIZE  (RemBINDINFO, szCustomVerb, 8)
285     TEST_FIELD_ALIGN (RemBINDINFO, szCustomVerb, 8)
286     TEST_FIELD_OFFSET(RemBINDINFO, szCustomVerb, 24)
287     TEST_FIELD_SIZE  (RemBINDINFO, cbstgmedData, 4)
288     TEST_FIELD_ALIGN (RemBINDINFO, cbstgmedData, 4)
289     TEST_FIELD_OFFSET(RemBINDINFO, cbstgmedData, 32)
290     TEST_FIELD_SIZE  (RemBINDINFO, dwOptions, 4)
291     TEST_FIELD_ALIGN (RemBINDINFO, dwOptions, 4)
292     TEST_FIELD_OFFSET(RemBINDINFO, dwOptions, 36)
293     TEST_FIELD_SIZE  (RemBINDINFO, dwOptionsFlags, 4)
294     TEST_FIELD_ALIGN (RemBINDINFO, dwOptionsFlags, 4)
295     TEST_FIELD_OFFSET(RemBINDINFO, dwOptionsFlags, 40)
296     TEST_FIELD_SIZE  (RemBINDINFO, dwCodePage, 4)
297     TEST_FIELD_ALIGN (RemBINDINFO, dwCodePage, 4)
298     TEST_FIELD_OFFSET(RemBINDINFO, dwCodePage, 44)
299     TEST_FIELD_SIZE  (RemBINDINFO, securityAttributes, 12)
300     TEST_FIELD_ALIGN (RemBINDINFO, securityAttributes, 4)
301     TEST_FIELD_OFFSET(RemBINDINFO, securityAttributes, 48)
302     TEST_FIELD_SIZE  (RemBINDINFO, iid, 16)
303     TEST_FIELD_ALIGN (RemBINDINFO, iid, 4)
304     TEST_FIELD_OFFSET(RemBINDINFO, iid, 60)
305     TEST_FIELD_SIZE  (RemBINDINFO, pUnk, 8)
306     TEST_FIELD_ALIGN (RemBINDINFO, pUnk, 8)
307     TEST_FIELD_OFFSET(RemBINDINFO, pUnk, 80)
308     TEST_FIELD_SIZE  (RemBINDINFO, dwReserved, 4)
309     TEST_FIELD_ALIGN (RemBINDINFO, dwReserved, 4)
310     TEST_FIELD_OFFSET(RemBINDINFO, dwReserved, 88)
311 }
312
313 static void test_pack_RemFORMATETC(void)
314 {
315     /* RemFORMATETC */
316     TEST_TYPE_SIZE   (RemFORMATETC, 20)
317     TEST_TYPE_ALIGN  (RemFORMATETC, 4)
318     TEST_FIELD_SIZE  (RemFORMATETC, cfFormat, 4)
319     TEST_FIELD_ALIGN (RemFORMATETC, cfFormat, 4)
320     TEST_FIELD_OFFSET(RemFORMATETC, cfFormat, 0)
321     TEST_FIELD_SIZE  (RemFORMATETC, ptd, 4)
322     TEST_FIELD_ALIGN (RemFORMATETC, ptd, 4)
323     TEST_FIELD_OFFSET(RemFORMATETC, ptd, 4)
324     TEST_FIELD_SIZE  (RemFORMATETC, dwAspect, 4)
325     TEST_FIELD_ALIGN (RemFORMATETC, dwAspect, 4)
326     TEST_FIELD_OFFSET(RemFORMATETC, dwAspect, 8)
327     TEST_FIELD_SIZE  (RemFORMATETC, lindex, 4)
328     TEST_FIELD_ALIGN (RemFORMATETC, lindex, 4)
329     TEST_FIELD_OFFSET(RemFORMATETC, lindex, 12)
330     TEST_FIELD_SIZE  (RemFORMATETC, tymed, 4)
331     TEST_FIELD_ALIGN (RemFORMATETC, tymed, 4)
332     TEST_FIELD_OFFSET(RemFORMATETC, tymed, 16)
333 }
334
335 #else /* _WIN64 */
336
337 static void test_pack_BINDINFO(void)
338 {
339     /* BINDINFO */
340     TEST_FIELD_SIZE  (BINDINFO, cbSize, 4)
341     TEST_FIELD_ALIGN (BINDINFO, cbSize, 4)
342     TEST_FIELD_OFFSET(BINDINFO, cbSize, 0)
343     TEST_FIELD_SIZE  (BINDINFO, szExtraInfo, 4)
344     TEST_FIELD_ALIGN (BINDINFO, szExtraInfo, 4)
345     TEST_FIELD_OFFSET(BINDINFO, szExtraInfo, 4)
346 }
347
348 static void test_pack_IBindHost(void)
349 {
350     /* IBindHost */
351 }
352
353 static void test_pack_IBindHostVtbl(void)
354 {
355     /* IBindHostVtbl */
356 }
357
358 static void test_pack_IBindStatusCallback(void)
359 {
360     /* IBindStatusCallback */
361 }
362
363 static void test_pack_IBindStatusCallbackVtbl(void)
364 {
365     /* IBindStatusCallbackVtbl */
366 }
367
368 static void test_pack_IBinding(void)
369 {
370     /* IBinding */
371 }
372
373 static void test_pack_IBindingVtbl(void)
374 {
375     /* IBindingVtbl */
376 }
377
378 static void test_pack_IInternetProtocolInfo(void)
379 {
380     /* IInternetProtocolInfo */
381 }
382
383 static void test_pack_IInternetProtocolInfoVtbl(void)
384 {
385     /* IInternetProtocolInfoVtbl */
386 }
387
388 static void test_pack_IInternetSession(void)
389 {
390     /* IInternetSession */
391 }
392
393 static void test_pack_IInternetSessionVtbl(void)
394 {
395     /* IInternetSessionVtbl */
396 }
397
398 static void test_pack_IPersistMoniker(void)
399 {
400     /* IPersistMoniker */
401 }
402
403 static void test_pack_IPersistMonikerVtbl(void)
404 {
405     /* IPersistMonikerVtbl */
406 }
407
408 static void test_pack_IWinInetHttpInfo(void)
409 {
410     /* IWinInetHttpInfo */
411 }
412
413 static void test_pack_IWinInetHttpInfoVtbl(void)
414 {
415     /* IWinInetHttpInfoVtbl */
416 }
417
418 static void test_pack_IWinInetInfo(void)
419 {
420     /* IWinInetInfo */
421 }
422
423 static void test_pack_IWinInetInfoVtbl(void)
424 {
425     /* IWinInetInfoVtbl */
426 }
427
428 static void test_pack_LPBINDHOST(void)
429 {
430     /* LPBINDHOST */
431     TEST_TYPE_SIZE   (LPBINDHOST, 4)
432     TEST_TYPE_ALIGN  (LPBINDHOST, 4)
433 }
434
435 static void test_pack_LPBINDING(void)
436 {
437     /* LPBINDING */
438     TEST_TYPE_SIZE   (LPBINDING, 4)
439     TEST_TYPE_ALIGN  (LPBINDING, 4)
440 }
441
442 static void test_pack_LPBINDSTATUSCALLBACK(void)
443 {
444     /* LPBINDSTATUSCALLBACK */
445     TEST_TYPE_SIZE   (LPBINDSTATUSCALLBACK, 4)
446     TEST_TYPE_ALIGN  (LPBINDSTATUSCALLBACK, 4)
447 }
448
449 static void test_pack_LPIINTERNETPROTOCOLINFO(void)
450 {
451     /* LPIINTERNETPROTOCOLINFO */
452     TEST_TYPE_SIZE   (LPIINTERNETPROTOCOLINFO, 4)
453     TEST_TYPE_ALIGN  (LPIINTERNETPROTOCOLINFO, 4)
454 }
455
456 static void test_pack_LPIINTERNETSESSION(void)
457 {
458     /* LPIINTERNETSESSION */
459     TEST_TYPE_SIZE   (LPIINTERNETSESSION, 4)
460     TEST_TYPE_ALIGN  (LPIINTERNETSESSION, 4)
461 }
462
463 static void test_pack_LPPERSISTMONIKER(void)
464 {
465     /* LPPERSISTMONIKER */
466     TEST_TYPE_SIZE   (LPPERSISTMONIKER, 4)
467     TEST_TYPE_ALIGN  (LPPERSISTMONIKER, 4)
468 }
469
470 static void test_pack_LPREMFORMATETC(void)
471 {
472     /* LPREMFORMATETC */
473     TEST_TYPE_SIZE   (LPREMFORMATETC, 4)
474     TEST_TYPE_ALIGN  (LPREMFORMATETC, 4)
475 }
476
477 static void test_pack_LPREMSECURITY_ATTRIBUTES(void)
478 {
479     /* LPREMSECURITY_ATTRIBUTES */
480     TEST_TYPE_SIZE   (LPREMSECURITY_ATTRIBUTES, 4)
481     TEST_TYPE_ALIGN  (LPREMSECURITY_ATTRIBUTES, 4)
482 }
483
484 static void test_pack_LPWININETHTTPINFO(void)
485 {
486     /* LPWININETHTTPINFO */
487     TEST_TYPE_SIZE   (LPWININETHTTPINFO, 4)
488     TEST_TYPE_ALIGN  (LPWININETHTTPINFO, 4)
489 }
490
491 static void test_pack_LPWININETINFO(void)
492 {
493     /* LPWININETINFO */
494     TEST_TYPE_SIZE   (LPWININETINFO, 4)
495     TEST_TYPE_ALIGN  (LPWININETINFO, 4)
496 }
497
498 static void test_pack_PREMSECURITY_ATTRIBUTES(void)
499 {
500     /* PREMSECURITY_ATTRIBUTES */
501     TEST_TYPE_SIZE   (PREMSECURITY_ATTRIBUTES, 4)
502     TEST_TYPE_ALIGN  (PREMSECURITY_ATTRIBUTES, 4)
503 }
504
505 static void test_pack_REMSECURITY_ATTRIBUTES(void)
506 {
507     /* REMSECURITY_ATTRIBUTES */
508     TEST_TYPE_SIZE   (REMSECURITY_ATTRIBUTES, 12)
509     TEST_TYPE_ALIGN  (REMSECURITY_ATTRIBUTES, 4)
510     TEST_FIELD_SIZE  (REMSECURITY_ATTRIBUTES, nLength, 4)
511     TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, nLength, 4)
512     TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, nLength, 0)
513     TEST_FIELD_SIZE  (REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
514     TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
515     TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, lpSecurityDescriptor, 4)
516     TEST_FIELD_SIZE  (REMSECURITY_ATTRIBUTES, bInheritHandle, 4)
517     TEST_FIELD_ALIGN (REMSECURITY_ATTRIBUTES, bInheritHandle, 4)
518     TEST_FIELD_OFFSET(REMSECURITY_ATTRIBUTES, bInheritHandle, 8)
519 }
520
521 static void test_pack_RemBINDINFO(void)
522 {
523     /* RemBINDINFO */
524     TEST_TYPE_SIZE   (RemBINDINFO, 72)
525     TEST_TYPE_ALIGN  (RemBINDINFO, 4)
526     TEST_FIELD_SIZE  (RemBINDINFO, cbSize, 4)
527     TEST_FIELD_ALIGN (RemBINDINFO, cbSize, 4)
528     TEST_FIELD_OFFSET(RemBINDINFO, cbSize, 0)
529     TEST_FIELD_SIZE  (RemBINDINFO, szExtraInfo, 4)
530     TEST_FIELD_ALIGN (RemBINDINFO, szExtraInfo, 4)
531     TEST_FIELD_OFFSET(RemBINDINFO, szExtraInfo, 4)
532     TEST_FIELD_SIZE  (RemBINDINFO, grfBindInfoF, 4)
533     TEST_FIELD_ALIGN (RemBINDINFO, grfBindInfoF, 4)
534     TEST_FIELD_OFFSET(RemBINDINFO, grfBindInfoF, 8)
535     TEST_FIELD_SIZE  (RemBINDINFO, dwBindVerb, 4)
536     TEST_FIELD_ALIGN (RemBINDINFO, dwBindVerb, 4)
537     TEST_FIELD_OFFSET(RemBINDINFO, dwBindVerb, 12)
538     TEST_FIELD_SIZE  (RemBINDINFO, szCustomVerb, 4)
539     TEST_FIELD_ALIGN (RemBINDINFO, szCustomVerb, 4)
540     TEST_FIELD_OFFSET(RemBINDINFO, szCustomVerb, 16)
541     TEST_FIELD_SIZE  (RemBINDINFO, cbstgmedData, 4)
542     TEST_FIELD_ALIGN (RemBINDINFO, cbstgmedData, 4)
543     TEST_FIELD_OFFSET(RemBINDINFO, cbstgmedData, 20)
544     TEST_FIELD_SIZE  (RemBINDINFO, dwOptions, 4)
545     TEST_FIELD_ALIGN (RemBINDINFO, dwOptions, 4)
546     TEST_FIELD_OFFSET(RemBINDINFO, dwOptions, 24)
547     TEST_FIELD_SIZE  (RemBINDINFO, dwOptionsFlags, 4)
548     TEST_FIELD_ALIGN (RemBINDINFO, dwOptionsFlags, 4)
549     TEST_FIELD_OFFSET(RemBINDINFO, dwOptionsFlags, 28)
550     TEST_FIELD_SIZE  (RemBINDINFO, dwCodePage, 4)
551     TEST_FIELD_ALIGN (RemBINDINFO, dwCodePage, 4)
552     TEST_FIELD_OFFSET(RemBINDINFO, dwCodePage, 32)
553     TEST_FIELD_SIZE  (RemBINDINFO, securityAttributes, 12)
554     TEST_FIELD_ALIGN (RemBINDINFO, securityAttributes, 4)
555     TEST_FIELD_OFFSET(RemBINDINFO, securityAttributes, 36)
556     TEST_FIELD_SIZE  (RemBINDINFO, iid, 16)
557     TEST_FIELD_ALIGN (RemBINDINFO, iid, 4)
558     TEST_FIELD_OFFSET(RemBINDINFO, iid, 48)
559     TEST_FIELD_SIZE  (RemBINDINFO, pUnk, 4)
560     TEST_FIELD_ALIGN (RemBINDINFO, pUnk, 4)
561     TEST_FIELD_OFFSET(RemBINDINFO, pUnk, 64)
562     TEST_FIELD_SIZE  (RemBINDINFO, dwReserved, 4)
563     TEST_FIELD_ALIGN (RemBINDINFO, dwReserved, 4)
564     TEST_FIELD_OFFSET(RemBINDINFO, dwReserved, 68)
565 }
566
567 static void test_pack_RemFORMATETC(void)
568 {
569     /* RemFORMATETC */
570     TEST_TYPE_SIZE   (RemFORMATETC, 20)
571     TEST_TYPE_ALIGN  (RemFORMATETC, 4)
572     TEST_FIELD_SIZE  (RemFORMATETC, cfFormat, 4)
573     TEST_FIELD_ALIGN (RemFORMATETC, cfFormat, 4)
574     TEST_FIELD_OFFSET(RemFORMATETC, cfFormat, 0)
575     TEST_FIELD_SIZE  (RemFORMATETC, ptd, 4)
576     TEST_FIELD_ALIGN (RemFORMATETC, ptd, 4)
577     TEST_FIELD_OFFSET(RemFORMATETC, ptd, 4)
578     TEST_FIELD_SIZE  (RemFORMATETC, dwAspect, 4)
579     TEST_FIELD_ALIGN (RemFORMATETC, dwAspect, 4)
580     TEST_FIELD_OFFSET(RemFORMATETC, dwAspect, 8)
581     TEST_FIELD_SIZE  (RemFORMATETC, lindex, 4)
582     TEST_FIELD_ALIGN (RemFORMATETC, lindex, 4)
583     TEST_FIELD_OFFSET(RemFORMATETC, lindex, 12)
584     TEST_FIELD_SIZE  (RemFORMATETC, tymed, 4)
585     TEST_FIELD_ALIGN (RemFORMATETC, tymed, 4)
586     TEST_FIELD_OFFSET(RemFORMATETC, tymed, 16)
587 }
588
589 #endif /* _WIN64 */
590
591 static void test_pack(void)
592 {
593     test_pack_BINDINFO();
594     test_pack_IBindHost();
595     test_pack_IBindHostVtbl();
596     test_pack_IBindStatusCallback();
597     test_pack_IBindStatusCallbackVtbl();
598     test_pack_IBinding();
599     test_pack_IBindingVtbl();
600     test_pack_IInternetProtocolInfo();
601     test_pack_IInternetProtocolInfoVtbl();
602     test_pack_IInternetSession();
603     test_pack_IInternetSessionVtbl();
604     test_pack_IPersistMoniker();
605     test_pack_IPersistMonikerVtbl();
606     test_pack_IWinInetHttpInfo();
607     test_pack_IWinInetHttpInfoVtbl();
608     test_pack_IWinInetInfo();
609     test_pack_IWinInetInfoVtbl();
610     test_pack_LPBINDHOST();
611     test_pack_LPBINDING();
612     test_pack_LPBINDSTATUSCALLBACK();
613     test_pack_LPIINTERNETPROTOCOLINFO();
614     test_pack_LPIINTERNETSESSION();
615     test_pack_LPPERSISTMONIKER();
616     test_pack_LPREMFORMATETC();
617     test_pack_LPREMSECURITY_ATTRIBUTES();
618     test_pack_LPWININETHTTPINFO();
619     test_pack_LPWININETINFO();
620     test_pack_PREMSECURITY_ATTRIBUTES();
621     test_pack_REMSECURITY_ATTRIBUTES();
622     test_pack_RemBINDINFO();
623     test_pack_RemFORMATETC();
624 }
625
626 START_TEST(generated)
627 {
628     test_pack();
629 }