winmm: Mark headers WHDR_DONE at the last possible time.
[wine] / dlls / winmm / 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 "windows.h"
15
16 #include "wine/test.h"
17
18 /***********************************************************************
19  * Compatibility macros
20  */
21
22 #define DWORD_PTR UINT_PTR
23 #define LONG_PTR INT_PTR
24 #define ULONG_PTR UINT_PTR
25
26 /***********************************************************************
27  * Windows API extension
28  */
29
30 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
31 # define _TYPE_ALIGNMENT(type) __alignof(type)
32 #elif defined(__GNUC__)
33 # define _TYPE_ALIGNMENT(type) __alignof__(type)
34 #else
35 /*
36  * FIXME: May not be possible without a compiler extension
37  *        (if type is not just a name that is, otherwise the normal
38  *         TYPE_ALIGNMENT can be used)
39  */
40 #endif
41
42 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
43 #pragma warning(disable:4116)
44 #endif
45
46 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
47 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
48 #endif
49
50 /***********************************************************************
51  * Test helper macros
52  */
53
54 #define TEST_TYPE_SIZE(type, size)             C_ASSERT(sizeof(type) == size);
55
56 #ifdef TYPE_ALIGNMENT
57 # define TEST_TYPE_ALIGN(type, align)          C_ASSERT(TYPE_ALIGNMENT(type) == align);
58 #else
59 # define TEST_TYPE_ALIGN(type, align)
60 #endif
61
62 #ifdef _TYPE_ALIGNMENT
63 # define TEST_TARGET_ALIGN(type, align)        C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
64 # define TEST_FIELD_ALIGN(type, field, align)  C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
65 #else
66 # define TEST_TARGET_ALIGN(type, align)
67 # define TEST_FIELD_ALIGN(type, field, align)
68 #endif
69
70 #define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
71
72 #define TEST_TARGET_SIZE(type, size)            TEST_TYPE_SIZE(*(type)0, size)
73 #define TEST_FIELD_SIZE(type, field, size)      TEST_TYPE_SIZE((((type*)0)->field), size)
74 #define TEST_TYPE_SIGNED(type)                  C_ASSERT((type) -1 < 0);
75 #define TEST_TYPE_UNSIGNED(type)                C_ASSERT((type) -1 > 0);
76
77
78 #ifdef _WIN64
79
80 static void test_pack_MMTIME(void)
81 {
82     /* MMTIME (pack 1) */
83     TEST_FIELD_SIZE  (MMTIME, wType, 4)
84     TEST_FIELD_ALIGN (MMTIME, wType, 1)
85     TEST_FIELD_OFFSET(MMTIME, wType, 0)
86 }
87
88 static void test_pack_DRVCONFIGINFO(void)
89 {
90     /* DRVCONFIGINFO (pack 1) */
91     TEST_TYPE_SIZE   (DRVCONFIGINFO, 20)
92     TEST_TYPE_ALIGN  (DRVCONFIGINFO, 1)
93     TEST_FIELD_SIZE  (DRVCONFIGINFO, dwDCISize, 4)
94     TEST_FIELD_ALIGN (DRVCONFIGINFO, dwDCISize, 1)
95     TEST_FIELD_OFFSET(DRVCONFIGINFO, dwDCISize, 0)
96     TEST_FIELD_SIZE  (DRVCONFIGINFO, lpszDCISectionName, 8)
97     TEST_FIELD_ALIGN (DRVCONFIGINFO, lpszDCISectionName, 1)
98     TEST_FIELD_OFFSET(DRVCONFIGINFO, lpszDCISectionName, 4)
99     TEST_FIELD_SIZE  (DRVCONFIGINFO, lpszDCIAliasName, 8)
100     TEST_FIELD_ALIGN (DRVCONFIGINFO, lpszDCIAliasName, 1)
101     TEST_FIELD_OFFSET(DRVCONFIGINFO, lpszDCIAliasName, 12)
102 }
103
104 static void test_pack_WAVEHDR(void)
105 {
106     /* WAVEHDR (pack 1) */
107     TEST_TYPE_SIZE   (WAVEHDR, 48)
108     TEST_TYPE_ALIGN  (WAVEHDR, 1)
109     TEST_FIELD_SIZE  (WAVEHDR, lpData, 8)
110     TEST_FIELD_ALIGN (WAVEHDR, lpData, 1)
111     TEST_FIELD_OFFSET(WAVEHDR, lpData, 0)
112     TEST_FIELD_SIZE  (WAVEHDR, dwBufferLength, 4)
113     TEST_FIELD_ALIGN (WAVEHDR, dwBufferLength, 1)
114     TEST_FIELD_OFFSET(WAVEHDR, dwBufferLength, 8)
115     TEST_FIELD_SIZE  (WAVEHDR, dwBytesRecorded, 4)
116     TEST_FIELD_ALIGN (WAVEHDR, dwBytesRecorded, 1)
117     TEST_FIELD_OFFSET(WAVEHDR, dwBytesRecorded, 12)
118     TEST_FIELD_SIZE  (WAVEHDR, dwUser, 8)
119     TEST_FIELD_ALIGN (WAVEHDR, dwUser, 1)
120     TEST_FIELD_OFFSET(WAVEHDR, dwUser, 16)
121     TEST_FIELD_SIZE  (WAVEHDR, dwFlags, 4)
122     TEST_FIELD_ALIGN (WAVEHDR, dwFlags, 1)
123     TEST_FIELD_OFFSET(WAVEHDR, dwFlags, 24)
124     TEST_FIELD_SIZE  (WAVEHDR, dwLoops, 4)
125     TEST_FIELD_ALIGN (WAVEHDR, dwLoops, 1)
126     TEST_FIELD_OFFSET(WAVEHDR, dwLoops, 28)
127     TEST_FIELD_SIZE  (WAVEHDR, lpNext, 8)
128     TEST_FIELD_ALIGN (WAVEHDR, lpNext, 1)
129     TEST_FIELD_OFFSET(WAVEHDR, lpNext, 32)
130     TEST_FIELD_SIZE  (WAVEHDR, reserved, 8)
131     TEST_FIELD_ALIGN (WAVEHDR, reserved, 1)
132     TEST_FIELD_OFFSET(WAVEHDR, reserved, 40)
133 }
134
135 static void test_pack_WAVEOUTCAPSA(void)
136 {
137     /* WAVEOUTCAPSA (pack 1) */
138     TEST_FIELD_SIZE  (WAVEOUTCAPSA, wMid, 2)
139     TEST_FIELD_ALIGN (WAVEOUTCAPSA, wMid, 1)
140     TEST_FIELD_OFFSET(WAVEOUTCAPSA, wMid, 0)
141     TEST_FIELD_SIZE  (WAVEOUTCAPSA, wPid, 2)
142     TEST_FIELD_ALIGN (WAVEOUTCAPSA, wPid, 1)
143     TEST_FIELD_OFFSET(WAVEOUTCAPSA, wPid, 2)
144     TEST_FIELD_SIZE  (WAVEOUTCAPSA, vDriverVersion, 4)
145     TEST_FIELD_ALIGN (WAVEOUTCAPSA, vDriverVersion, 1)
146     TEST_FIELD_OFFSET(WAVEOUTCAPSA, vDriverVersion, 4)
147 }
148
149 static void test_pack_WAVEOUTCAPSW(void)
150 {
151     /* WAVEOUTCAPSW (pack 1) */
152     TEST_FIELD_SIZE  (WAVEOUTCAPSW, wMid, 2)
153     TEST_FIELD_ALIGN (WAVEOUTCAPSW, wMid, 1)
154     TEST_FIELD_OFFSET(WAVEOUTCAPSW, wMid, 0)
155     TEST_FIELD_SIZE  (WAVEOUTCAPSW, wPid, 2)
156     TEST_FIELD_ALIGN (WAVEOUTCAPSW, wPid, 1)
157     TEST_FIELD_OFFSET(WAVEOUTCAPSW, wPid, 2)
158     TEST_FIELD_SIZE  (WAVEOUTCAPSW, vDriverVersion, 4)
159     TEST_FIELD_ALIGN (WAVEOUTCAPSW, vDriverVersion, 1)
160     TEST_FIELD_OFFSET(WAVEOUTCAPSW, vDriverVersion, 4)
161 }
162
163 static void test_pack_WAVEOUTCAPS2A(void)
164 {
165     /* WAVEOUTCAPS2A (pack 1) */
166     TEST_FIELD_SIZE  (WAVEOUTCAPS2A, wMid, 2)
167     TEST_FIELD_ALIGN (WAVEOUTCAPS2A, wMid, 1)
168     TEST_FIELD_OFFSET(WAVEOUTCAPS2A, wMid, 0)
169     TEST_FIELD_SIZE  (WAVEOUTCAPS2A, wPid, 2)
170     TEST_FIELD_ALIGN (WAVEOUTCAPS2A, wPid, 1)
171     TEST_FIELD_OFFSET(WAVEOUTCAPS2A, wPid, 2)
172     TEST_FIELD_SIZE  (WAVEOUTCAPS2A, vDriverVersion, 4)
173     TEST_FIELD_ALIGN (WAVEOUTCAPS2A, vDriverVersion, 1)
174     TEST_FIELD_OFFSET(WAVEOUTCAPS2A, vDriverVersion, 4)
175 }
176
177 static void test_pack_WAVEOUTCAPS2W(void)
178 {
179     /* WAVEOUTCAPS2W (pack 1) */
180     TEST_FIELD_SIZE  (WAVEOUTCAPS2W, wMid, 2)
181     TEST_FIELD_ALIGN (WAVEOUTCAPS2W, wMid, 1)
182     TEST_FIELD_OFFSET(WAVEOUTCAPS2W, wMid, 0)
183     TEST_FIELD_SIZE  (WAVEOUTCAPS2W, wPid, 2)
184     TEST_FIELD_ALIGN (WAVEOUTCAPS2W, wPid, 1)
185     TEST_FIELD_OFFSET(WAVEOUTCAPS2W, wPid, 2)
186     TEST_FIELD_SIZE  (WAVEOUTCAPS2W, vDriverVersion, 4)
187     TEST_FIELD_ALIGN (WAVEOUTCAPS2W, vDriverVersion, 1)
188     TEST_FIELD_OFFSET(WAVEOUTCAPS2W, vDriverVersion, 4)
189 }
190
191 static void test_pack_WAVEINCAPSA(void)
192 {
193     /* WAVEINCAPSA (pack 1) */
194     TEST_FIELD_SIZE  (WAVEINCAPSA, wMid, 2)
195     TEST_FIELD_ALIGN (WAVEINCAPSA, wMid, 1)
196     TEST_FIELD_OFFSET(WAVEINCAPSA, wMid, 0)
197     TEST_FIELD_SIZE  (WAVEINCAPSA, wPid, 2)
198     TEST_FIELD_ALIGN (WAVEINCAPSA, wPid, 1)
199     TEST_FIELD_OFFSET(WAVEINCAPSA, wPid, 2)
200     TEST_FIELD_SIZE  (WAVEINCAPSA, vDriverVersion, 4)
201     TEST_FIELD_ALIGN (WAVEINCAPSA, vDriverVersion, 1)
202     TEST_FIELD_OFFSET(WAVEINCAPSA, vDriverVersion, 4)
203 }
204
205 static void test_pack_WAVEINCAPSW(void)
206 {
207     /* WAVEINCAPSW (pack 1) */
208     TEST_FIELD_SIZE  (WAVEINCAPSW, wMid, 2)
209     TEST_FIELD_ALIGN (WAVEINCAPSW, wMid, 1)
210     TEST_FIELD_OFFSET(WAVEINCAPSW, wMid, 0)
211     TEST_FIELD_SIZE  (WAVEINCAPSW, wPid, 2)
212     TEST_FIELD_ALIGN (WAVEINCAPSW, wPid, 1)
213     TEST_FIELD_OFFSET(WAVEINCAPSW, wPid, 2)
214     TEST_FIELD_SIZE  (WAVEINCAPSW, vDriverVersion, 4)
215     TEST_FIELD_ALIGN (WAVEINCAPSW, vDriverVersion, 1)
216     TEST_FIELD_OFFSET(WAVEINCAPSW, vDriverVersion, 4)
217 }
218
219 static void test_pack_WAVEINCAPS2A(void)
220 {
221     /* WAVEINCAPS2A (pack 1) */
222     TEST_FIELD_SIZE  (WAVEINCAPS2A, wMid, 2)
223     TEST_FIELD_ALIGN (WAVEINCAPS2A, wMid, 1)
224     TEST_FIELD_OFFSET(WAVEINCAPS2A, wMid, 0)
225     TEST_FIELD_SIZE  (WAVEINCAPS2A, wPid, 2)
226     TEST_FIELD_ALIGN (WAVEINCAPS2A, wPid, 1)
227     TEST_FIELD_OFFSET(WAVEINCAPS2A, wPid, 2)
228     TEST_FIELD_SIZE  (WAVEINCAPS2A, vDriverVersion, 4)
229     TEST_FIELD_ALIGN (WAVEINCAPS2A, vDriverVersion, 1)
230     TEST_FIELD_OFFSET(WAVEINCAPS2A, vDriverVersion, 4)
231 }
232
233 static void test_pack_WAVEINCAPS2W(void)
234 {
235     /* WAVEINCAPS2W (pack 1) */
236     TEST_FIELD_SIZE  (WAVEINCAPS2W, wMid, 2)
237     TEST_FIELD_ALIGN (WAVEINCAPS2W, wMid, 1)
238     TEST_FIELD_OFFSET(WAVEINCAPS2W, wMid, 0)
239     TEST_FIELD_SIZE  (WAVEINCAPS2W, wPid, 2)
240     TEST_FIELD_ALIGN (WAVEINCAPS2W, wPid, 1)
241     TEST_FIELD_OFFSET(WAVEINCAPS2W, wPid, 2)
242     TEST_FIELD_SIZE  (WAVEINCAPS2W, vDriverVersion, 4)
243     TEST_FIELD_ALIGN (WAVEINCAPS2W, vDriverVersion, 1)
244     TEST_FIELD_OFFSET(WAVEINCAPS2W, vDriverVersion, 4)
245 }
246
247 static void test_pack_WAVEFORMAT(void)
248 {
249     /* WAVEFORMAT (pack 1) */
250     TEST_TYPE_SIZE   (WAVEFORMAT, 14)
251     TEST_TYPE_ALIGN  (WAVEFORMAT, 1)
252     TEST_FIELD_SIZE  (WAVEFORMAT, wFormatTag, 2)
253     TEST_FIELD_ALIGN (WAVEFORMAT, wFormatTag, 1)
254     TEST_FIELD_OFFSET(WAVEFORMAT, wFormatTag, 0)
255     TEST_FIELD_SIZE  (WAVEFORMAT, nChannels, 2)
256     TEST_FIELD_ALIGN (WAVEFORMAT, nChannels, 1)
257     TEST_FIELD_OFFSET(WAVEFORMAT, nChannels, 2)
258     TEST_FIELD_SIZE  (WAVEFORMAT, nSamplesPerSec, 4)
259     TEST_FIELD_ALIGN (WAVEFORMAT, nSamplesPerSec, 1)
260     TEST_FIELD_OFFSET(WAVEFORMAT, nSamplesPerSec, 4)
261     TEST_FIELD_SIZE  (WAVEFORMAT, nAvgBytesPerSec, 4)
262     TEST_FIELD_ALIGN (WAVEFORMAT, nAvgBytesPerSec, 1)
263     TEST_FIELD_OFFSET(WAVEFORMAT, nAvgBytesPerSec, 8)
264     TEST_FIELD_SIZE  (WAVEFORMAT, nBlockAlign, 2)
265     TEST_FIELD_ALIGN (WAVEFORMAT, nBlockAlign, 1)
266     TEST_FIELD_OFFSET(WAVEFORMAT, nBlockAlign, 12)
267 }
268
269 static void test_pack_PCMWAVEFORMAT(void)
270 {
271     /* PCMWAVEFORMAT (pack 1) */
272     TEST_TYPE_SIZE   (PCMWAVEFORMAT, 16)
273     TEST_TYPE_ALIGN  (PCMWAVEFORMAT, 1)
274     TEST_FIELD_SIZE  (PCMWAVEFORMAT, wf, 14)
275     TEST_FIELD_ALIGN (PCMWAVEFORMAT, wf, 1)
276     TEST_FIELD_OFFSET(PCMWAVEFORMAT, wf, 0)
277     TEST_FIELD_SIZE  (PCMWAVEFORMAT, wBitsPerSample, 2)
278     TEST_FIELD_ALIGN (PCMWAVEFORMAT, wBitsPerSample, 1)
279     TEST_FIELD_OFFSET(PCMWAVEFORMAT, wBitsPerSample, 14)
280 }
281
282 static void test_pack_WAVEFORMATEX(void)
283 {
284     /* WAVEFORMATEX (pack 1) */
285     TEST_TYPE_SIZE   (WAVEFORMATEX, 18)
286     TEST_TYPE_ALIGN  (WAVEFORMATEX, 1)
287     TEST_FIELD_SIZE  (WAVEFORMATEX, wFormatTag, 2)
288     TEST_FIELD_ALIGN (WAVEFORMATEX, wFormatTag, 1)
289     TEST_FIELD_OFFSET(WAVEFORMATEX, wFormatTag, 0)
290     TEST_FIELD_SIZE  (WAVEFORMATEX, nChannels, 2)
291     TEST_FIELD_ALIGN (WAVEFORMATEX, nChannels, 1)
292     TEST_FIELD_OFFSET(WAVEFORMATEX, nChannels, 2)
293     TEST_FIELD_SIZE  (WAVEFORMATEX, nSamplesPerSec, 4)
294     TEST_FIELD_ALIGN (WAVEFORMATEX, nSamplesPerSec, 1)
295     TEST_FIELD_OFFSET(WAVEFORMATEX, nSamplesPerSec, 4)
296     TEST_FIELD_SIZE  (WAVEFORMATEX, nAvgBytesPerSec, 4)
297     TEST_FIELD_ALIGN (WAVEFORMATEX, nAvgBytesPerSec, 1)
298     TEST_FIELD_OFFSET(WAVEFORMATEX, nAvgBytesPerSec, 8)
299     TEST_FIELD_SIZE  (WAVEFORMATEX, nBlockAlign, 2)
300     TEST_FIELD_ALIGN (WAVEFORMATEX, nBlockAlign, 1)
301     TEST_FIELD_OFFSET(WAVEFORMATEX, nBlockAlign, 12)
302     TEST_FIELD_SIZE  (WAVEFORMATEX, wBitsPerSample, 2)
303     TEST_FIELD_ALIGN (WAVEFORMATEX, wBitsPerSample, 1)
304     TEST_FIELD_OFFSET(WAVEFORMATEX, wBitsPerSample, 14)
305     TEST_FIELD_SIZE  (WAVEFORMATEX, cbSize, 2)
306     TEST_FIELD_ALIGN (WAVEFORMATEX, cbSize, 1)
307     TEST_FIELD_OFFSET(WAVEFORMATEX, cbSize, 16)
308 }
309
310 static void test_pack_MIDIOUTCAPSA(void)
311 {
312     /* MIDIOUTCAPSA (pack 1) */
313     TEST_FIELD_SIZE  (MIDIOUTCAPSA, wMid, 2)
314     TEST_FIELD_ALIGN (MIDIOUTCAPSA, wMid, 1)
315     TEST_FIELD_OFFSET(MIDIOUTCAPSA, wMid, 0)
316     TEST_FIELD_SIZE  (MIDIOUTCAPSA, wPid, 2)
317     TEST_FIELD_ALIGN (MIDIOUTCAPSA, wPid, 1)
318     TEST_FIELD_OFFSET(MIDIOUTCAPSA, wPid, 2)
319     TEST_FIELD_SIZE  (MIDIOUTCAPSA, vDriverVersion, 4)
320     TEST_FIELD_ALIGN (MIDIOUTCAPSA, vDriverVersion, 1)
321     TEST_FIELD_OFFSET(MIDIOUTCAPSA, vDriverVersion, 4)
322 }
323
324 static void test_pack_MIDIOUTCAPSW(void)
325 {
326     /* MIDIOUTCAPSW (pack 1) */
327     TEST_FIELD_SIZE  (MIDIOUTCAPSW, wMid, 2)
328     TEST_FIELD_ALIGN (MIDIOUTCAPSW, wMid, 1)
329     TEST_FIELD_OFFSET(MIDIOUTCAPSW, wMid, 0)
330     TEST_FIELD_SIZE  (MIDIOUTCAPSW, wPid, 2)
331     TEST_FIELD_ALIGN (MIDIOUTCAPSW, wPid, 1)
332     TEST_FIELD_OFFSET(MIDIOUTCAPSW, wPid, 2)
333     TEST_FIELD_SIZE  (MIDIOUTCAPSW, vDriverVersion, 4)
334     TEST_FIELD_ALIGN (MIDIOUTCAPSW, vDriverVersion, 1)
335     TEST_FIELD_OFFSET(MIDIOUTCAPSW, vDriverVersion, 4)
336 }
337
338 static void test_pack_MIDIOUTCAPS2A(void)
339 {
340     /* MIDIOUTCAPS2A (pack 1) */
341     TEST_FIELD_SIZE  (MIDIOUTCAPS2A, wMid, 2)
342     TEST_FIELD_ALIGN (MIDIOUTCAPS2A, wMid, 1)
343     TEST_FIELD_OFFSET(MIDIOUTCAPS2A, wMid, 0)
344     TEST_FIELD_SIZE  (MIDIOUTCAPS2A, wPid, 2)
345     TEST_FIELD_ALIGN (MIDIOUTCAPS2A, wPid, 1)
346     TEST_FIELD_OFFSET(MIDIOUTCAPS2A, wPid, 2)
347     TEST_FIELD_SIZE  (MIDIOUTCAPS2A, vDriverVersion, 4)
348     TEST_FIELD_ALIGN (MIDIOUTCAPS2A, vDriverVersion, 1)
349     TEST_FIELD_OFFSET(MIDIOUTCAPS2A, vDriverVersion, 4)
350 }
351
352 static void test_pack_MIDIOUTCAPS2W(void)
353 {
354     /* MIDIOUTCAPS2W (pack 1) */
355     TEST_FIELD_SIZE  (MIDIOUTCAPS2W, wMid, 2)
356     TEST_FIELD_ALIGN (MIDIOUTCAPS2W, wMid, 1)
357     TEST_FIELD_OFFSET(MIDIOUTCAPS2W, wMid, 0)
358     TEST_FIELD_SIZE  (MIDIOUTCAPS2W, wPid, 2)
359     TEST_FIELD_ALIGN (MIDIOUTCAPS2W, wPid, 1)
360     TEST_FIELD_OFFSET(MIDIOUTCAPS2W, wPid, 2)
361     TEST_FIELD_SIZE  (MIDIOUTCAPS2W, vDriverVersion, 4)
362     TEST_FIELD_ALIGN (MIDIOUTCAPS2W, vDriverVersion, 1)
363     TEST_FIELD_OFFSET(MIDIOUTCAPS2W, vDriverVersion, 4)
364 }
365
366 static void test_pack_MIDIINCAPSA(void)
367 {
368     /* MIDIINCAPSA (pack 1) */
369     TEST_FIELD_SIZE  (MIDIINCAPSA, wMid, 2)
370     TEST_FIELD_ALIGN (MIDIINCAPSA, wMid, 1)
371     TEST_FIELD_OFFSET(MIDIINCAPSA, wMid, 0)
372     TEST_FIELD_SIZE  (MIDIINCAPSA, wPid, 2)
373     TEST_FIELD_ALIGN (MIDIINCAPSA, wPid, 1)
374     TEST_FIELD_OFFSET(MIDIINCAPSA, wPid, 2)
375     TEST_FIELD_SIZE  (MIDIINCAPSA, vDriverVersion, 4)
376     TEST_FIELD_ALIGN (MIDIINCAPSA, vDriverVersion, 1)
377     TEST_FIELD_OFFSET(MIDIINCAPSA, vDriverVersion, 4)
378 }
379
380 static void test_pack_MIDIINCAPSW(void)
381 {
382     /* MIDIINCAPSW (pack 1) */
383     TEST_FIELD_SIZE  (MIDIINCAPSW, wMid, 2)
384     TEST_FIELD_ALIGN (MIDIINCAPSW, wMid, 1)
385     TEST_FIELD_OFFSET(MIDIINCAPSW, wMid, 0)
386     TEST_FIELD_SIZE  (MIDIINCAPSW, wPid, 2)
387     TEST_FIELD_ALIGN (MIDIINCAPSW, wPid, 1)
388     TEST_FIELD_OFFSET(MIDIINCAPSW, wPid, 2)
389     TEST_FIELD_SIZE  (MIDIINCAPSW, vDriverVersion, 4)
390     TEST_FIELD_ALIGN (MIDIINCAPSW, vDriverVersion, 1)
391     TEST_FIELD_OFFSET(MIDIINCAPSW, vDriverVersion, 4)
392 }
393
394 static void test_pack_MIDIINCAPS2A(void)
395 {
396     /* MIDIINCAPS2A (pack 1) */
397     TEST_FIELD_SIZE  (MIDIINCAPS2A, wMid, 2)
398     TEST_FIELD_ALIGN (MIDIINCAPS2A, wMid, 1)
399     TEST_FIELD_OFFSET(MIDIINCAPS2A, wMid, 0)
400     TEST_FIELD_SIZE  (MIDIINCAPS2A, wPid, 2)
401     TEST_FIELD_ALIGN (MIDIINCAPS2A, wPid, 1)
402     TEST_FIELD_OFFSET(MIDIINCAPS2A, wPid, 2)
403     TEST_FIELD_SIZE  (MIDIINCAPS2A, vDriverVersion, 4)
404     TEST_FIELD_ALIGN (MIDIINCAPS2A, vDriverVersion, 1)
405     TEST_FIELD_OFFSET(MIDIINCAPS2A, vDriverVersion, 4)
406 }
407
408 static void test_pack_MIDIINCAPS2W(void)
409 {
410     /* MIDIINCAPS2W (pack 1) */
411     TEST_FIELD_SIZE  (MIDIINCAPS2W, wMid, 2)
412     TEST_FIELD_ALIGN (MIDIINCAPS2W, wMid, 1)
413     TEST_FIELD_OFFSET(MIDIINCAPS2W, wMid, 0)
414     TEST_FIELD_SIZE  (MIDIINCAPS2W, wPid, 2)
415     TEST_FIELD_ALIGN (MIDIINCAPS2W, wPid, 1)
416     TEST_FIELD_OFFSET(MIDIINCAPS2W, wPid, 2)
417     TEST_FIELD_SIZE  (MIDIINCAPS2W, vDriverVersion, 4)
418     TEST_FIELD_ALIGN (MIDIINCAPS2W, vDriverVersion, 1)
419     TEST_FIELD_OFFSET(MIDIINCAPS2W, vDriverVersion, 4)
420 }
421
422 static void test_pack_MIDIHDR(void)
423 {
424     /* MIDIHDR (pack 1) */
425     TEST_TYPE_SIZE   (MIDIHDR, 112)
426     TEST_TYPE_ALIGN  (MIDIHDR, 1)
427     TEST_FIELD_SIZE  (MIDIHDR, lpData, 8)
428     TEST_FIELD_ALIGN (MIDIHDR, lpData, 1)
429     TEST_FIELD_OFFSET(MIDIHDR, lpData, 0)
430     TEST_FIELD_SIZE  (MIDIHDR, dwBufferLength, 4)
431     TEST_FIELD_ALIGN (MIDIHDR, dwBufferLength, 1)
432     TEST_FIELD_OFFSET(MIDIHDR, dwBufferLength, 8)
433     TEST_FIELD_SIZE  (MIDIHDR, dwBytesRecorded, 4)
434     TEST_FIELD_ALIGN (MIDIHDR, dwBytesRecorded, 1)
435     TEST_FIELD_OFFSET(MIDIHDR, dwBytesRecorded, 12)
436     TEST_FIELD_SIZE  (MIDIHDR, dwUser, 8)
437     TEST_FIELD_ALIGN (MIDIHDR, dwUser, 1)
438     TEST_FIELD_OFFSET(MIDIHDR, dwUser, 16)
439     TEST_FIELD_SIZE  (MIDIHDR, dwFlags, 4)
440     TEST_FIELD_ALIGN (MIDIHDR, dwFlags, 1)
441     TEST_FIELD_OFFSET(MIDIHDR, dwFlags, 24)
442     TEST_FIELD_SIZE  (MIDIHDR, lpNext, 8)
443     TEST_FIELD_ALIGN (MIDIHDR, lpNext, 1)
444     TEST_FIELD_OFFSET(MIDIHDR, lpNext, 28)
445     TEST_FIELD_SIZE  (MIDIHDR, reserved, 8)
446     TEST_FIELD_ALIGN (MIDIHDR, reserved, 1)
447     TEST_FIELD_OFFSET(MIDIHDR, reserved, 36)
448     TEST_FIELD_SIZE  (MIDIHDR, dwOffset, 4)
449     TEST_FIELD_ALIGN (MIDIHDR, dwOffset, 1)
450     TEST_FIELD_OFFSET(MIDIHDR, dwOffset, 44)
451     TEST_FIELD_SIZE  (MIDIHDR, dwReserved, 64)
452     TEST_FIELD_ALIGN (MIDIHDR, dwReserved, 1)
453     TEST_FIELD_OFFSET(MIDIHDR, dwReserved, 48)
454 }
455
456 static void test_pack_MIDIEVENT(void)
457 {
458     /* MIDIEVENT (pack 1) */
459     TEST_TYPE_SIZE   (MIDIEVENT, 16)
460     TEST_TYPE_ALIGN  (MIDIEVENT, 1)
461     TEST_FIELD_SIZE  (MIDIEVENT, dwDeltaTime, 4)
462     TEST_FIELD_ALIGN (MIDIEVENT, dwDeltaTime, 1)
463     TEST_FIELD_OFFSET(MIDIEVENT, dwDeltaTime, 0)
464     TEST_FIELD_SIZE  (MIDIEVENT, dwStreamID, 4)
465     TEST_FIELD_ALIGN (MIDIEVENT, dwStreamID, 1)
466     TEST_FIELD_OFFSET(MIDIEVENT, dwStreamID, 4)
467     TEST_FIELD_SIZE  (MIDIEVENT, dwEvent, 4)
468     TEST_FIELD_ALIGN (MIDIEVENT, dwEvent, 1)
469     TEST_FIELD_OFFSET(MIDIEVENT, dwEvent, 8)
470     TEST_FIELD_SIZE  (MIDIEVENT, dwParms, 4)
471     TEST_FIELD_ALIGN (MIDIEVENT, dwParms, 1)
472     TEST_FIELD_OFFSET(MIDIEVENT, dwParms, 12)
473 }
474
475 static void test_pack_AUXCAPSA(void)
476 {
477     /* AUXCAPSA (pack 1) */
478     TEST_FIELD_SIZE  (AUXCAPSA, wMid, 2)
479     TEST_FIELD_ALIGN (AUXCAPSA, wMid, 1)
480     TEST_FIELD_OFFSET(AUXCAPSA, wMid, 0)
481     TEST_FIELD_SIZE  (AUXCAPSA, wPid, 2)
482     TEST_FIELD_ALIGN (AUXCAPSA, wPid, 1)
483     TEST_FIELD_OFFSET(AUXCAPSA, wPid, 2)
484     TEST_FIELD_SIZE  (AUXCAPSA, vDriverVersion, 4)
485     TEST_FIELD_ALIGN (AUXCAPSA, vDriverVersion, 1)
486     TEST_FIELD_OFFSET(AUXCAPSA, vDriverVersion, 4)
487 }
488
489 static void test_pack_AUXCAPSW(void)
490 {
491     /* AUXCAPSW (pack 1) */
492     TEST_FIELD_SIZE  (AUXCAPSW, wMid, 2)
493     TEST_FIELD_ALIGN (AUXCAPSW, wMid, 1)
494     TEST_FIELD_OFFSET(AUXCAPSW, wMid, 0)
495     TEST_FIELD_SIZE  (AUXCAPSW, wPid, 2)
496     TEST_FIELD_ALIGN (AUXCAPSW, wPid, 1)
497     TEST_FIELD_OFFSET(AUXCAPSW, wPid, 2)
498     TEST_FIELD_SIZE  (AUXCAPSW, vDriverVersion, 4)
499     TEST_FIELD_ALIGN (AUXCAPSW, vDriverVersion, 1)
500     TEST_FIELD_OFFSET(AUXCAPSW, vDriverVersion, 4)
501 }
502
503 static void test_pack_AUXCAPS2A(void)
504 {
505     /* AUXCAPS2A (pack 1) */
506     TEST_FIELD_SIZE  (AUXCAPS2A, wMid, 2)
507     TEST_FIELD_ALIGN (AUXCAPS2A, wMid, 1)
508     TEST_FIELD_OFFSET(AUXCAPS2A, wMid, 0)
509     TEST_FIELD_SIZE  (AUXCAPS2A, wPid, 2)
510     TEST_FIELD_ALIGN (AUXCAPS2A, wPid, 1)
511     TEST_FIELD_OFFSET(AUXCAPS2A, wPid, 2)
512     TEST_FIELD_SIZE  (AUXCAPS2A, vDriverVersion, 4)
513     TEST_FIELD_ALIGN (AUXCAPS2A, vDriverVersion, 1)
514     TEST_FIELD_OFFSET(AUXCAPS2A, vDriverVersion, 4)
515 }
516
517 static void test_pack_AUXCAPS2W(void)
518 {
519     /* AUXCAPS2W (pack 1) */
520     TEST_FIELD_SIZE  (AUXCAPS2W, wMid, 2)
521     TEST_FIELD_ALIGN (AUXCAPS2W, wMid, 1)
522     TEST_FIELD_OFFSET(AUXCAPS2W, wMid, 0)
523     TEST_FIELD_SIZE  (AUXCAPS2W, wPid, 2)
524     TEST_FIELD_ALIGN (AUXCAPS2W, wPid, 1)
525     TEST_FIELD_OFFSET(AUXCAPS2W, wPid, 2)
526     TEST_FIELD_SIZE  (AUXCAPS2W, vDriverVersion, 4)
527     TEST_FIELD_ALIGN (AUXCAPS2W, vDriverVersion, 1)
528     TEST_FIELD_OFFSET(AUXCAPS2W, vDriverVersion, 4)
529 }
530
531 static void test_pack_TIMECAPS(void)
532 {
533     /* TIMECAPS (pack 1) */
534     TEST_TYPE_SIZE   (TIMECAPS, 8)
535     TEST_TYPE_ALIGN  (TIMECAPS, 1)
536     TEST_FIELD_SIZE  (TIMECAPS, wPeriodMin, 4)
537     TEST_FIELD_ALIGN (TIMECAPS, wPeriodMin, 1)
538     TEST_FIELD_OFFSET(TIMECAPS, wPeriodMin, 0)
539     TEST_FIELD_SIZE  (TIMECAPS, wPeriodMax, 4)
540     TEST_FIELD_ALIGN (TIMECAPS, wPeriodMax, 1)
541     TEST_FIELD_OFFSET(TIMECAPS, wPeriodMax, 4)
542 }
543
544 static void test_pack_JOYCAPSA(void)
545 {
546     /* JOYCAPSA (pack 1) */
547     TEST_FIELD_SIZE  (JOYCAPSA, wMid, 2)
548     TEST_FIELD_ALIGN (JOYCAPSA, wMid, 1)
549     TEST_FIELD_OFFSET(JOYCAPSA, wMid, 0)
550     TEST_FIELD_SIZE  (JOYCAPSA, wPid, 2)
551     TEST_FIELD_ALIGN (JOYCAPSA, wPid, 1)
552     TEST_FIELD_OFFSET(JOYCAPSA, wPid, 2)
553 }
554
555 static void test_pack_JOYCAPSW(void)
556 {
557     /* JOYCAPSW (pack 1) */
558     TEST_FIELD_SIZE  (JOYCAPSW, wMid, 2)
559     TEST_FIELD_ALIGN (JOYCAPSW, wMid, 1)
560     TEST_FIELD_OFFSET(JOYCAPSW, wMid, 0)
561     TEST_FIELD_SIZE  (JOYCAPSW, wPid, 2)
562     TEST_FIELD_ALIGN (JOYCAPSW, wPid, 1)
563     TEST_FIELD_OFFSET(JOYCAPSW, wPid, 2)
564 }
565
566 static void test_pack_JOYCAPS2A(void)
567 {
568     /* JOYCAPS2A (pack 1) */
569     TEST_FIELD_SIZE  (JOYCAPS2A, wMid, 2)
570     TEST_FIELD_ALIGN (JOYCAPS2A, wMid, 1)
571     TEST_FIELD_OFFSET(JOYCAPS2A, wMid, 0)
572     TEST_FIELD_SIZE  (JOYCAPS2A, wPid, 2)
573     TEST_FIELD_ALIGN (JOYCAPS2A, wPid, 1)
574     TEST_FIELD_OFFSET(JOYCAPS2A, wPid, 2)
575 }
576
577 static void test_pack_JOYCAPS2W(void)
578 {
579     /* JOYCAPS2W (pack 1) */
580     TEST_FIELD_SIZE  (JOYCAPS2W, wMid, 2)
581     TEST_FIELD_ALIGN (JOYCAPS2W, wMid, 1)
582     TEST_FIELD_OFFSET(JOYCAPS2W, wMid, 0)
583     TEST_FIELD_SIZE  (JOYCAPS2W, wPid, 2)
584     TEST_FIELD_ALIGN (JOYCAPS2W, wPid, 1)
585     TEST_FIELD_OFFSET(JOYCAPS2W, wPid, 2)
586 }
587
588 static void test_pack_JOYINFO(void)
589 {
590     /* JOYINFO (pack 1) */
591     TEST_TYPE_SIZE   (JOYINFO, 16)
592     TEST_TYPE_ALIGN  (JOYINFO, 1)
593     TEST_FIELD_SIZE  (JOYINFO, wXpos, 4)
594     TEST_FIELD_ALIGN (JOYINFO, wXpos, 1)
595     TEST_FIELD_OFFSET(JOYINFO, wXpos, 0)
596     TEST_FIELD_SIZE  (JOYINFO, wYpos, 4)
597     TEST_FIELD_ALIGN (JOYINFO, wYpos, 1)
598     TEST_FIELD_OFFSET(JOYINFO, wYpos, 4)
599     TEST_FIELD_SIZE  (JOYINFO, wZpos, 4)
600     TEST_FIELD_ALIGN (JOYINFO, wZpos, 1)
601     TEST_FIELD_OFFSET(JOYINFO, wZpos, 8)
602     TEST_FIELD_SIZE  (JOYINFO, wButtons, 4)
603     TEST_FIELD_ALIGN (JOYINFO, wButtons, 1)
604     TEST_FIELD_OFFSET(JOYINFO, wButtons, 12)
605 }
606
607 static void test_pack_JOYINFOEX(void)
608 {
609     /* JOYINFOEX (pack 1) */
610     TEST_TYPE_SIZE   (JOYINFOEX, 52)
611     TEST_TYPE_ALIGN  (JOYINFOEX, 1)
612     TEST_FIELD_SIZE  (JOYINFOEX, dwSize, 4)
613     TEST_FIELD_ALIGN (JOYINFOEX, dwSize, 1)
614     TEST_FIELD_OFFSET(JOYINFOEX, dwSize, 0)
615     TEST_FIELD_SIZE  (JOYINFOEX, dwFlags, 4)
616     TEST_FIELD_ALIGN (JOYINFOEX, dwFlags, 1)
617     TEST_FIELD_OFFSET(JOYINFOEX, dwFlags, 4)
618     TEST_FIELD_SIZE  (JOYINFOEX, dwXpos, 4)
619     TEST_FIELD_ALIGN (JOYINFOEX, dwXpos, 1)
620     TEST_FIELD_OFFSET(JOYINFOEX, dwXpos, 8)
621     TEST_FIELD_SIZE  (JOYINFOEX, dwYpos, 4)
622     TEST_FIELD_ALIGN (JOYINFOEX, dwYpos, 1)
623     TEST_FIELD_OFFSET(JOYINFOEX, dwYpos, 12)
624     TEST_FIELD_SIZE  (JOYINFOEX, dwZpos, 4)
625     TEST_FIELD_ALIGN (JOYINFOEX, dwZpos, 1)
626     TEST_FIELD_OFFSET(JOYINFOEX, dwZpos, 16)
627     TEST_FIELD_SIZE  (JOYINFOEX, dwRpos, 4)
628     TEST_FIELD_ALIGN (JOYINFOEX, dwRpos, 1)
629     TEST_FIELD_OFFSET(JOYINFOEX, dwRpos, 20)
630     TEST_FIELD_SIZE  (JOYINFOEX, dwUpos, 4)
631     TEST_FIELD_ALIGN (JOYINFOEX, dwUpos, 1)
632     TEST_FIELD_OFFSET(JOYINFOEX, dwUpos, 24)
633     TEST_FIELD_SIZE  (JOYINFOEX, dwVpos, 4)
634     TEST_FIELD_ALIGN (JOYINFOEX, dwVpos, 1)
635     TEST_FIELD_OFFSET(JOYINFOEX, dwVpos, 28)
636     TEST_FIELD_SIZE  (JOYINFOEX, dwButtons, 4)
637     TEST_FIELD_ALIGN (JOYINFOEX, dwButtons, 1)
638     TEST_FIELD_OFFSET(JOYINFOEX, dwButtons, 32)
639     TEST_FIELD_SIZE  (JOYINFOEX, dwButtonNumber, 4)
640     TEST_FIELD_ALIGN (JOYINFOEX, dwButtonNumber, 1)
641     TEST_FIELD_OFFSET(JOYINFOEX, dwButtonNumber, 36)
642     TEST_FIELD_SIZE  (JOYINFOEX, dwPOV, 4)
643     TEST_FIELD_ALIGN (JOYINFOEX, dwPOV, 1)
644     TEST_FIELD_OFFSET(JOYINFOEX, dwPOV, 40)
645     TEST_FIELD_SIZE  (JOYINFOEX, dwReserved1, 4)
646     TEST_FIELD_ALIGN (JOYINFOEX, dwReserved1, 1)
647     TEST_FIELD_OFFSET(JOYINFOEX, dwReserved1, 44)
648     TEST_FIELD_SIZE  (JOYINFOEX, dwReserved2, 4)
649     TEST_FIELD_ALIGN (JOYINFOEX, dwReserved2, 1)
650     TEST_FIELD_OFFSET(JOYINFOEX, dwReserved2, 48)
651 }
652
653 static void test_pack_MIXERCAPSA(void)
654 {
655     /* MIXERCAPSA (pack 1) */
656     TEST_FIELD_SIZE  (MIXERCAPSA, wMid, 2)
657     TEST_FIELD_ALIGN (MIXERCAPSA, wMid, 1)
658     TEST_FIELD_OFFSET(MIXERCAPSA, wMid, 0)
659     TEST_FIELD_SIZE  (MIXERCAPSA, wPid, 2)
660     TEST_FIELD_ALIGN (MIXERCAPSA, wPid, 1)
661     TEST_FIELD_OFFSET(MIXERCAPSA, wPid, 2)
662     TEST_FIELD_SIZE  (MIXERCAPSA, vDriverVersion, 4)
663     TEST_FIELD_ALIGN (MIXERCAPSA, vDriverVersion, 1)
664     TEST_FIELD_OFFSET(MIXERCAPSA, vDriverVersion, 4)
665 }
666
667 static void test_pack_MIXERCAPSW(void)
668 {
669     /* MIXERCAPSW (pack 1) */
670     TEST_FIELD_SIZE  (MIXERCAPSW, wMid, 2)
671     TEST_FIELD_ALIGN (MIXERCAPSW, wMid, 1)
672     TEST_FIELD_OFFSET(MIXERCAPSW, wMid, 0)
673     TEST_FIELD_SIZE  (MIXERCAPSW, wPid, 2)
674     TEST_FIELD_ALIGN (MIXERCAPSW, wPid, 1)
675     TEST_FIELD_OFFSET(MIXERCAPSW, wPid, 2)
676     TEST_FIELD_SIZE  (MIXERCAPSW, vDriverVersion, 4)
677     TEST_FIELD_ALIGN (MIXERCAPSW, vDriverVersion, 1)
678     TEST_FIELD_OFFSET(MIXERCAPSW, vDriverVersion, 4)
679 }
680
681 static void test_pack_MIXERCAPS2A(void)
682 {
683     /* MIXERCAPS2A (pack 1) */
684     TEST_FIELD_SIZE  (MIXERCAPS2A, wMid, 2)
685     TEST_FIELD_ALIGN (MIXERCAPS2A, wMid, 1)
686     TEST_FIELD_OFFSET(MIXERCAPS2A, wMid, 0)
687     TEST_FIELD_SIZE  (MIXERCAPS2A, wPid, 2)
688     TEST_FIELD_ALIGN (MIXERCAPS2A, wPid, 1)
689     TEST_FIELD_OFFSET(MIXERCAPS2A, wPid, 2)
690     TEST_FIELD_SIZE  (MIXERCAPS2A, vDriverVersion, 4)
691     TEST_FIELD_ALIGN (MIXERCAPS2A, vDriverVersion, 1)
692     TEST_FIELD_OFFSET(MIXERCAPS2A, vDriverVersion, 4)
693 }
694
695 static void test_pack_MIXERCAPS2W(void)
696 {
697     /* MIXERCAPS2W (pack 1) */
698     TEST_FIELD_SIZE  (MIXERCAPS2W, wMid, 2)
699     TEST_FIELD_ALIGN (MIXERCAPS2W, wMid, 1)
700     TEST_FIELD_OFFSET(MIXERCAPS2W, wMid, 0)
701     TEST_FIELD_SIZE  (MIXERCAPS2W, wPid, 2)
702     TEST_FIELD_ALIGN (MIXERCAPS2W, wPid, 1)
703     TEST_FIELD_OFFSET(MIXERCAPS2W, wPid, 2)
704     TEST_FIELD_SIZE  (MIXERCAPS2W, vDriverVersion, 4)
705     TEST_FIELD_ALIGN (MIXERCAPS2W, vDriverVersion, 1)
706     TEST_FIELD_OFFSET(MIXERCAPS2W, vDriverVersion, 4)
707 }
708
709 static void test_pack_MIXERLINEA(void)
710 {
711     /* MIXERLINEA (pack 1) */
712     TEST_FIELD_SIZE  (MIXERLINEA, cbStruct, 4)
713     TEST_FIELD_ALIGN (MIXERLINEA, cbStruct, 1)
714     TEST_FIELD_OFFSET(MIXERLINEA, cbStruct, 0)
715     TEST_FIELD_SIZE  (MIXERLINEA, dwDestination, 4)
716     TEST_FIELD_ALIGN (MIXERLINEA, dwDestination, 1)
717     TEST_FIELD_OFFSET(MIXERLINEA, dwDestination, 4)
718     TEST_FIELD_SIZE  (MIXERLINEA, dwSource, 4)
719     TEST_FIELD_ALIGN (MIXERLINEA, dwSource, 1)
720     TEST_FIELD_OFFSET(MIXERLINEA, dwSource, 8)
721     TEST_FIELD_SIZE  (MIXERLINEA, dwLineID, 4)
722     TEST_FIELD_ALIGN (MIXERLINEA, dwLineID, 1)
723     TEST_FIELD_OFFSET(MIXERLINEA, dwLineID, 12)
724     TEST_FIELD_SIZE  (MIXERLINEA, fdwLine, 4)
725     TEST_FIELD_ALIGN (MIXERLINEA, fdwLine, 1)
726     TEST_FIELD_OFFSET(MIXERLINEA, fdwLine, 16)
727     TEST_FIELD_SIZE  (MIXERLINEA, dwUser, 8)
728     TEST_FIELD_ALIGN (MIXERLINEA, dwUser, 1)
729     TEST_FIELD_OFFSET(MIXERLINEA, dwUser, 20)
730     TEST_FIELD_SIZE  (MIXERLINEA, dwComponentType, 4)
731     TEST_FIELD_ALIGN (MIXERLINEA, dwComponentType, 1)
732     TEST_FIELD_OFFSET(MIXERLINEA, dwComponentType, 28)
733     TEST_FIELD_SIZE  (MIXERLINEA, cChannels, 4)
734     TEST_FIELD_ALIGN (MIXERLINEA, cChannels, 1)
735     TEST_FIELD_OFFSET(MIXERLINEA, cChannels, 32)
736     TEST_FIELD_SIZE  (MIXERLINEA, cConnections, 4)
737     TEST_FIELD_ALIGN (MIXERLINEA, cConnections, 1)
738     TEST_FIELD_OFFSET(MIXERLINEA, cConnections, 36)
739     TEST_FIELD_SIZE  (MIXERLINEA, cControls, 4)
740     TEST_FIELD_ALIGN (MIXERLINEA, cControls, 1)
741     TEST_FIELD_OFFSET(MIXERLINEA, cControls, 40)
742 }
743
744 static void test_pack_MIXERLINEW(void)
745 {
746     /* MIXERLINEW (pack 1) */
747     TEST_FIELD_SIZE  (MIXERLINEW, cbStruct, 4)
748     TEST_FIELD_ALIGN (MIXERLINEW, cbStruct, 1)
749     TEST_FIELD_OFFSET(MIXERLINEW, cbStruct, 0)
750     TEST_FIELD_SIZE  (MIXERLINEW, dwDestination, 4)
751     TEST_FIELD_ALIGN (MIXERLINEW, dwDestination, 1)
752     TEST_FIELD_OFFSET(MIXERLINEW, dwDestination, 4)
753     TEST_FIELD_SIZE  (MIXERLINEW, dwSource, 4)
754     TEST_FIELD_ALIGN (MIXERLINEW, dwSource, 1)
755     TEST_FIELD_OFFSET(MIXERLINEW, dwSource, 8)
756     TEST_FIELD_SIZE  (MIXERLINEW, dwLineID, 4)
757     TEST_FIELD_ALIGN (MIXERLINEW, dwLineID, 1)
758     TEST_FIELD_OFFSET(MIXERLINEW, dwLineID, 12)
759     TEST_FIELD_SIZE  (MIXERLINEW, fdwLine, 4)
760     TEST_FIELD_ALIGN (MIXERLINEW, fdwLine, 1)
761     TEST_FIELD_OFFSET(MIXERLINEW, fdwLine, 16)
762     TEST_FIELD_SIZE  (MIXERLINEW, dwUser, 8)
763     TEST_FIELD_ALIGN (MIXERLINEW, dwUser, 1)
764     TEST_FIELD_OFFSET(MIXERLINEW, dwUser, 20)
765     TEST_FIELD_SIZE  (MIXERLINEW, dwComponentType, 4)
766     TEST_FIELD_ALIGN (MIXERLINEW, dwComponentType, 1)
767     TEST_FIELD_OFFSET(MIXERLINEW, dwComponentType, 28)
768     TEST_FIELD_SIZE  (MIXERLINEW, cChannels, 4)
769     TEST_FIELD_ALIGN (MIXERLINEW, cChannels, 1)
770     TEST_FIELD_OFFSET(MIXERLINEW, cChannels, 32)
771     TEST_FIELD_SIZE  (MIXERLINEW, cConnections, 4)
772     TEST_FIELD_ALIGN (MIXERLINEW, cConnections, 1)
773     TEST_FIELD_OFFSET(MIXERLINEW, cConnections, 36)
774     TEST_FIELD_SIZE  (MIXERLINEW, cControls, 4)
775     TEST_FIELD_ALIGN (MIXERLINEW, cControls, 1)
776     TEST_FIELD_OFFSET(MIXERLINEW, cControls, 40)
777 }
778
779 static void test_pack_MIXERCONTROLA(void)
780 {
781     /* MIXERCONTROLA (pack 1) */
782     TEST_FIELD_SIZE  (MIXERCONTROLA, cbStruct, 4)
783     TEST_FIELD_ALIGN (MIXERCONTROLA, cbStruct, 1)
784     TEST_FIELD_OFFSET(MIXERCONTROLA, cbStruct, 0)
785     TEST_FIELD_SIZE  (MIXERCONTROLA, dwControlID, 4)
786     TEST_FIELD_ALIGN (MIXERCONTROLA, dwControlID, 1)
787     TEST_FIELD_OFFSET(MIXERCONTROLA, dwControlID, 4)
788     TEST_FIELD_SIZE  (MIXERCONTROLA, dwControlType, 4)
789     TEST_FIELD_ALIGN (MIXERCONTROLA, dwControlType, 1)
790     TEST_FIELD_OFFSET(MIXERCONTROLA, dwControlType, 8)
791     TEST_FIELD_SIZE  (MIXERCONTROLA, fdwControl, 4)
792     TEST_FIELD_ALIGN (MIXERCONTROLA, fdwControl, 1)
793     TEST_FIELD_OFFSET(MIXERCONTROLA, fdwControl, 12)
794     TEST_FIELD_SIZE  (MIXERCONTROLA, cMultipleItems, 4)
795     TEST_FIELD_ALIGN (MIXERCONTROLA, cMultipleItems, 1)
796     TEST_FIELD_OFFSET(MIXERCONTROLA, cMultipleItems, 16)
797 }
798
799 static void test_pack_MIXERCONTROLW(void)
800 {
801     /* MIXERCONTROLW (pack 1) */
802     TEST_FIELD_SIZE  (MIXERCONTROLW, cbStruct, 4)
803     TEST_FIELD_ALIGN (MIXERCONTROLW, cbStruct, 1)
804     TEST_FIELD_OFFSET(MIXERCONTROLW, cbStruct, 0)
805     TEST_FIELD_SIZE  (MIXERCONTROLW, dwControlID, 4)
806     TEST_FIELD_ALIGN (MIXERCONTROLW, dwControlID, 1)
807     TEST_FIELD_OFFSET(MIXERCONTROLW, dwControlID, 4)
808     TEST_FIELD_SIZE  (MIXERCONTROLW, dwControlType, 4)
809     TEST_FIELD_ALIGN (MIXERCONTROLW, dwControlType, 1)
810     TEST_FIELD_OFFSET(MIXERCONTROLW, dwControlType, 8)
811     TEST_FIELD_SIZE  (MIXERCONTROLW, fdwControl, 4)
812     TEST_FIELD_ALIGN (MIXERCONTROLW, fdwControl, 1)
813     TEST_FIELD_OFFSET(MIXERCONTROLW, fdwControl, 12)
814     TEST_FIELD_SIZE  (MIXERCONTROLW, cMultipleItems, 4)
815     TEST_FIELD_ALIGN (MIXERCONTROLW, cMultipleItems, 1)
816     TEST_FIELD_OFFSET(MIXERCONTROLW, cMultipleItems, 16)
817 }
818
819 static void test_pack_MIXERCONTROLDETAILS(void)
820 {
821     /* MIXERCONTROLDETAILS (pack 1) */
822     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS, cbStruct, 4)
823     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS, cbStruct, 1)
824     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS, cbStruct, 0)
825     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS, dwControlID, 4)
826     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS, dwControlID, 1)
827     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS, dwControlID, 4)
828     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS, cChannels, 4)
829     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS, cChannels, 1)
830     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS, cChannels, 8)
831 }
832
833 static void test_pack_MIXERCONTROLDETAILS_LISTTEXTA(void)
834 {
835     /* MIXERCONTROLDETAILS_LISTTEXTA (pack 1) */
836     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_LISTTEXTA, dwParam1, 4)
837     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_LISTTEXTA, dwParam1, 1)
838     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_LISTTEXTA, dwParam1, 0)
839     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_LISTTEXTA, dwParam2, 4)
840     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_LISTTEXTA, dwParam2, 1)
841     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_LISTTEXTA, dwParam2, 4)
842 }
843
844 static void test_pack_MIXERCONTROLDETAILS_LISTTEXTW(void)
845 {
846     /* MIXERCONTROLDETAILS_LISTTEXTW (pack 1) */
847     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_LISTTEXTW, dwParam1, 4)
848     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_LISTTEXTW, dwParam1, 1)
849     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_LISTTEXTW, dwParam1, 0)
850     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_LISTTEXTW, dwParam2, 4)
851     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_LISTTEXTW, dwParam2, 1)
852     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_LISTTEXTW, dwParam2, 4)
853 }
854
855 static void test_pack_MIXERCONTROLDETAILS_BOOLEAN(void)
856 {
857     /* MIXERCONTROLDETAILS_BOOLEAN (pack 1) */
858     TEST_TYPE_SIZE   (MIXERCONTROLDETAILS_BOOLEAN, 4)
859     TEST_TYPE_ALIGN  (MIXERCONTROLDETAILS_BOOLEAN, 1)
860     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_BOOLEAN, fValue, 4)
861     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_BOOLEAN, fValue, 1)
862     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_BOOLEAN, fValue, 0)
863 }
864
865 static void test_pack_MIXERCONTROLDETAILS_SIGNED(void)
866 {
867     /* MIXERCONTROLDETAILS_SIGNED (pack 1) */
868     TEST_TYPE_SIZE   (MIXERCONTROLDETAILS_SIGNED, 4)
869     TEST_TYPE_ALIGN  (MIXERCONTROLDETAILS_SIGNED, 1)
870     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_SIGNED, lValue, 4)
871     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_SIGNED, lValue, 1)
872     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_SIGNED, lValue, 0)
873 }
874
875 static void test_pack_MIXERCONTROLDETAILS_UNSIGNED(void)
876 {
877     /* MIXERCONTROLDETAILS_UNSIGNED (pack 1) */
878     TEST_TYPE_SIZE   (MIXERCONTROLDETAILS_UNSIGNED, 4)
879     TEST_TYPE_ALIGN  (MIXERCONTROLDETAILS_UNSIGNED, 1)
880     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_UNSIGNED, dwValue, 4)
881     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_UNSIGNED, dwValue, 1)
882     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_UNSIGNED, dwValue, 0)
883 }
884
885 static void test_pack_MMIOINFO(void)
886 {
887     /* MMIOINFO (pack 1) */
888     TEST_FIELD_SIZE  (MMIOINFO, dwFlags, 4)
889     TEST_FIELD_ALIGN (MMIOINFO, dwFlags, 1)
890     TEST_FIELD_OFFSET(MMIOINFO, dwFlags, 0)
891     TEST_FIELD_SIZE  (MMIOINFO, fccIOProc, 4)
892     TEST_FIELD_ALIGN (MMIOINFO, fccIOProc, 1)
893     TEST_FIELD_OFFSET(MMIOINFO, fccIOProc, 4)
894     TEST_FIELD_SIZE  (MMIOINFO, pIOProc, 8)
895     TEST_FIELD_ALIGN (MMIOINFO, pIOProc, 1)
896     TEST_FIELD_OFFSET(MMIOINFO, pIOProc, 8)
897     TEST_FIELD_SIZE  (MMIOINFO, wErrorRet, 4)
898     TEST_FIELD_ALIGN (MMIOINFO, wErrorRet, 1)
899     TEST_FIELD_OFFSET(MMIOINFO, wErrorRet, 16)
900 }
901
902 static void test_pack_MMCKINFO(void)
903 {
904     /* MMCKINFO (pack 1) */
905     TEST_TYPE_SIZE   (MMCKINFO, 20)
906     TEST_TYPE_ALIGN  (MMCKINFO, 1)
907     TEST_FIELD_SIZE  (MMCKINFO, ckid, 4)
908     TEST_FIELD_ALIGN (MMCKINFO, ckid, 1)
909     TEST_FIELD_OFFSET(MMCKINFO, ckid, 0)
910     TEST_FIELD_SIZE  (MMCKINFO, cksize, 4)
911     TEST_FIELD_ALIGN (MMCKINFO, cksize, 1)
912     TEST_FIELD_OFFSET(MMCKINFO, cksize, 4)
913     TEST_FIELD_SIZE  (MMCKINFO, fccType, 4)
914     TEST_FIELD_ALIGN (MMCKINFO, fccType, 1)
915     TEST_FIELD_OFFSET(MMCKINFO, fccType, 8)
916     TEST_FIELD_SIZE  (MMCKINFO, dwDataOffset, 4)
917     TEST_FIELD_ALIGN (MMCKINFO, dwDataOffset, 1)
918     TEST_FIELD_OFFSET(MMCKINFO, dwDataOffset, 12)
919     TEST_FIELD_SIZE  (MMCKINFO, dwFlags, 4)
920     TEST_FIELD_ALIGN (MMCKINFO, dwFlags, 1)
921     TEST_FIELD_OFFSET(MMCKINFO, dwFlags, 16)
922 }
923
924 static void test_pack_MCI_GENERIC_PARMS(void)
925 {
926     /* MCI_GENERIC_PARMS (pack 1) */
927     TEST_TYPE_SIZE   (MCI_GENERIC_PARMS, 8)
928     TEST_TYPE_ALIGN  (MCI_GENERIC_PARMS, 1)
929     TEST_FIELD_SIZE  (MCI_GENERIC_PARMS, dwCallback, 8)
930     TEST_FIELD_ALIGN (MCI_GENERIC_PARMS, dwCallback, 1)
931     TEST_FIELD_OFFSET(MCI_GENERIC_PARMS, dwCallback, 0)
932 }
933
934 static void test_pack_MCI_OPEN_PARMSA(void)
935 {
936     /* MCI_OPEN_PARMSA (pack 1) */
937     TEST_TYPE_SIZE   (MCI_OPEN_PARMSA, 36)
938     TEST_TYPE_ALIGN  (MCI_OPEN_PARMSA, 1)
939     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, dwCallback, 8)
940     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, dwCallback, 1)
941     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, dwCallback, 0)
942     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, wDeviceID, 4)
943     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, wDeviceID, 1)
944     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, wDeviceID, 8)
945     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, lpstrDeviceType, 8)
946     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, lpstrDeviceType, 1)
947     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, lpstrDeviceType, 12)
948     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, lpstrElementName, 8)
949     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, lpstrElementName, 1)
950     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, lpstrElementName, 20)
951     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, lpstrAlias, 8)
952     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, lpstrAlias, 1)
953     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, lpstrAlias, 28)
954 }
955
956 static void test_pack_MCI_OPEN_PARMSW(void)
957 {
958     /* MCI_OPEN_PARMSW (pack 1) */
959     TEST_TYPE_SIZE   (MCI_OPEN_PARMSW, 36)
960     TEST_TYPE_ALIGN  (MCI_OPEN_PARMSW, 1)
961     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, dwCallback, 8)
962     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, dwCallback, 1)
963     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, dwCallback, 0)
964     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, wDeviceID, 4)
965     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, wDeviceID, 1)
966     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, wDeviceID, 8)
967     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, lpstrDeviceType, 8)
968     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, lpstrDeviceType, 1)
969     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, lpstrDeviceType, 12)
970     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, lpstrElementName, 8)
971     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, lpstrElementName, 1)
972     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, lpstrElementName, 20)
973     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, lpstrAlias, 8)
974     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, lpstrAlias, 1)
975     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, lpstrAlias, 28)
976 }
977
978 static void test_pack_MCI_PLAY_PARMS(void)
979 {
980     /* MCI_PLAY_PARMS (pack 1) */
981     TEST_TYPE_SIZE   (MCI_PLAY_PARMS, 16)
982     TEST_TYPE_ALIGN  (MCI_PLAY_PARMS, 1)
983     TEST_FIELD_SIZE  (MCI_PLAY_PARMS, dwCallback, 8)
984     TEST_FIELD_ALIGN (MCI_PLAY_PARMS, dwCallback, 1)
985     TEST_FIELD_OFFSET(MCI_PLAY_PARMS, dwCallback, 0)
986     TEST_FIELD_SIZE  (MCI_PLAY_PARMS, dwFrom, 4)
987     TEST_FIELD_ALIGN (MCI_PLAY_PARMS, dwFrom, 1)
988     TEST_FIELD_OFFSET(MCI_PLAY_PARMS, dwFrom, 8)
989     TEST_FIELD_SIZE  (MCI_PLAY_PARMS, dwTo, 4)
990     TEST_FIELD_ALIGN (MCI_PLAY_PARMS, dwTo, 1)
991     TEST_FIELD_OFFSET(MCI_PLAY_PARMS, dwTo, 12)
992 }
993
994 static void test_pack_MCI_SEEK_PARMS(void)
995 {
996     /* MCI_SEEK_PARMS (pack 1) */
997     TEST_TYPE_SIZE   (MCI_SEEK_PARMS, 12)
998     TEST_TYPE_ALIGN  (MCI_SEEK_PARMS, 1)
999     TEST_FIELD_SIZE  (MCI_SEEK_PARMS, dwCallback, 8)
1000     TEST_FIELD_ALIGN (MCI_SEEK_PARMS, dwCallback, 1)
1001     TEST_FIELD_OFFSET(MCI_SEEK_PARMS, dwCallback, 0)
1002     TEST_FIELD_SIZE  (MCI_SEEK_PARMS, dwTo, 4)
1003     TEST_FIELD_ALIGN (MCI_SEEK_PARMS, dwTo, 1)
1004     TEST_FIELD_OFFSET(MCI_SEEK_PARMS, dwTo, 8)
1005 }
1006
1007 static void test_pack_MCI_STATUS_PARMS(void)
1008 {
1009     /* MCI_STATUS_PARMS (pack 1) */
1010     TEST_TYPE_SIZE   (MCI_STATUS_PARMS, 24)
1011     TEST_TYPE_ALIGN  (MCI_STATUS_PARMS, 1)
1012     TEST_FIELD_SIZE  (MCI_STATUS_PARMS, dwCallback, 8)
1013     TEST_FIELD_ALIGN (MCI_STATUS_PARMS, dwCallback, 1)
1014     TEST_FIELD_OFFSET(MCI_STATUS_PARMS, dwCallback, 0)
1015     TEST_FIELD_SIZE  (MCI_STATUS_PARMS, dwReturn, 8)
1016     TEST_FIELD_ALIGN (MCI_STATUS_PARMS, dwReturn, 1)
1017     TEST_FIELD_OFFSET(MCI_STATUS_PARMS, dwReturn, 8)
1018     TEST_FIELD_SIZE  (MCI_STATUS_PARMS, dwItem, 4)
1019     TEST_FIELD_ALIGN (MCI_STATUS_PARMS, dwItem, 1)
1020     TEST_FIELD_OFFSET(MCI_STATUS_PARMS, dwItem, 16)
1021     TEST_FIELD_SIZE  (MCI_STATUS_PARMS, dwTrack, 4)
1022     TEST_FIELD_ALIGN (MCI_STATUS_PARMS, dwTrack, 1)
1023     TEST_FIELD_OFFSET(MCI_STATUS_PARMS, dwTrack, 20)
1024 }
1025
1026 static void test_pack_MCI_INFO_PARMSA(void)
1027 {
1028     /* MCI_INFO_PARMSA (pack 1) */
1029     TEST_TYPE_SIZE   (MCI_INFO_PARMSA, 20)
1030     TEST_TYPE_ALIGN  (MCI_INFO_PARMSA, 1)
1031     TEST_FIELD_SIZE  (MCI_INFO_PARMSA, dwCallback, 8)
1032     TEST_FIELD_ALIGN (MCI_INFO_PARMSA, dwCallback, 1)
1033     TEST_FIELD_OFFSET(MCI_INFO_PARMSA, dwCallback, 0)
1034     TEST_FIELD_SIZE  (MCI_INFO_PARMSA, lpstrReturn, 8)
1035     TEST_FIELD_ALIGN (MCI_INFO_PARMSA, lpstrReturn, 1)
1036     TEST_FIELD_OFFSET(MCI_INFO_PARMSA, lpstrReturn, 8)
1037     TEST_FIELD_SIZE  (MCI_INFO_PARMSA, dwRetSize, 4)
1038     TEST_FIELD_ALIGN (MCI_INFO_PARMSA, dwRetSize, 1)
1039     TEST_FIELD_OFFSET(MCI_INFO_PARMSA, dwRetSize, 16)
1040 }
1041
1042 static void test_pack_MCI_INFO_PARMSW(void)
1043 {
1044     /* MCI_INFO_PARMSW (pack 1) */
1045     TEST_TYPE_SIZE   (MCI_INFO_PARMSW, 20)
1046     TEST_TYPE_ALIGN  (MCI_INFO_PARMSW, 1)
1047     TEST_FIELD_SIZE  (MCI_INFO_PARMSW, dwCallback, 8)
1048     TEST_FIELD_ALIGN (MCI_INFO_PARMSW, dwCallback, 1)
1049     TEST_FIELD_OFFSET(MCI_INFO_PARMSW, dwCallback, 0)
1050     TEST_FIELD_SIZE  (MCI_INFO_PARMSW, lpstrReturn, 8)
1051     TEST_FIELD_ALIGN (MCI_INFO_PARMSW, lpstrReturn, 1)
1052     TEST_FIELD_OFFSET(MCI_INFO_PARMSW, lpstrReturn, 8)
1053     TEST_FIELD_SIZE  (MCI_INFO_PARMSW, dwRetSize, 4)
1054     TEST_FIELD_ALIGN (MCI_INFO_PARMSW, dwRetSize, 1)
1055     TEST_FIELD_OFFSET(MCI_INFO_PARMSW, dwRetSize, 16)
1056 }
1057
1058 static void test_pack_MCI_GETDEVCAPS_PARMS(void)
1059 {
1060     /* MCI_GETDEVCAPS_PARMS (pack 1) */
1061     TEST_TYPE_SIZE   (MCI_GETDEVCAPS_PARMS, 16)
1062     TEST_TYPE_ALIGN  (MCI_GETDEVCAPS_PARMS, 1)
1063     TEST_FIELD_SIZE  (MCI_GETDEVCAPS_PARMS, dwCallback, 8)
1064     TEST_FIELD_ALIGN (MCI_GETDEVCAPS_PARMS, dwCallback, 1)
1065     TEST_FIELD_OFFSET(MCI_GETDEVCAPS_PARMS, dwCallback, 0)
1066     TEST_FIELD_SIZE  (MCI_GETDEVCAPS_PARMS, dwReturn, 4)
1067     TEST_FIELD_ALIGN (MCI_GETDEVCAPS_PARMS, dwReturn, 1)
1068     TEST_FIELD_OFFSET(MCI_GETDEVCAPS_PARMS, dwReturn, 8)
1069     TEST_FIELD_SIZE  (MCI_GETDEVCAPS_PARMS, dwItem, 4)
1070     TEST_FIELD_ALIGN (MCI_GETDEVCAPS_PARMS, dwItem, 1)
1071     TEST_FIELD_OFFSET(MCI_GETDEVCAPS_PARMS, dwItem, 12)
1072 }
1073
1074 static void test_pack_MCI_SYSINFO_PARMSA(void)
1075 {
1076     /* MCI_SYSINFO_PARMSA (pack 1) */
1077     TEST_TYPE_SIZE   (MCI_SYSINFO_PARMSA, 28)
1078     TEST_TYPE_ALIGN  (MCI_SYSINFO_PARMSA, 1)
1079     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, dwCallback, 8)
1080     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, dwCallback, 1)
1081     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, dwCallback, 0)
1082     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, lpstrReturn, 8)
1083     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, lpstrReturn, 1)
1084     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, lpstrReturn, 8)
1085     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, dwRetSize, 4)
1086     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, dwRetSize, 1)
1087     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, dwRetSize, 16)
1088     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, dwNumber, 4)
1089     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, dwNumber, 1)
1090     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, dwNumber, 20)
1091     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, wDeviceType, 4)
1092     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, wDeviceType, 1)
1093     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, wDeviceType, 24)
1094 }
1095
1096 static void test_pack_MCI_SYSINFO_PARMSW(void)
1097 {
1098     /* MCI_SYSINFO_PARMSW (pack 1) */
1099     TEST_TYPE_SIZE   (MCI_SYSINFO_PARMSW, 28)
1100     TEST_TYPE_ALIGN  (MCI_SYSINFO_PARMSW, 1)
1101     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, dwCallback, 8)
1102     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, dwCallback, 1)
1103     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, dwCallback, 0)
1104     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, lpstrReturn, 8)
1105     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, lpstrReturn, 1)
1106     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, lpstrReturn, 8)
1107     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, dwRetSize, 4)
1108     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, dwRetSize, 1)
1109     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, dwRetSize, 16)
1110     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, dwNumber, 4)
1111     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, dwNumber, 1)
1112     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, dwNumber, 20)
1113     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, wDeviceType, 4)
1114     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, wDeviceType, 1)
1115     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, wDeviceType, 24)
1116 }
1117
1118 static void test_pack_MCI_SET_PARMS(void)
1119 {
1120     /* MCI_SET_PARMS (pack 1) */
1121     TEST_TYPE_SIZE   (MCI_SET_PARMS, 16)
1122     TEST_TYPE_ALIGN  (MCI_SET_PARMS, 1)
1123     TEST_FIELD_SIZE  (MCI_SET_PARMS, dwCallback, 8)
1124     TEST_FIELD_ALIGN (MCI_SET_PARMS, dwCallback, 1)
1125     TEST_FIELD_OFFSET(MCI_SET_PARMS, dwCallback, 0)
1126     TEST_FIELD_SIZE  (MCI_SET_PARMS, dwTimeFormat, 4)
1127     TEST_FIELD_ALIGN (MCI_SET_PARMS, dwTimeFormat, 1)
1128     TEST_FIELD_OFFSET(MCI_SET_PARMS, dwTimeFormat, 8)
1129     TEST_FIELD_SIZE  (MCI_SET_PARMS, dwAudio, 4)
1130     TEST_FIELD_ALIGN (MCI_SET_PARMS, dwAudio, 1)
1131     TEST_FIELD_OFFSET(MCI_SET_PARMS, dwAudio, 12)
1132 }
1133
1134 static void test_pack_MCI_BREAK_PARMS(void)
1135 {
1136     /* MCI_BREAK_PARMS (pack 1) */
1137     TEST_TYPE_SIZE   (MCI_BREAK_PARMS, 20)
1138     TEST_TYPE_ALIGN  (MCI_BREAK_PARMS, 1)
1139     TEST_FIELD_SIZE  (MCI_BREAK_PARMS, dwCallback, 8)
1140     TEST_FIELD_ALIGN (MCI_BREAK_PARMS, dwCallback, 1)
1141     TEST_FIELD_OFFSET(MCI_BREAK_PARMS, dwCallback, 0)
1142     TEST_FIELD_SIZE  (MCI_BREAK_PARMS, nVirtKey, 4)
1143     TEST_FIELD_ALIGN (MCI_BREAK_PARMS, nVirtKey, 1)
1144     TEST_FIELD_OFFSET(MCI_BREAK_PARMS, nVirtKey, 8)
1145     TEST_FIELD_SIZE  (MCI_BREAK_PARMS, hwndBreak, 8)
1146     TEST_FIELD_ALIGN (MCI_BREAK_PARMS, hwndBreak, 1)
1147     TEST_FIELD_OFFSET(MCI_BREAK_PARMS, hwndBreak, 12)
1148 }
1149
1150 static void test_pack_MCI_SOUND_PARMSA(void)
1151 {
1152     /* MCI_SOUND_PARMSA (pack 1) */
1153     TEST_TYPE_SIZE   (MCI_SOUND_PARMSA, 16)
1154     TEST_TYPE_ALIGN  (MCI_SOUND_PARMSA, 1)
1155     TEST_FIELD_SIZE  (MCI_SOUND_PARMSA, dwCallback, 8)
1156     TEST_FIELD_ALIGN (MCI_SOUND_PARMSA, dwCallback, 1)
1157     TEST_FIELD_OFFSET(MCI_SOUND_PARMSA, dwCallback, 0)
1158     TEST_FIELD_SIZE  (MCI_SOUND_PARMSA, lpstrSoundName, 8)
1159     TEST_FIELD_ALIGN (MCI_SOUND_PARMSA, lpstrSoundName, 1)
1160     TEST_FIELD_OFFSET(MCI_SOUND_PARMSA, lpstrSoundName, 8)
1161 }
1162
1163 static void test_pack_MCI_SOUND_PARMSW(void)
1164 {
1165     /* MCI_SOUND_PARMSW (pack 1) */
1166     TEST_TYPE_SIZE   (MCI_SOUND_PARMSW, 16)
1167     TEST_TYPE_ALIGN  (MCI_SOUND_PARMSW, 1)
1168     TEST_FIELD_SIZE  (MCI_SOUND_PARMSW, dwCallback, 8)
1169     TEST_FIELD_ALIGN (MCI_SOUND_PARMSW, dwCallback, 1)
1170     TEST_FIELD_OFFSET(MCI_SOUND_PARMSW, dwCallback, 0)
1171     TEST_FIELD_SIZE  (MCI_SOUND_PARMSW, lpstrSoundName, 8)
1172     TEST_FIELD_ALIGN (MCI_SOUND_PARMSW, lpstrSoundName, 1)
1173     TEST_FIELD_OFFSET(MCI_SOUND_PARMSW, lpstrSoundName, 8)
1174 }
1175
1176 static void test_pack_MCI_SAVE_PARMSA(void)
1177 {
1178     /* MCI_SAVE_PARMSA (pack 1) */
1179     TEST_TYPE_SIZE   (MCI_SAVE_PARMSA, 16)
1180     TEST_TYPE_ALIGN  (MCI_SAVE_PARMSA, 1)
1181     TEST_FIELD_SIZE  (MCI_SAVE_PARMSA, dwCallback, 8)
1182     TEST_FIELD_ALIGN (MCI_SAVE_PARMSA, dwCallback, 1)
1183     TEST_FIELD_OFFSET(MCI_SAVE_PARMSA, dwCallback, 0)
1184     TEST_FIELD_SIZE  (MCI_SAVE_PARMSA, lpfilename, 8)
1185     TEST_FIELD_ALIGN (MCI_SAVE_PARMSA, lpfilename, 1)
1186     TEST_FIELD_OFFSET(MCI_SAVE_PARMSA, lpfilename, 8)
1187 }
1188
1189 static void test_pack_MCI_SAVE_PARMSW(void)
1190 {
1191     /* MCI_SAVE_PARMSW (pack 1) */
1192     TEST_TYPE_SIZE   (MCI_SAVE_PARMSW, 16)
1193     TEST_TYPE_ALIGN  (MCI_SAVE_PARMSW, 1)
1194     TEST_FIELD_SIZE  (MCI_SAVE_PARMSW, dwCallback, 8)
1195     TEST_FIELD_ALIGN (MCI_SAVE_PARMSW, dwCallback, 1)
1196     TEST_FIELD_OFFSET(MCI_SAVE_PARMSW, dwCallback, 0)
1197     TEST_FIELD_SIZE  (MCI_SAVE_PARMSW, lpfilename, 8)
1198     TEST_FIELD_ALIGN (MCI_SAVE_PARMSW, lpfilename, 1)
1199     TEST_FIELD_OFFSET(MCI_SAVE_PARMSW, lpfilename, 8)
1200 }
1201
1202 static void test_pack_MCI_LOAD_PARMSA(void)
1203 {
1204     /* MCI_LOAD_PARMSA (pack 1) */
1205     TEST_TYPE_SIZE   (MCI_LOAD_PARMSA, 16)
1206     TEST_TYPE_ALIGN  (MCI_LOAD_PARMSA, 1)
1207     TEST_FIELD_SIZE  (MCI_LOAD_PARMSA, dwCallback, 8)
1208     TEST_FIELD_ALIGN (MCI_LOAD_PARMSA, dwCallback, 1)
1209     TEST_FIELD_OFFSET(MCI_LOAD_PARMSA, dwCallback, 0)
1210     TEST_FIELD_SIZE  (MCI_LOAD_PARMSA, lpfilename, 8)
1211     TEST_FIELD_ALIGN (MCI_LOAD_PARMSA, lpfilename, 1)
1212     TEST_FIELD_OFFSET(MCI_LOAD_PARMSA, lpfilename, 8)
1213 }
1214
1215 static void test_pack_MCI_LOAD_PARMSW(void)
1216 {
1217     /* MCI_LOAD_PARMSW (pack 1) */
1218     TEST_TYPE_SIZE   (MCI_LOAD_PARMSW, 16)
1219     TEST_TYPE_ALIGN  (MCI_LOAD_PARMSW, 1)
1220     TEST_FIELD_SIZE  (MCI_LOAD_PARMSW, dwCallback, 8)
1221     TEST_FIELD_ALIGN (MCI_LOAD_PARMSW, dwCallback, 1)
1222     TEST_FIELD_OFFSET(MCI_LOAD_PARMSW, dwCallback, 0)
1223     TEST_FIELD_SIZE  (MCI_LOAD_PARMSW, lpfilename, 8)
1224     TEST_FIELD_ALIGN (MCI_LOAD_PARMSW, lpfilename, 1)
1225     TEST_FIELD_OFFSET(MCI_LOAD_PARMSW, lpfilename, 8)
1226 }
1227
1228 static void test_pack_MCI_RECORD_PARMS(void)
1229 {
1230     /* MCI_RECORD_PARMS (pack 1) */
1231     TEST_TYPE_SIZE   (MCI_RECORD_PARMS, 16)
1232     TEST_TYPE_ALIGN  (MCI_RECORD_PARMS, 1)
1233     TEST_FIELD_SIZE  (MCI_RECORD_PARMS, dwCallback, 8)
1234     TEST_FIELD_ALIGN (MCI_RECORD_PARMS, dwCallback, 1)
1235     TEST_FIELD_OFFSET(MCI_RECORD_PARMS, dwCallback, 0)
1236     TEST_FIELD_SIZE  (MCI_RECORD_PARMS, dwFrom, 4)
1237     TEST_FIELD_ALIGN (MCI_RECORD_PARMS, dwFrom, 1)
1238     TEST_FIELD_OFFSET(MCI_RECORD_PARMS, dwFrom, 8)
1239     TEST_FIELD_SIZE  (MCI_RECORD_PARMS, dwTo, 4)
1240     TEST_FIELD_ALIGN (MCI_RECORD_PARMS, dwTo, 1)
1241     TEST_FIELD_OFFSET(MCI_RECORD_PARMS, dwTo, 12)
1242 }
1243
1244 static void test_pack_MCI_VD_PLAY_PARMS(void)
1245 {
1246     /* MCI_VD_PLAY_PARMS (pack 1) */
1247     TEST_TYPE_SIZE   (MCI_VD_PLAY_PARMS, 20)
1248     TEST_TYPE_ALIGN  (MCI_VD_PLAY_PARMS, 1)
1249     TEST_FIELD_SIZE  (MCI_VD_PLAY_PARMS, dwCallback, 8)
1250     TEST_FIELD_ALIGN (MCI_VD_PLAY_PARMS, dwCallback, 1)
1251     TEST_FIELD_OFFSET(MCI_VD_PLAY_PARMS, dwCallback, 0)
1252     TEST_FIELD_SIZE  (MCI_VD_PLAY_PARMS, dwFrom, 4)
1253     TEST_FIELD_ALIGN (MCI_VD_PLAY_PARMS, dwFrom, 1)
1254     TEST_FIELD_OFFSET(MCI_VD_PLAY_PARMS, dwFrom, 8)
1255     TEST_FIELD_SIZE  (MCI_VD_PLAY_PARMS, dwTo, 4)
1256     TEST_FIELD_ALIGN (MCI_VD_PLAY_PARMS, dwTo, 1)
1257     TEST_FIELD_OFFSET(MCI_VD_PLAY_PARMS, dwTo, 12)
1258     TEST_FIELD_SIZE  (MCI_VD_PLAY_PARMS, dwSpeed, 4)
1259     TEST_FIELD_ALIGN (MCI_VD_PLAY_PARMS, dwSpeed, 1)
1260     TEST_FIELD_OFFSET(MCI_VD_PLAY_PARMS, dwSpeed, 16)
1261 }
1262
1263 static void test_pack_MCI_VD_STEP_PARMS(void)
1264 {
1265     /* MCI_VD_STEP_PARMS (pack 1) */
1266     TEST_TYPE_SIZE   (MCI_VD_STEP_PARMS, 12)
1267     TEST_TYPE_ALIGN  (MCI_VD_STEP_PARMS, 1)
1268     TEST_FIELD_SIZE  (MCI_VD_STEP_PARMS, dwCallback, 8)
1269     TEST_FIELD_ALIGN (MCI_VD_STEP_PARMS, dwCallback, 1)
1270     TEST_FIELD_OFFSET(MCI_VD_STEP_PARMS, dwCallback, 0)
1271     TEST_FIELD_SIZE  (MCI_VD_STEP_PARMS, dwFrames, 4)
1272     TEST_FIELD_ALIGN (MCI_VD_STEP_PARMS, dwFrames, 1)
1273     TEST_FIELD_OFFSET(MCI_VD_STEP_PARMS, dwFrames, 8)
1274 }
1275
1276 static void test_pack_MCI_VD_ESCAPE_PARMSA(void)
1277 {
1278     /* MCI_VD_ESCAPE_PARMSA (pack 1) */
1279     TEST_TYPE_SIZE   (MCI_VD_ESCAPE_PARMSA, 16)
1280     TEST_TYPE_ALIGN  (MCI_VD_ESCAPE_PARMSA, 1)
1281     TEST_FIELD_SIZE  (MCI_VD_ESCAPE_PARMSA, dwCallback, 8)
1282     TEST_FIELD_ALIGN (MCI_VD_ESCAPE_PARMSA, dwCallback, 1)
1283     TEST_FIELD_OFFSET(MCI_VD_ESCAPE_PARMSA, dwCallback, 0)
1284     TEST_FIELD_SIZE  (MCI_VD_ESCAPE_PARMSA, lpstrCommand, 8)
1285     TEST_FIELD_ALIGN (MCI_VD_ESCAPE_PARMSA, lpstrCommand, 1)
1286     TEST_FIELD_OFFSET(MCI_VD_ESCAPE_PARMSA, lpstrCommand, 8)
1287 }
1288
1289 static void test_pack_MCI_VD_ESCAPE_PARMSW(void)
1290 {
1291     /* MCI_VD_ESCAPE_PARMSW (pack 1) */
1292     TEST_TYPE_SIZE   (MCI_VD_ESCAPE_PARMSW, 16)
1293     TEST_TYPE_ALIGN  (MCI_VD_ESCAPE_PARMSW, 1)
1294     TEST_FIELD_SIZE  (MCI_VD_ESCAPE_PARMSW, dwCallback, 8)
1295     TEST_FIELD_ALIGN (MCI_VD_ESCAPE_PARMSW, dwCallback, 1)
1296     TEST_FIELD_OFFSET(MCI_VD_ESCAPE_PARMSW, dwCallback, 0)
1297     TEST_FIELD_SIZE  (MCI_VD_ESCAPE_PARMSW, lpstrCommand, 8)
1298     TEST_FIELD_ALIGN (MCI_VD_ESCAPE_PARMSW, lpstrCommand, 1)
1299     TEST_FIELD_OFFSET(MCI_VD_ESCAPE_PARMSW, lpstrCommand, 8)
1300 }
1301
1302 static void test_pack_MCI_WAVE_OPEN_PARMSA(void)
1303 {
1304     /* MCI_WAVE_OPEN_PARMSA (pack 1) */
1305     TEST_TYPE_SIZE   (MCI_WAVE_OPEN_PARMSA, 40)
1306     TEST_TYPE_ALIGN  (MCI_WAVE_OPEN_PARMSA, 1)
1307     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, dwCallback, 8)
1308     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, dwCallback, 1)
1309     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, dwCallback, 0)
1310     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, wDeviceID, 4)
1311     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, wDeviceID, 1)
1312     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, wDeviceID, 8)
1313     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, lpstrDeviceType, 8)
1314     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, lpstrDeviceType, 1)
1315     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, lpstrDeviceType, 12)
1316     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, lpstrElementName, 8)
1317     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, lpstrElementName, 1)
1318     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, lpstrElementName, 20)
1319     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, lpstrAlias, 8)
1320     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, lpstrAlias, 1)
1321     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, lpstrAlias, 28)
1322     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, dwBufferSeconds, 4)
1323     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, dwBufferSeconds, 1)
1324     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, dwBufferSeconds, 36)
1325 }
1326
1327 static void test_pack_MCI_WAVE_OPEN_PARMSW(void)
1328 {
1329     /* MCI_WAVE_OPEN_PARMSW (pack 1) */
1330     TEST_TYPE_SIZE   (MCI_WAVE_OPEN_PARMSW, 40)
1331     TEST_TYPE_ALIGN  (MCI_WAVE_OPEN_PARMSW, 1)
1332     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, dwCallback, 8)
1333     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, dwCallback, 1)
1334     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, dwCallback, 0)
1335     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, wDeviceID, 4)
1336     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, wDeviceID, 1)
1337     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, wDeviceID, 8)
1338     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, lpstrDeviceType, 8)
1339     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, lpstrDeviceType, 1)
1340     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, lpstrDeviceType, 12)
1341     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, lpstrElementName, 8)
1342     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, lpstrElementName, 1)
1343     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, lpstrElementName, 20)
1344     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, lpstrAlias, 8)
1345     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, lpstrAlias, 1)
1346     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, lpstrAlias, 28)
1347     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, dwBufferSeconds, 4)
1348     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, dwBufferSeconds, 1)
1349     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, dwBufferSeconds, 36)
1350 }
1351
1352 static void test_pack_MCI_WAVE_DELETE_PARMS(void)
1353 {
1354     /* MCI_WAVE_DELETE_PARMS (pack 1) */
1355     TEST_TYPE_SIZE   (MCI_WAVE_DELETE_PARMS, 16)
1356     TEST_TYPE_ALIGN  (MCI_WAVE_DELETE_PARMS, 1)
1357     TEST_FIELD_SIZE  (MCI_WAVE_DELETE_PARMS, dwCallback, 8)
1358     TEST_FIELD_ALIGN (MCI_WAVE_DELETE_PARMS, dwCallback, 1)
1359     TEST_FIELD_OFFSET(MCI_WAVE_DELETE_PARMS, dwCallback, 0)
1360     TEST_FIELD_SIZE  (MCI_WAVE_DELETE_PARMS, dwFrom, 4)
1361     TEST_FIELD_ALIGN (MCI_WAVE_DELETE_PARMS, dwFrom, 1)
1362     TEST_FIELD_OFFSET(MCI_WAVE_DELETE_PARMS, dwFrom, 8)
1363     TEST_FIELD_SIZE  (MCI_WAVE_DELETE_PARMS, dwTo, 4)
1364     TEST_FIELD_ALIGN (MCI_WAVE_DELETE_PARMS, dwTo, 1)
1365     TEST_FIELD_OFFSET(MCI_WAVE_DELETE_PARMS, dwTo, 12)
1366 }
1367
1368 static void test_pack_MCI_WAVE_SET_PARMS(void)
1369 {
1370     /* MCI_WAVE_SET_PARMS (pack 1) */
1371     TEST_TYPE_SIZE   (MCI_WAVE_SET_PARMS, 48)
1372     TEST_TYPE_ALIGN  (MCI_WAVE_SET_PARMS, 1)
1373     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, dwCallback, 8)
1374     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, dwCallback, 1)
1375     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, dwCallback, 0)
1376     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, dwTimeFormat, 4)
1377     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, dwTimeFormat, 1)
1378     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, dwTimeFormat, 8)
1379     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, dwAudio, 4)
1380     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, dwAudio, 1)
1381     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, dwAudio, 12)
1382     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, wInput, 4)
1383     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, wInput, 1)
1384     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, wInput, 16)
1385     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, wOutput, 4)
1386     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, wOutput, 1)
1387     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, wOutput, 20)
1388     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, wFormatTag, 4)
1389     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, wFormatTag, 1)
1390     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, wFormatTag, 24)
1391     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, nChannels, 4)
1392     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, nChannels, 1)
1393     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, nChannels, 28)
1394     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, nSamplesPerSec, 4)
1395     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, nSamplesPerSec, 1)
1396     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, nSamplesPerSec, 32)
1397     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, nAvgBytesPerSec, 4)
1398     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, nAvgBytesPerSec, 1)
1399     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, nAvgBytesPerSec, 36)
1400     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, nBlockAlign, 4)
1401     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, nBlockAlign, 1)
1402     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, nBlockAlign, 40)
1403     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, wBitsPerSample, 4)
1404     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, wBitsPerSample, 1)
1405     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, wBitsPerSample, 44)
1406 }
1407
1408 static void test_pack_MCI_SEQ_SET_PARMS(void)
1409 {
1410     /* MCI_SEQ_SET_PARMS (pack 1) */
1411     TEST_TYPE_SIZE   (MCI_SEQ_SET_PARMS, 36)
1412     TEST_TYPE_ALIGN  (MCI_SEQ_SET_PARMS, 1)
1413     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwCallback, 8)
1414     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwCallback, 1)
1415     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwCallback, 0)
1416     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwTimeFormat, 4)
1417     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwTimeFormat, 1)
1418     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwTimeFormat, 8)
1419     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwAudio, 4)
1420     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwAudio, 1)
1421     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwAudio, 12)
1422     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwTempo, 4)
1423     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwTempo, 1)
1424     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwTempo, 16)
1425     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwPort, 4)
1426     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwPort, 1)
1427     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwPort, 20)
1428     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwSlave, 4)
1429     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwSlave, 1)
1430     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwSlave, 24)
1431     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwMaster, 4)
1432     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwMaster, 1)
1433     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwMaster, 28)
1434     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwOffset, 4)
1435     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwOffset, 1)
1436     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwOffset, 32)
1437 }
1438
1439 static void test_pack_MCI_ANIM_OPEN_PARMSA(void)
1440 {
1441     /* MCI_ANIM_OPEN_PARMSA (pack 1) */
1442     TEST_TYPE_SIZE   (MCI_ANIM_OPEN_PARMSA, 48)
1443     TEST_TYPE_ALIGN  (MCI_ANIM_OPEN_PARMSA, 1)
1444     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, dwCallback, 8)
1445     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, dwCallback, 1)
1446     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, dwCallback, 0)
1447     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, wDeviceID, 4)
1448     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, wDeviceID, 1)
1449     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, wDeviceID, 8)
1450     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, lpstrDeviceType, 8)
1451     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, lpstrDeviceType, 1)
1452     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, lpstrDeviceType, 12)
1453     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, lpstrElementName, 8)
1454     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, lpstrElementName, 1)
1455     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, lpstrElementName, 20)
1456     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, lpstrAlias, 8)
1457     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, lpstrAlias, 1)
1458     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, lpstrAlias, 28)
1459     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, dwStyle, 4)
1460     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, dwStyle, 1)
1461     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, dwStyle, 36)
1462     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, hWndParent, 8)
1463     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, hWndParent, 1)
1464     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, hWndParent, 40)
1465 }
1466
1467 static void test_pack_MCI_ANIM_OPEN_PARMSW(void)
1468 {
1469     /* MCI_ANIM_OPEN_PARMSW (pack 1) */
1470     TEST_TYPE_SIZE   (MCI_ANIM_OPEN_PARMSW, 48)
1471     TEST_TYPE_ALIGN  (MCI_ANIM_OPEN_PARMSW, 1)
1472     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, dwCallback, 8)
1473     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, dwCallback, 1)
1474     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, dwCallback, 0)
1475     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, wDeviceID, 4)
1476     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, wDeviceID, 1)
1477     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, wDeviceID, 8)
1478     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, lpstrDeviceType, 8)
1479     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, lpstrDeviceType, 1)
1480     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, lpstrDeviceType, 12)
1481     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, lpstrElementName, 8)
1482     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, lpstrElementName, 1)
1483     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, lpstrElementName, 20)
1484     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, lpstrAlias, 8)
1485     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, lpstrAlias, 1)
1486     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, lpstrAlias, 28)
1487     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, dwStyle, 4)
1488     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, dwStyle, 1)
1489     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, dwStyle, 36)
1490     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, hWndParent, 8)
1491     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, hWndParent, 1)
1492     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, hWndParent, 40)
1493 }
1494
1495 static void test_pack_MCI_ANIM_PLAY_PARMS(void)
1496 {
1497     /* MCI_ANIM_PLAY_PARMS (pack 1) */
1498     TEST_TYPE_SIZE   (MCI_ANIM_PLAY_PARMS, 20)
1499     TEST_TYPE_ALIGN  (MCI_ANIM_PLAY_PARMS, 1)
1500     TEST_FIELD_SIZE  (MCI_ANIM_PLAY_PARMS, dwCallback, 8)
1501     TEST_FIELD_ALIGN (MCI_ANIM_PLAY_PARMS, dwCallback, 1)
1502     TEST_FIELD_OFFSET(MCI_ANIM_PLAY_PARMS, dwCallback, 0)
1503     TEST_FIELD_SIZE  (MCI_ANIM_PLAY_PARMS, dwFrom, 4)
1504     TEST_FIELD_ALIGN (MCI_ANIM_PLAY_PARMS, dwFrom, 1)
1505     TEST_FIELD_OFFSET(MCI_ANIM_PLAY_PARMS, dwFrom, 8)
1506     TEST_FIELD_SIZE  (MCI_ANIM_PLAY_PARMS, dwTo, 4)
1507     TEST_FIELD_ALIGN (MCI_ANIM_PLAY_PARMS, dwTo, 1)
1508     TEST_FIELD_OFFSET(MCI_ANIM_PLAY_PARMS, dwTo, 12)
1509     TEST_FIELD_SIZE  (MCI_ANIM_PLAY_PARMS, dwSpeed, 4)
1510     TEST_FIELD_ALIGN (MCI_ANIM_PLAY_PARMS, dwSpeed, 1)
1511     TEST_FIELD_OFFSET(MCI_ANIM_PLAY_PARMS, dwSpeed, 16)
1512 }
1513
1514 static void test_pack_MCI_ANIM_STEP_PARMS(void)
1515 {
1516     /* MCI_ANIM_STEP_PARMS (pack 1) */
1517     TEST_TYPE_SIZE   (MCI_ANIM_STEP_PARMS, 12)
1518     TEST_TYPE_ALIGN  (MCI_ANIM_STEP_PARMS, 1)
1519     TEST_FIELD_SIZE  (MCI_ANIM_STEP_PARMS, dwCallback, 8)
1520     TEST_FIELD_ALIGN (MCI_ANIM_STEP_PARMS, dwCallback, 1)
1521     TEST_FIELD_OFFSET(MCI_ANIM_STEP_PARMS, dwCallback, 0)
1522     TEST_FIELD_SIZE  (MCI_ANIM_STEP_PARMS, dwFrames, 4)
1523     TEST_FIELD_ALIGN (MCI_ANIM_STEP_PARMS, dwFrames, 1)
1524     TEST_FIELD_OFFSET(MCI_ANIM_STEP_PARMS, dwFrames, 8)
1525 }
1526
1527 static void test_pack_MCI_ANIM_WINDOW_PARMSA(void)
1528 {
1529     /* MCI_ANIM_WINDOW_PARMSA (pack 1) */
1530     TEST_TYPE_SIZE   (MCI_ANIM_WINDOW_PARMSA, 28)
1531     TEST_TYPE_ALIGN  (MCI_ANIM_WINDOW_PARMSA, 1)
1532     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSA, dwCallback, 8)
1533     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSA, dwCallback, 1)
1534     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSA, dwCallback, 0)
1535     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSA, hWnd, 8)
1536     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSA, hWnd, 1)
1537     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSA, hWnd, 8)
1538     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSA, nCmdShow, 4)
1539     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSA, nCmdShow, 1)
1540     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSA, nCmdShow, 16)
1541     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSA, lpstrText, 8)
1542     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSA, lpstrText, 1)
1543     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSA, lpstrText, 20)
1544 }
1545
1546 static void test_pack_MCI_ANIM_WINDOW_PARMSW(void)
1547 {
1548     /* MCI_ANIM_WINDOW_PARMSW (pack 1) */
1549     TEST_TYPE_SIZE   (MCI_ANIM_WINDOW_PARMSW, 28)
1550     TEST_TYPE_ALIGN  (MCI_ANIM_WINDOW_PARMSW, 1)
1551     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSW, dwCallback, 8)
1552     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSW, dwCallback, 1)
1553     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSW, dwCallback, 0)
1554     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSW, hWnd, 8)
1555     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSW, hWnd, 1)
1556     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSW, hWnd, 8)
1557     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSW, nCmdShow, 4)
1558     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSW, nCmdShow, 1)
1559     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSW, nCmdShow, 16)
1560     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSW, lpstrText, 8)
1561     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSW, lpstrText, 1)
1562     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSW, lpstrText, 20)
1563 }
1564
1565 static void test_pack_MCI_ANIM_UPDATE_PARMS(void)
1566 {
1567     /* MCI_ANIM_UPDATE_PARMS (pack 1) */
1568     TEST_TYPE_SIZE   (MCI_ANIM_UPDATE_PARMS, 32)
1569     TEST_TYPE_ALIGN  (MCI_ANIM_UPDATE_PARMS, 1)
1570     TEST_FIELD_SIZE  (MCI_ANIM_UPDATE_PARMS, dwCallback, 8)
1571     TEST_FIELD_ALIGN (MCI_ANIM_UPDATE_PARMS, dwCallback, 1)
1572     TEST_FIELD_OFFSET(MCI_ANIM_UPDATE_PARMS, dwCallback, 0)
1573     TEST_FIELD_SIZE  (MCI_ANIM_UPDATE_PARMS, rc, 16)
1574     TEST_FIELD_ALIGN (MCI_ANIM_UPDATE_PARMS, rc, 1)
1575     TEST_FIELD_OFFSET(MCI_ANIM_UPDATE_PARMS, rc, 8)
1576     TEST_FIELD_SIZE  (MCI_ANIM_UPDATE_PARMS, hDC, 8)
1577     TEST_FIELD_ALIGN (MCI_ANIM_UPDATE_PARMS, hDC, 1)
1578     TEST_FIELD_OFFSET(MCI_ANIM_UPDATE_PARMS, hDC, 24)
1579 }
1580
1581 static void test_pack_MCI_OVLY_OPEN_PARMSA(void)
1582 {
1583     /* MCI_OVLY_OPEN_PARMSA (pack 1) */
1584     TEST_TYPE_SIZE   (MCI_OVLY_OPEN_PARMSA, 48)
1585     TEST_TYPE_ALIGN  (MCI_OVLY_OPEN_PARMSA, 1)
1586     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, dwCallback, 8)
1587     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, dwCallback, 1)
1588     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, dwCallback, 0)
1589     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, wDeviceID, 4)
1590     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, wDeviceID, 1)
1591     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, wDeviceID, 8)
1592     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, lpstrDeviceType, 8)
1593     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, lpstrDeviceType, 1)
1594     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, lpstrDeviceType, 12)
1595     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, lpstrElementName, 8)
1596     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, lpstrElementName, 1)
1597     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, lpstrElementName, 20)
1598     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, lpstrAlias, 8)
1599     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, lpstrAlias, 1)
1600     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, lpstrAlias, 28)
1601     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, dwStyle, 4)
1602     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, dwStyle, 1)
1603     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, dwStyle, 36)
1604     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, hWndParent, 8)
1605     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, hWndParent, 1)
1606     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, hWndParent, 40)
1607 }
1608
1609 static void test_pack_MCI_OVLY_OPEN_PARMSW(void)
1610 {
1611     /* MCI_OVLY_OPEN_PARMSW (pack 1) */
1612     TEST_TYPE_SIZE   (MCI_OVLY_OPEN_PARMSW, 48)
1613     TEST_TYPE_ALIGN  (MCI_OVLY_OPEN_PARMSW, 1)
1614     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, dwCallback, 8)
1615     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, dwCallback, 1)
1616     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, dwCallback, 0)
1617     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, wDeviceID, 4)
1618     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, wDeviceID, 1)
1619     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, wDeviceID, 8)
1620     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, lpstrDeviceType, 8)
1621     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, lpstrDeviceType, 1)
1622     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, lpstrDeviceType, 12)
1623     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, lpstrElementName, 8)
1624     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, lpstrElementName, 1)
1625     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, lpstrElementName, 20)
1626     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, lpstrAlias, 8)
1627     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, lpstrAlias, 1)
1628     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, lpstrAlias, 28)
1629     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, dwStyle, 4)
1630     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, dwStyle, 1)
1631     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, dwStyle, 36)
1632     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, hWndParent, 8)
1633     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, hWndParent, 1)
1634     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, hWndParent, 40)
1635 }
1636
1637 static void test_pack_MCI_OVLY_WINDOW_PARMSA(void)
1638 {
1639     /* MCI_OVLY_WINDOW_PARMSA (pack 1) */
1640     TEST_TYPE_SIZE   (MCI_OVLY_WINDOW_PARMSA, 28)
1641     TEST_TYPE_ALIGN  (MCI_OVLY_WINDOW_PARMSA, 1)
1642     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSA, dwCallback, 8)
1643     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSA, dwCallback, 1)
1644     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSA, dwCallback, 0)
1645     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSA, hWnd, 8)
1646     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSA, hWnd, 1)
1647     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSA, hWnd, 8)
1648     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSA, nCmdShow, 4)
1649     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSA, nCmdShow, 1)
1650     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSA, nCmdShow, 16)
1651     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSA, lpstrText, 8)
1652     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSA, lpstrText, 1)
1653     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSA, lpstrText, 20)
1654 }
1655
1656 static void test_pack_MCI_OVLY_WINDOW_PARMSW(void)
1657 {
1658     /* MCI_OVLY_WINDOW_PARMSW (pack 1) */
1659     TEST_TYPE_SIZE   (MCI_OVLY_WINDOW_PARMSW, 28)
1660     TEST_TYPE_ALIGN  (MCI_OVLY_WINDOW_PARMSW, 1)
1661     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSW, dwCallback, 8)
1662     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSW, dwCallback, 1)
1663     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSW, dwCallback, 0)
1664     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSW, hWnd, 8)
1665     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSW, hWnd, 1)
1666     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSW, hWnd, 8)
1667     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSW, nCmdShow, 4)
1668     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSW, nCmdShow, 1)
1669     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSW, nCmdShow, 16)
1670     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSW, lpstrText, 8)
1671     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSW, lpstrText, 1)
1672     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSW, lpstrText, 20)
1673 }
1674
1675 static void test_pack_MCI_OVLY_SAVE_PARMSA(void)
1676 {
1677     /* MCI_OVLY_SAVE_PARMSA (pack 1) */
1678     TEST_TYPE_SIZE   (MCI_OVLY_SAVE_PARMSA, 32)
1679     TEST_TYPE_ALIGN  (MCI_OVLY_SAVE_PARMSA, 1)
1680     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSA, dwCallback, 8)
1681     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSA, dwCallback, 1)
1682     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSA, dwCallback, 0)
1683     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSA, lpfilename, 8)
1684     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSA, lpfilename, 1)
1685     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSA, lpfilename, 8)
1686     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSA, rc, 16)
1687     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSA, rc, 1)
1688     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSA, rc, 16)
1689 }
1690
1691 static void test_pack_MCI_OVLY_SAVE_PARMSW(void)
1692 {
1693     /* MCI_OVLY_SAVE_PARMSW (pack 1) */
1694     TEST_TYPE_SIZE   (MCI_OVLY_SAVE_PARMSW, 32)
1695     TEST_TYPE_ALIGN  (MCI_OVLY_SAVE_PARMSW, 1)
1696     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSW, dwCallback, 8)
1697     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSW, dwCallback, 1)
1698     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSW, dwCallback, 0)
1699     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSW, lpfilename, 8)
1700     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSW, lpfilename, 1)
1701     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSW, lpfilename, 8)
1702     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSW, rc, 16)
1703     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSW, rc, 1)
1704     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSW, rc, 16)
1705 }
1706
1707 static void test_pack_MCI_OVLY_LOAD_PARMSA(void)
1708 {
1709     /* MCI_OVLY_LOAD_PARMSA (pack 1) */
1710     TEST_TYPE_SIZE   (MCI_OVLY_LOAD_PARMSA, 32)
1711     TEST_TYPE_ALIGN  (MCI_OVLY_LOAD_PARMSA, 1)
1712     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSA, dwCallback, 8)
1713     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSA, dwCallback, 1)
1714     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSA, dwCallback, 0)
1715     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSA, lpfilename, 8)
1716     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSA, lpfilename, 1)
1717     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSA, lpfilename, 8)
1718     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSA, rc, 16)
1719     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSA, rc, 1)
1720     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSA, rc, 16)
1721 }
1722
1723 static void test_pack_MCI_OVLY_LOAD_PARMSW(void)
1724 {
1725     /* MCI_OVLY_LOAD_PARMSW (pack 1) */
1726     TEST_TYPE_SIZE   (MCI_OVLY_LOAD_PARMSW, 32)
1727     TEST_TYPE_ALIGN  (MCI_OVLY_LOAD_PARMSW, 1)
1728     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSW, dwCallback, 8)
1729     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSW, dwCallback, 1)
1730     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSW, dwCallback, 0)
1731     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSW, lpfilename, 8)
1732     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSW, lpfilename, 1)
1733     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSW, lpfilename, 8)
1734     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSW, rc, 16)
1735     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSW, rc, 1)
1736     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSW, rc, 16)
1737 }
1738
1739 #else /* _WIN64 */
1740
1741 static void test_pack_MMTIME(void)
1742 {
1743     /* MMTIME (pack 1) */
1744     TEST_FIELD_SIZE  (MMTIME, wType, 4)
1745     TEST_FIELD_ALIGN (MMTIME, wType, 1)
1746     TEST_FIELD_OFFSET(MMTIME, wType, 0)
1747 }
1748
1749 static void test_pack_DRVCONFIGINFO(void)
1750 {
1751     /* DRVCONFIGINFO (pack 1) */
1752     TEST_TYPE_SIZE   (DRVCONFIGINFO, 12)
1753     TEST_TYPE_ALIGN  (DRVCONFIGINFO, 1)
1754     TEST_FIELD_SIZE  (DRVCONFIGINFO, dwDCISize, 4)
1755     TEST_FIELD_ALIGN (DRVCONFIGINFO, dwDCISize, 1)
1756     TEST_FIELD_OFFSET(DRVCONFIGINFO, dwDCISize, 0)
1757     TEST_FIELD_SIZE  (DRVCONFIGINFO, lpszDCISectionName, 4)
1758     TEST_FIELD_ALIGN (DRVCONFIGINFO, lpszDCISectionName, 1)
1759     TEST_FIELD_OFFSET(DRVCONFIGINFO, lpszDCISectionName, 4)
1760     TEST_FIELD_SIZE  (DRVCONFIGINFO, lpszDCIAliasName, 4)
1761     TEST_FIELD_ALIGN (DRVCONFIGINFO, lpszDCIAliasName, 1)
1762     TEST_FIELD_OFFSET(DRVCONFIGINFO, lpszDCIAliasName, 8)
1763 }
1764
1765 static void test_pack_WAVEHDR(void)
1766 {
1767     /* WAVEHDR (pack 1) */
1768     TEST_TYPE_SIZE   (WAVEHDR, 32)
1769     TEST_TYPE_ALIGN  (WAVEHDR, 1)
1770     TEST_FIELD_SIZE  (WAVEHDR, lpData, 4)
1771     TEST_FIELD_ALIGN (WAVEHDR, lpData, 1)
1772     TEST_FIELD_OFFSET(WAVEHDR, lpData, 0)
1773     TEST_FIELD_SIZE  (WAVEHDR, dwBufferLength, 4)
1774     TEST_FIELD_ALIGN (WAVEHDR, dwBufferLength, 1)
1775     TEST_FIELD_OFFSET(WAVEHDR, dwBufferLength, 4)
1776     TEST_FIELD_SIZE  (WAVEHDR, dwBytesRecorded, 4)
1777     TEST_FIELD_ALIGN (WAVEHDR, dwBytesRecorded, 1)
1778     TEST_FIELD_OFFSET(WAVEHDR, dwBytesRecorded, 8)
1779     TEST_FIELD_SIZE  (WAVEHDR, dwUser, 4)
1780     TEST_FIELD_ALIGN (WAVEHDR, dwUser, 1)
1781     TEST_FIELD_OFFSET(WAVEHDR, dwUser, 12)
1782     TEST_FIELD_SIZE  (WAVEHDR, dwFlags, 4)
1783     TEST_FIELD_ALIGN (WAVEHDR, dwFlags, 1)
1784     TEST_FIELD_OFFSET(WAVEHDR, dwFlags, 16)
1785     TEST_FIELD_SIZE  (WAVEHDR, dwLoops, 4)
1786     TEST_FIELD_ALIGN (WAVEHDR, dwLoops, 1)
1787     TEST_FIELD_OFFSET(WAVEHDR, dwLoops, 20)
1788     TEST_FIELD_SIZE  (WAVEHDR, lpNext, 4)
1789     TEST_FIELD_ALIGN (WAVEHDR, lpNext, 1)
1790     TEST_FIELD_OFFSET(WAVEHDR, lpNext, 24)
1791     TEST_FIELD_SIZE  (WAVEHDR, reserved, 4)
1792     TEST_FIELD_ALIGN (WAVEHDR, reserved, 1)
1793     TEST_FIELD_OFFSET(WAVEHDR, reserved, 28)
1794 }
1795
1796 static void test_pack_WAVEOUTCAPSA(void)
1797 {
1798     /* WAVEOUTCAPSA (pack 1) */
1799     TEST_FIELD_SIZE  (WAVEOUTCAPSA, wMid, 2)
1800     TEST_FIELD_ALIGN (WAVEOUTCAPSA, wMid, 1)
1801     TEST_FIELD_OFFSET(WAVEOUTCAPSA, wMid, 0)
1802     TEST_FIELD_SIZE  (WAVEOUTCAPSA, wPid, 2)
1803     TEST_FIELD_ALIGN (WAVEOUTCAPSA, wPid, 1)
1804     TEST_FIELD_OFFSET(WAVEOUTCAPSA, wPid, 2)
1805     TEST_FIELD_SIZE  (WAVEOUTCAPSA, vDriverVersion, 4)
1806     TEST_FIELD_ALIGN (WAVEOUTCAPSA, vDriverVersion, 1)
1807     TEST_FIELD_OFFSET(WAVEOUTCAPSA, vDriverVersion, 4)
1808 }
1809
1810 static void test_pack_WAVEOUTCAPSW(void)
1811 {
1812     /* WAVEOUTCAPSW (pack 1) */
1813     TEST_FIELD_SIZE  (WAVEOUTCAPSW, wMid, 2)
1814     TEST_FIELD_ALIGN (WAVEOUTCAPSW, wMid, 1)
1815     TEST_FIELD_OFFSET(WAVEOUTCAPSW, wMid, 0)
1816     TEST_FIELD_SIZE  (WAVEOUTCAPSW, wPid, 2)
1817     TEST_FIELD_ALIGN (WAVEOUTCAPSW, wPid, 1)
1818     TEST_FIELD_OFFSET(WAVEOUTCAPSW, wPid, 2)
1819     TEST_FIELD_SIZE  (WAVEOUTCAPSW, vDriverVersion, 4)
1820     TEST_FIELD_ALIGN (WAVEOUTCAPSW, vDriverVersion, 1)
1821     TEST_FIELD_OFFSET(WAVEOUTCAPSW, vDriverVersion, 4)
1822 }
1823
1824 static void test_pack_WAVEOUTCAPS2A(void)
1825 {
1826     /* WAVEOUTCAPS2A (pack 1) */
1827     TEST_FIELD_SIZE  (WAVEOUTCAPS2A, wMid, 2)
1828     TEST_FIELD_ALIGN (WAVEOUTCAPS2A, wMid, 1)
1829     TEST_FIELD_OFFSET(WAVEOUTCAPS2A, wMid, 0)
1830     TEST_FIELD_SIZE  (WAVEOUTCAPS2A, wPid, 2)
1831     TEST_FIELD_ALIGN (WAVEOUTCAPS2A, wPid, 1)
1832     TEST_FIELD_OFFSET(WAVEOUTCAPS2A, wPid, 2)
1833     TEST_FIELD_SIZE  (WAVEOUTCAPS2A, vDriverVersion, 4)
1834     TEST_FIELD_ALIGN (WAVEOUTCAPS2A, vDriverVersion, 1)
1835     TEST_FIELD_OFFSET(WAVEOUTCAPS2A, vDriverVersion, 4)
1836 }
1837
1838 static void test_pack_WAVEOUTCAPS2W(void)
1839 {
1840     /* WAVEOUTCAPS2W (pack 1) */
1841     TEST_FIELD_SIZE  (WAVEOUTCAPS2W, wMid, 2)
1842     TEST_FIELD_ALIGN (WAVEOUTCAPS2W, wMid, 1)
1843     TEST_FIELD_OFFSET(WAVEOUTCAPS2W, wMid, 0)
1844     TEST_FIELD_SIZE  (WAVEOUTCAPS2W, wPid, 2)
1845     TEST_FIELD_ALIGN (WAVEOUTCAPS2W, wPid, 1)
1846     TEST_FIELD_OFFSET(WAVEOUTCAPS2W, wPid, 2)
1847     TEST_FIELD_SIZE  (WAVEOUTCAPS2W, vDriverVersion, 4)
1848     TEST_FIELD_ALIGN (WAVEOUTCAPS2W, vDriverVersion, 1)
1849     TEST_FIELD_OFFSET(WAVEOUTCAPS2W, vDriverVersion, 4)
1850 }
1851
1852 static void test_pack_WAVEINCAPSA(void)
1853 {
1854     /* WAVEINCAPSA (pack 1) */
1855     TEST_FIELD_SIZE  (WAVEINCAPSA, wMid, 2)
1856     TEST_FIELD_ALIGN (WAVEINCAPSA, wMid, 1)
1857     TEST_FIELD_OFFSET(WAVEINCAPSA, wMid, 0)
1858     TEST_FIELD_SIZE  (WAVEINCAPSA, wPid, 2)
1859     TEST_FIELD_ALIGN (WAVEINCAPSA, wPid, 1)
1860     TEST_FIELD_OFFSET(WAVEINCAPSA, wPid, 2)
1861     TEST_FIELD_SIZE  (WAVEINCAPSA, vDriverVersion, 4)
1862     TEST_FIELD_ALIGN (WAVEINCAPSA, vDriverVersion, 1)
1863     TEST_FIELD_OFFSET(WAVEINCAPSA, vDriverVersion, 4)
1864 }
1865
1866 static void test_pack_WAVEINCAPSW(void)
1867 {
1868     /* WAVEINCAPSW (pack 1) */
1869     TEST_FIELD_SIZE  (WAVEINCAPSW, wMid, 2)
1870     TEST_FIELD_ALIGN (WAVEINCAPSW, wMid, 1)
1871     TEST_FIELD_OFFSET(WAVEINCAPSW, wMid, 0)
1872     TEST_FIELD_SIZE  (WAVEINCAPSW, wPid, 2)
1873     TEST_FIELD_ALIGN (WAVEINCAPSW, wPid, 1)
1874     TEST_FIELD_OFFSET(WAVEINCAPSW, wPid, 2)
1875     TEST_FIELD_SIZE  (WAVEINCAPSW, vDriverVersion, 4)
1876     TEST_FIELD_ALIGN (WAVEINCAPSW, vDriverVersion, 1)
1877     TEST_FIELD_OFFSET(WAVEINCAPSW, vDriverVersion, 4)
1878 }
1879
1880 static void test_pack_WAVEINCAPS2A(void)
1881 {
1882     /* WAVEINCAPS2A (pack 1) */
1883     TEST_FIELD_SIZE  (WAVEINCAPS2A, wMid, 2)
1884     TEST_FIELD_ALIGN (WAVEINCAPS2A, wMid, 1)
1885     TEST_FIELD_OFFSET(WAVEINCAPS2A, wMid, 0)
1886     TEST_FIELD_SIZE  (WAVEINCAPS2A, wPid, 2)
1887     TEST_FIELD_ALIGN (WAVEINCAPS2A, wPid, 1)
1888     TEST_FIELD_OFFSET(WAVEINCAPS2A, wPid, 2)
1889     TEST_FIELD_SIZE  (WAVEINCAPS2A, vDriverVersion, 4)
1890     TEST_FIELD_ALIGN (WAVEINCAPS2A, vDriverVersion, 1)
1891     TEST_FIELD_OFFSET(WAVEINCAPS2A, vDriverVersion, 4)
1892 }
1893
1894 static void test_pack_WAVEINCAPS2W(void)
1895 {
1896     /* WAVEINCAPS2W (pack 1) */
1897     TEST_FIELD_SIZE  (WAVEINCAPS2W, wMid, 2)
1898     TEST_FIELD_ALIGN (WAVEINCAPS2W, wMid, 1)
1899     TEST_FIELD_OFFSET(WAVEINCAPS2W, wMid, 0)
1900     TEST_FIELD_SIZE  (WAVEINCAPS2W, wPid, 2)
1901     TEST_FIELD_ALIGN (WAVEINCAPS2W, wPid, 1)
1902     TEST_FIELD_OFFSET(WAVEINCAPS2W, wPid, 2)
1903     TEST_FIELD_SIZE  (WAVEINCAPS2W, vDriverVersion, 4)
1904     TEST_FIELD_ALIGN (WAVEINCAPS2W, vDriverVersion, 1)
1905     TEST_FIELD_OFFSET(WAVEINCAPS2W, vDriverVersion, 4)
1906 }
1907
1908 static void test_pack_WAVEFORMAT(void)
1909 {
1910     /* WAVEFORMAT (pack 1) */
1911     TEST_TYPE_SIZE   (WAVEFORMAT, 14)
1912     TEST_TYPE_ALIGN  (WAVEFORMAT, 1)
1913     TEST_FIELD_SIZE  (WAVEFORMAT, wFormatTag, 2)
1914     TEST_FIELD_ALIGN (WAVEFORMAT, wFormatTag, 1)
1915     TEST_FIELD_OFFSET(WAVEFORMAT, wFormatTag, 0)
1916     TEST_FIELD_SIZE  (WAVEFORMAT, nChannels, 2)
1917     TEST_FIELD_ALIGN (WAVEFORMAT, nChannels, 1)
1918     TEST_FIELD_OFFSET(WAVEFORMAT, nChannels, 2)
1919     TEST_FIELD_SIZE  (WAVEFORMAT, nSamplesPerSec, 4)
1920     TEST_FIELD_ALIGN (WAVEFORMAT, nSamplesPerSec, 1)
1921     TEST_FIELD_OFFSET(WAVEFORMAT, nSamplesPerSec, 4)
1922     TEST_FIELD_SIZE  (WAVEFORMAT, nAvgBytesPerSec, 4)
1923     TEST_FIELD_ALIGN (WAVEFORMAT, nAvgBytesPerSec, 1)
1924     TEST_FIELD_OFFSET(WAVEFORMAT, nAvgBytesPerSec, 8)
1925     TEST_FIELD_SIZE  (WAVEFORMAT, nBlockAlign, 2)
1926     TEST_FIELD_ALIGN (WAVEFORMAT, nBlockAlign, 1)
1927     TEST_FIELD_OFFSET(WAVEFORMAT, nBlockAlign, 12)
1928 }
1929
1930 static void test_pack_PCMWAVEFORMAT(void)
1931 {
1932     /* PCMWAVEFORMAT (pack 1) */
1933     TEST_TYPE_SIZE   (PCMWAVEFORMAT, 16)
1934     TEST_TYPE_ALIGN  (PCMWAVEFORMAT, 1)
1935     TEST_FIELD_SIZE  (PCMWAVEFORMAT, wf, 14)
1936     TEST_FIELD_ALIGN (PCMWAVEFORMAT, wf, 1)
1937     TEST_FIELD_OFFSET(PCMWAVEFORMAT, wf, 0)
1938     TEST_FIELD_SIZE  (PCMWAVEFORMAT, wBitsPerSample, 2)
1939     TEST_FIELD_ALIGN (PCMWAVEFORMAT, wBitsPerSample, 1)
1940     TEST_FIELD_OFFSET(PCMWAVEFORMAT, wBitsPerSample, 14)
1941 }
1942
1943 static void test_pack_WAVEFORMATEX(void)
1944 {
1945     /* WAVEFORMATEX (pack 1) */
1946     TEST_TYPE_SIZE   (WAVEFORMATEX, 18)
1947     TEST_TYPE_ALIGN  (WAVEFORMATEX, 1)
1948     TEST_FIELD_SIZE  (WAVEFORMATEX, wFormatTag, 2)
1949     TEST_FIELD_ALIGN (WAVEFORMATEX, wFormatTag, 1)
1950     TEST_FIELD_OFFSET(WAVEFORMATEX, wFormatTag, 0)
1951     TEST_FIELD_SIZE  (WAVEFORMATEX, nChannels, 2)
1952     TEST_FIELD_ALIGN (WAVEFORMATEX, nChannels, 1)
1953     TEST_FIELD_OFFSET(WAVEFORMATEX, nChannels, 2)
1954     TEST_FIELD_SIZE  (WAVEFORMATEX, nSamplesPerSec, 4)
1955     TEST_FIELD_ALIGN (WAVEFORMATEX, nSamplesPerSec, 1)
1956     TEST_FIELD_OFFSET(WAVEFORMATEX, nSamplesPerSec, 4)
1957     TEST_FIELD_SIZE  (WAVEFORMATEX, nAvgBytesPerSec, 4)
1958     TEST_FIELD_ALIGN (WAVEFORMATEX, nAvgBytesPerSec, 1)
1959     TEST_FIELD_OFFSET(WAVEFORMATEX, nAvgBytesPerSec, 8)
1960     TEST_FIELD_SIZE  (WAVEFORMATEX, nBlockAlign, 2)
1961     TEST_FIELD_ALIGN (WAVEFORMATEX, nBlockAlign, 1)
1962     TEST_FIELD_OFFSET(WAVEFORMATEX, nBlockAlign, 12)
1963     TEST_FIELD_SIZE  (WAVEFORMATEX, wBitsPerSample, 2)
1964     TEST_FIELD_ALIGN (WAVEFORMATEX, wBitsPerSample, 1)
1965     TEST_FIELD_OFFSET(WAVEFORMATEX, wBitsPerSample, 14)
1966     TEST_FIELD_SIZE  (WAVEFORMATEX, cbSize, 2)
1967     TEST_FIELD_ALIGN (WAVEFORMATEX, cbSize, 1)
1968     TEST_FIELD_OFFSET(WAVEFORMATEX, cbSize, 16)
1969 }
1970
1971 static void test_pack_MIDIOUTCAPSA(void)
1972 {
1973     /* MIDIOUTCAPSA (pack 1) */
1974     TEST_FIELD_SIZE  (MIDIOUTCAPSA, wMid, 2)
1975     TEST_FIELD_ALIGN (MIDIOUTCAPSA, wMid, 1)
1976     TEST_FIELD_OFFSET(MIDIOUTCAPSA, wMid, 0)
1977     TEST_FIELD_SIZE  (MIDIOUTCAPSA, wPid, 2)
1978     TEST_FIELD_ALIGN (MIDIOUTCAPSA, wPid, 1)
1979     TEST_FIELD_OFFSET(MIDIOUTCAPSA, wPid, 2)
1980     TEST_FIELD_SIZE  (MIDIOUTCAPSA, vDriverVersion, 4)
1981     TEST_FIELD_ALIGN (MIDIOUTCAPSA, vDriverVersion, 1)
1982     TEST_FIELD_OFFSET(MIDIOUTCAPSA, vDriverVersion, 4)
1983 }
1984
1985 static void test_pack_MIDIOUTCAPSW(void)
1986 {
1987     /* MIDIOUTCAPSW (pack 1) */
1988     TEST_FIELD_SIZE  (MIDIOUTCAPSW, wMid, 2)
1989     TEST_FIELD_ALIGN (MIDIOUTCAPSW, wMid, 1)
1990     TEST_FIELD_OFFSET(MIDIOUTCAPSW, wMid, 0)
1991     TEST_FIELD_SIZE  (MIDIOUTCAPSW, wPid, 2)
1992     TEST_FIELD_ALIGN (MIDIOUTCAPSW, wPid, 1)
1993     TEST_FIELD_OFFSET(MIDIOUTCAPSW, wPid, 2)
1994     TEST_FIELD_SIZE  (MIDIOUTCAPSW, vDriverVersion, 4)
1995     TEST_FIELD_ALIGN (MIDIOUTCAPSW, vDriverVersion, 1)
1996     TEST_FIELD_OFFSET(MIDIOUTCAPSW, vDriverVersion, 4)
1997 }
1998
1999 static void test_pack_MIDIOUTCAPS2A(void)
2000 {
2001     /* MIDIOUTCAPS2A (pack 1) */
2002     TEST_FIELD_SIZE  (MIDIOUTCAPS2A, wMid, 2)
2003     TEST_FIELD_ALIGN (MIDIOUTCAPS2A, wMid, 1)
2004     TEST_FIELD_OFFSET(MIDIOUTCAPS2A, wMid, 0)
2005     TEST_FIELD_SIZE  (MIDIOUTCAPS2A, wPid, 2)
2006     TEST_FIELD_ALIGN (MIDIOUTCAPS2A, wPid, 1)
2007     TEST_FIELD_OFFSET(MIDIOUTCAPS2A, wPid, 2)
2008     TEST_FIELD_SIZE  (MIDIOUTCAPS2A, vDriverVersion, 4)
2009     TEST_FIELD_ALIGN (MIDIOUTCAPS2A, vDriverVersion, 1)
2010     TEST_FIELD_OFFSET(MIDIOUTCAPS2A, vDriverVersion, 4)
2011 }
2012
2013 static void test_pack_MIDIOUTCAPS2W(void)
2014 {
2015     /* MIDIOUTCAPS2W (pack 1) */
2016     TEST_FIELD_SIZE  (MIDIOUTCAPS2W, wMid, 2)
2017     TEST_FIELD_ALIGN (MIDIOUTCAPS2W, wMid, 1)
2018     TEST_FIELD_OFFSET(MIDIOUTCAPS2W, wMid, 0)
2019     TEST_FIELD_SIZE  (MIDIOUTCAPS2W, wPid, 2)
2020     TEST_FIELD_ALIGN (MIDIOUTCAPS2W, wPid, 1)
2021     TEST_FIELD_OFFSET(MIDIOUTCAPS2W, wPid, 2)
2022     TEST_FIELD_SIZE  (MIDIOUTCAPS2W, vDriverVersion, 4)
2023     TEST_FIELD_ALIGN (MIDIOUTCAPS2W, vDriverVersion, 1)
2024     TEST_FIELD_OFFSET(MIDIOUTCAPS2W, vDriverVersion, 4)
2025 }
2026
2027 static void test_pack_MIDIINCAPSA(void)
2028 {
2029     /* MIDIINCAPSA (pack 1) */
2030     TEST_FIELD_SIZE  (MIDIINCAPSA, wMid, 2)
2031     TEST_FIELD_ALIGN (MIDIINCAPSA, wMid, 1)
2032     TEST_FIELD_OFFSET(MIDIINCAPSA, wMid, 0)
2033     TEST_FIELD_SIZE  (MIDIINCAPSA, wPid, 2)
2034     TEST_FIELD_ALIGN (MIDIINCAPSA, wPid, 1)
2035     TEST_FIELD_OFFSET(MIDIINCAPSA, wPid, 2)
2036     TEST_FIELD_SIZE  (MIDIINCAPSA, vDriverVersion, 4)
2037     TEST_FIELD_ALIGN (MIDIINCAPSA, vDriverVersion, 1)
2038     TEST_FIELD_OFFSET(MIDIINCAPSA, vDriverVersion, 4)
2039 }
2040
2041 static void test_pack_MIDIINCAPSW(void)
2042 {
2043     /* MIDIINCAPSW (pack 1) */
2044     TEST_FIELD_SIZE  (MIDIINCAPSW, wMid, 2)
2045     TEST_FIELD_ALIGN (MIDIINCAPSW, wMid, 1)
2046     TEST_FIELD_OFFSET(MIDIINCAPSW, wMid, 0)
2047     TEST_FIELD_SIZE  (MIDIINCAPSW, wPid, 2)
2048     TEST_FIELD_ALIGN (MIDIINCAPSW, wPid, 1)
2049     TEST_FIELD_OFFSET(MIDIINCAPSW, wPid, 2)
2050     TEST_FIELD_SIZE  (MIDIINCAPSW, vDriverVersion, 4)
2051     TEST_FIELD_ALIGN (MIDIINCAPSW, vDriverVersion, 1)
2052     TEST_FIELD_OFFSET(MIDIINCAPSW, vDriverVersion, 4)
2053 }
2054
2055 static void test_pack_MIDIINCAPS2A(void)
2056 {
2057     /* MIDIINCAPS2A (pack 1) */
2058     TEST_FIELD_SIZE  (MIDIINCAPS2A, wMid, 2)
2059     TEST_FIELD_ALIGN (MIDIINCAPS2A, wMid, 1)
2060     TEST_FIELD_OFFSET(MIDIINCAPS2A, wMid, 0)
2061     TEST_FIELD_SIZE  (MIDIINCAPS2A, wPid, 2)
2062     TEST_FIELD_ALIGN (MIDIINCAPS2A, wPid, 1)
2063     TEST_FIELD_OFFSET(MIDIINCAPS2A, wPid, 2)
2064     TEST_FIELD_SIZE  (MIDIINCAPS2A, vDriverVersion, 4)
2065     TEST_FIELD_ALIGN (MIDIINCAPS2A, vDriverVersion, 1)
2066     TEST_FIELD_OFFSET(MIDIINCAPS2A, vDriverVersion, 4)
2067 }
2068
2069 static void test_pack_MIDIINCAPS2W(void)
2070 {
2071     /* MIDIINCAPS2W (pack 1) */
2072     TEST_FIELD_SIZE  (MIDIINCAPS2W, wMid, 2)
2073     TEST_FIELD_ALIGN (MIDIINCAPS2W, wMid, 1)
2074     TEST_FIELD_OFFSET(MIDIINCAPS2W, wMid, 0)
2075     TEST_FIELD_SIZE  (MIDIINCAPS2W, wPid, 2)
2076     TEST_FIELD_ALIGN (MIDIINCAPS2W, wPid, 1)
2077     TEST_FIELD_OFFSET(MIDIINCAPS2W, wPid, 2)
2078     TEST_FIELD_SIZE  (MIDIINCAPS2W, vDriverVersion, 4)
2079     TEST_FIELD_ALIGN (MIDIINCAPS2W, vDriverVersion, 1)
2080     TEST_FIELD_OFFSET(MIDIINCAPS2W, vDriverVersion, 4)
2081 }
2082
2083 static void test_pack_MIDIHDR(void)
2084 {
2085     /* MIDIHDR (pack 1) */
2086     TEST_TYPE_SIZE   (MIDIHDR, 64)
2087     TEST_TYPE_ALIGN  (MIDIHDR, 1)
2088     TEST_FIELD_SIZE  (MIDIHDR, lpData, 4)
2089     TEST_FIELD_ALIGN (MIDIHDR, lpData, 1)
2090     TEST_FIELD_OFFSET(MIDIHDR, lpData, 0)
2091     TEST_FIELD_SIZE  (MIDIHDR, dwBufferLength, 4)
2092     TEST_FIELD_ALIGN (MIDIHDR, dwBufferLength, 1)
2093     TEST_FIELD_OFFSET(MIDIHDR, dwBufferLength, 4)
2094     TEST_FIELD_SIZE  (MIDIHDR, dwBytesRecorded, 4)
2095     TEST_FIELD_ALIGN (MIDIHDR, dwBytesRecorded, 1)
2096     TEST_FIELD_OFFSET(MIDIHDR, dwBytesRecorded, 8)
2097     TEST_FIELD_SIZE  (MIDIHDR, dwUser, 4)
2098     TEST_FIELD_ALIGN (MIDIHDR, dwUser, 1)
2099     TEST_FIELD_OFFSET(MIDIHDR, dwUser, 12)
2100     TEST_FIELD_SIZE  (MIDIHDR, dwFlags, 4)
2101     TEST_FIELD_ALIGN (MIDIHDR, dwFlags, 1)
2102     TEST_FIELD_OFFSET(MIDIHDR, dwFlags, 16)
2103     TEST_FIELD_SIZE  (MIDIHDR, lpNext, 4)
2104     TEST_FIELD_ALIGN (MIDIHDR, lpNext, 1)
2105     TEST_FIELD_OFFSET(MIDIHDR, lpNext, 20)
2106     TEST_FIELD_SIZE  (MIDIHDR, reserved, 4)
2107     TEST_FIELD_ALIGN (MIDIHDR, reserved, 1)
2108     TEST_FIELD_OFFSET(MIDIHDR, reserved, 24)
2109     TEST_FIELD_SIZE  (MIDIHDR, dwOffset, 4)
2110     TEST_FIELD_ALIGN (MIDIHDR, dwOffset, 1)
2111     TEST_FIELD_OFFSET(MIDIHDR, dwOffset, 28)
2112     TEST_FIELD_SIZE  (MIDIHDR, dwReserved, 32)
2113     TEST_FIELD_ALIGN (MIDIHDR, dwReserved, 1)
2114     TEST_FIELD_OFFSET(MIDIHDR, dwReserved, 32)
2115 }
2116
2117 static void test_pack_MIDIEVENT(void)
2118 {
2119     /* MIDIEVENT (pack 1) */
2120     TEST_TYPE_SIZE   (MIDIEVENT, 16)
2121     TEST_TYPE_ALIGN  (MIDIEVENT, 1)
2122     TEST_FIELD_SIZE  (MIDIEVENT, dwDeltaTime, 4)
2123     TEST_FIELD_ALIGN (MIDIEVENT, dwDeltaTime, 1)
2124     TEST_FIELD_OFFSET(MIDIEVENT, dwDeltaTime, 0)
2125     TEST_FIELD_SIZE  (MIDIEVENT, dwStreamID, 4)
2126     TEST_FIELD_ALIGN (MIDIEVENT, dwStreamID, 1)
2127     TEST_FIELD_OFFSET(MIDIEVENT, dwStreamID, 4)
2128     TEST_FIELD_SIZE  (MIDIEVENT, dwEvent, 4)
2129     TEST_FIELD_ALIGN (MIDIEVENT, dwEvent, 1)
2130     TEST_FIELD_OFFSET(MIDIEVENT, dwEvent, 8)
2131     TEST_FIELD_SIZE  (MIDIEVENT, dwParms, 4)
2132     TEST_FIELD_ALIGN (MIDIEVENT, dwParms, 1)
2133     TEST_FIELD_OFFSET(MIDIEVENT, dwParms, 12)
2134 }
2135
2136 static void test_pack_AUXCAPSA(void)
2137 {
2138     /* AUXCAPSA (pack 1) */
2139     TEST_FIELD_SIZE  (AUXCAPSA, wMid, 2)
2140     TEST_FIELD_ALIGN (AUXCAPSA, wMid, 1)
2141     TEST_FIELD_OFFSET(AUXCAPSA, wMid, 0)
2142     TEST_FIELD_SIZE  (AUXCAPSA, wPid, 2)
2143     TEST_FIELD_ALIGN (AUXCAPSA, wPid, 1)
2144     TEST_FIELD_OFFSET(AUXCAPSA, wPid, 2)
2145     TEST_FIELD_SIZE  (AUXCAPSA, vDriverVersion, 4)
2146     TEST_FIELD_ALIGN (AUXCAPSA, vDriverVersion, 1)
2147     TEST_FIELD_OFFSET(AUXCAPSA, vDriverVersion, 4)
2148 }
2149
2150 static void test_pack_AUXCAPSW(void)
2151 {
2152     /* AUXCAPSW (pack 1) */
2153     TEST_FIELD_SIZE  (AUXCAPSW, wMid, 2)
2154     TEST_FIELD_ALIGN (AUXCAPSW, wMid, 1)
2155     TEST_FIELD_OFFSET(AUXCAPSW, wMid, 0)
2156     TEST_FIELD_SIZE  (AUXCAPSW, wPid, 2)
2157     TEST_FIELD_ALIGN (AUXCAPSW, wPid, 1)
2158     TEST_FIELD_OFFSET(AUXCAPSW, wPid, 2)
2159     TEST_FIELD_SIZE  (AUXCAPSW, vDriverVersion, 4)
2160     TEST_FIELD_ALIGN (AUXCAPSW, vDriverVersion, 1)
2161     TEST_FIELD_OFFSET(AUXCAPSW, vDriverVersion, 4)
2162 }
2163
2164 static void test_pack_AUXCAPS2A(void)
2165 {
2166     /* AUXCAPS2A (pack 1) */
2167     TEST_FIELD_SIZE  (AUXCAPS2A, wMid, 2)
2168     TEST_FIELD_ALIGN (AUXCAPS2A, wMid, 1)
2169     TEST_FIELD_OFFSET(AUXCAPS2A, wMid, 0)
2170     TEST_FIELD_SIZE  (AUXCAPS2A, wPid, 2)
2171     TEST_FIELD_ALIGN (AUXCAPS2A, wPid, 1)
2172     TEST_FIELD_OFFSET(AUXCAPS2A, wPid, 2)
2173     TEST_FIELD_SIZE  (AUXCAPS2A, vDriverVersion, 4)
2174     TEST_FIELD_ALIGN (AUXCAPS2A, vDriverVersion, 1)
2175     TEST_FIELD_OFFSET(AUXCAPS2A, vDriverVersion, 4)
2176 }
2177
2178 static void test_pack_AUXCAPS2W(void)
2179 {
2180     /* AUXCAPS2W (pack 1) */
2181     TEST_FIELD_SIZE  (AUXCAPS2W, wMid, 2)
2182     TEST_FIELD_ALIGN (AUXCAPS2W, wMid, 1)
2183     TEST_FIELD_OFFSET(AUXCAPS2W, wMid, 0)
2184     TEST_FIELD_SIZE  (AUXCAPS2W, wPid, 2)
2185     TEST_FIELD_ALIGN (AUXCAPS2W, wPid, 1)
2186     TEST_FIELD_OFFSET(AUXCAPS2W, wPid, 2)
2187     TEST_FIELD_SIZE  (AUXCAPS2W, vDriverVersion, 4)
2188     TEST_FIELD_ALIGN (AUXCAPS2W, vDriverVersion, 1)
2189     TEST_FIELD_OFFSET(AUXCAPS2W, vDriverVersion, 4)
2190 }
2191
2192 static void test_pack_TIMECAPS(void)
2193 {
2194     /* TIMECAPS (pack 1) */
2195     TEST_TYPE_SIZE   (TIMECAPS, 8)
2196     TEST_TYPE_ALIGN  (TIMECAPS, 1)
2197     TEST_FIELD_SIZE  (TIMECAPS, wPeriodMin, 4)
2198     TEST_FIELD_ALIGN (TIMECAPS, wPeriodMin, 1)
2199     TEST_FIELD_OFFSET(TIMECAPS, wPeriodMin, 0)
2200     TEST_FIELD_SIZE  (TIMECAPS, wPeriodMax, 4)
2201     TEST_FIELD_ALIGN (TIMECAPS, wPeriodMax, 1)
2202     TEST_FIELD_OFFSET(TIMECAPS, wPeriodMax, 4)
2203 }
2204
2205 static void test_pack_JOYCAPSA(void)
2206 {
2207     /* JOYCAPSA (pack 1) */
2208     TEST_FIELD_SIZE  (JOYCAPSA, wMid, 2)
2209     TEST_FIELD_ALIGN (JOYCAPSA, wMid, 1)
2210     TEST_FIELD_OFFSET(JOYCAPSA, wMid, 0)
2211     TEST_FIELD_SIZE  (JOYCAPSA, wPid, 2)
2212     TEST_FIELD_ALIGN (JOYCAPSA, wPid, 1)
2213     TEST_FIELD_OFFSET(JOYCAPSA, wPid, 2)
2214 }
2215
2216 static void test_pack_JOYCAPSW(void)
2217 {
2218     /* JOYCAPSW (pack 1) */
2219     TEST_FIELD_SIZE  (JOYCAPSW, wMid, 2)
2220     TEST_FIELD_ALIGN (JOYCAPSW, wMid, 1)
2221     TEST_FIELD_OFFSET(JOYCAPSW, wMid, 0)
2222     TEST_FIELD_SIZE  (JOYCAPSW, wPid, 2)
2223     TEST_FIELD_ALIGN (JOYCAPSW, wPid, 1)
2224     TEST_FIELD_OFFSET(JOYCAPSW, wPid, 2)
2225 }
2226
2227 static void test_pack_JOYCAPS2A(void)
2228 {
2229     /* JOYCAPS2A (pack 1) */
2230     TEST_FIELD_SIZE  (JOYCAPS2A, wMid, 2)
2231     TEST_FIELD_ALIGN (JOYCAPS2A, wMid, 1)
2232     TEST_FIELD_OFFSET(JOYCAPS2A, wMid, 0)
2233     TEST_FIELD_SIZE  (JOYCAPS2A, wPid, 2)
2234     TEST_FIELD_ALIGN (JOYCAPS2A, wPid, 1)
2235     TEST_FIELD_OFFSET(JOYCAPS2A, wPid, 2)
2236 }
2237
2238 static void test_pack_JOYCAPS2W(void)
2239 {
2240     /* JOYCAPS2W (pack 1) */
2241     TEST_FIELD_SIZE  (JOYCAPS2W, wMid, 2)
2242     TEST_FIELD_ALIGN (JOYCAPS2W, wMid, 1)
2243     TEST_FIELD_OFFSET(JOYCAPS2W, wMid, 0)
2244     TEST_FIELD_SIZE  (JOYCAPS2W, wPid, 2)
2245     TEST_FIELD_ALIGN (JOYCAPS2W, wPid, 1)
2246     TEST_FIELD_OFFSET(JOYCAPS2W, wPid, 2)
2247 }
2248
2249 static void test_pack_JOYINFO(void)
2250 {
2251     /* JOYINFO (pack 1) */
2252     TEST_TYPE_SIZE   (JOYINFO, 16)
2253     TEST_TYPE_ALIGN  (JOYINFO, 1)
2254     TEST_FIELD_SIZE  (JOYINFO, wXpos, 4)
2255     TEST_FIELD_ALIGN (JOYINFO, wXpos, 1)
2256     TEST_FIELD_OFFSET(JOYINFO, wXpos, 0)
2257     TEST_FIELD_SIZE  (JOYINFO, wYpos, 4)
2258     TEST_FIELD_ALIGN (JOYINFO, wYpos, 1)
2259     TEST_FIELD_OFFSET(JOYINFO, wYpos, 4)
2260     TEST_FIELD_SIZE  (JOYINFO, wZpos, 4)
2261     TEST_FIELD_ALIGN (JOYINFO, wZpos, 1)
2262     TEST_FIELD_OFFSET(JOYINFO, wZpos, 8)
2263     TEST_FIELD_SIZE  (JOYINFO, wButtons, 4)
2264     TEST_FIELD_ALIGN (JOYINFO, wButtons, 1)
2265     TEST_FIELD_OFFSET(JOYINFO, wButtons, 12)
2266 }
2267
2268 static void test_pack_JOYINFOEX(void)
2269 {
2270     /* JOYINFOEX (pack 1) */
2271     TEST_TYPE_SIZE   (JOYINFOEX, 52)
2272     TEST_TYPE_ALIGN  (JOYINFOEX, 1)
2273     TEST_FIELD_SIZE  (JOYINFOEX, dwSize, 4)
2274     TEST_FIELD_ALIGN (JOYINFOEX, dwSize, 1)
2275     TEST_FIELD_OFFSET(JOYINFOEX, dwSize, 0)
2276     TEST_FIELD_SIZE  (JOYINFOEX, dwFlags, 4)
2277     TEST_FIELD_ALIGN (JOYINFOEX, dwFlags, 1)
2278     TEST_FIELD_OFFSET(JOYINFOEX, dwFlags, 4)
2279     TEST_FIELD_SIZE  (JOYINFOEX, dwXpos, 4)
2280     TEST_FIELD_ALIGN (JOYINFOEX, dwXpos, 1)
2281     TEST_FIELD_OFFSET(JOYINFOEX, dwXpos, 8)
2282     TEST_FIELD_SIZE  (JOYINFOEX, dwYpos, 4)
2283     TEST_FIELD_ALIGN (JOYINFOEX, dwYpos, 1)
2284     TEST_FIELD_OFFSET(JOYINFOEX, dwYpos, 12)
2285     TEST_FIELD_SIZE  (JOYINFOEX, dwZpos, 4)
2286     TEST_FIELD_ALIGN (JOYINFOEX, dwZpos, 1)
2287     TEST_FIELD_OFFSET(JOYINFOEX, dwZpos, 16)
2288     TEST_FIELD_SIZE  (JOYINFOEX, dwRpos, 4)
2289     TEST_FIELD_ALIGN (JOYINFOEX, dwRpos, 1)
2290     TEST_FIELD_OFFSET(JOYINFOEX, dwRpos, 20)
2291     TEST_FIELD_SIZE  (JOYINFOEX, dwUpos, 4)
2292     TEST_FIELD_ALIGN (JOYINFOEX, dwUpos, 1)
2293     TEST_FIELD_OFFSET(JOYINFOEX, dwUpos, 24)
2294     TEST_FIELD_SIZE  (JOYINFOEX, dwVpos, 4)
2295     TEST_FIELD_ALIGN (JOYINFOEX, dwVpos, 1)
2296     TEST_FIELD_OFFSET(JOYINFOEX, dwVpos, 28)
2297     TEST_FIELD_SIZE  (JOYINFOEX, dwButtons, 4)
2298     TEST_FIELD_ALIGN (JOYINFOEX, dwButtons, 1)
2299     TEST_FIELD_OFFSET(JOYINFOEX, dwButtons, 32)
2300     TEST_FIELD_SIZE  (JOYINFOEX, dwButtonNumber, 4)
2301     TEST_FIELD_ALIGN (JOYINFOEX, dwButtonNumber, 1)
2302     TEST_FIELD_OFFSET(JOYINFOEX, dwButtonNumber, 36)
2303     TEST_FIELD_SIZE  (JOYINFOEX, dwPOV, 4)
2304     TEST_FIELD_ALIGN (JOYINFOEX, dwPOV, 1)
2305     TEST_FIELD_OFFSET(JOYINFOEX, dwPOV, 40)
2306     TEST_FIELD_SIZE  (JOYINFOEX, dwReserved1, 4)
2307     TEST_FIELD_ALIGN (JOYINFOEX, dwReserved1, 1)
2308     TEST_FIELD_OFFSET(JOYINFOEX, dwReserved1, 44)
2309     TEST_FIELD_SIZE  (JOYINFOEX, dwReserved2, 4)
2310     TEST_FIELD_ALIGN (JOYINFOEX, dwReserved2, 1)
2311     TEST_FIELD_OFFSET(JOYINFOEX, dwReserved2, 48)
2312 }
2313
2314 static void test_pack_MIXERCAPSA(void)
2315 {
2316     /* MIXERCAPSA (pack 1) */
2317     TEST_FIELD_SIZE  (MIXERCAPSA, wMid, 2)
2318     TEST_FIELD_ALIGN (MIXERCAPSA, wMid, 1)
2319     TEST_FIELD_OFFSET(MIXERCAPSA, wMid, 0)
2320     TEST_FIELD_SIZE  (MIXERCAPSA, wPid, 2)
2321     TEST_FIELD_ALIGN (MIXERCAPSA, wPid, 1)
2322     TEST_FIELD_OFFSET(MIXERCAPSA, wPid, 2)
2323     TEST_FIELD_SIZE  (MIXERCAPSA, vDriverVersion, 4)
2324     TEST_FIELD_ALIGN (MIXERCAPSA, vDriverVersion, 1)
2325     TEST_FIELD_OFFSET(MIXERCAPSA, vDriverVersion, 4)
2326 }
2327
2328 static void test_pack_MIXERCAPSW(void)
2329 {
2330     /* MIXERCAPSW (pack 1) */
2331     TEST_FIELD_SIZE  (MIXERCAPSW, wMid, 2)
2332     TEST_FIELD_ALIGN (MIXERCAPSW, wMid, 1)
2333     TEST_FIELD_OFFSET(MIXERCAPSW, wMid, 0)
2334     TEST_FIELD_SIZE  (MIXERCAPSW, wPid, 2)
2335     TEST_FIELD_ALIGN (MIXERCAPSW, wPid, 1)
2336     TEST_FIELD_OFFSET(MIXERCAPSW, wPid, 2)
2337     TEST_FIELD_SIZE  (MIXERCAPSW, vDriverVersion, 4)
2338     TEST_FIELD_ALIGN (MIXERCAPSW, vDriverVersion, 1)
2339     TEST_FIELD_OFFSET(MIXERCAPSW, vDriverVersion, 4)
2340 }
2341
2342 static void test_pack_MIXERCAPS2A(void)
2343 {
2344     /* MIXERCAPS2A (pack 1) */
2345     TEST_FIELD_SIZE  (MIXERCAPS2A, wMid, 2)
2346     TEST_FIELD_ALIGN (MIXERCAPS2A, wMid, 1)
2347     TEST_FIELD_OFFSET(MIXERCAPS2A, wMid, 0)
2348     TEST_FIELD_SIZE  (MIXERCAPS2A, wPid, 2)
2349     TEST_FIELD_ALIGN (MIXERCAPS2A, wPid, 1)
2350     TEST_FIELD_OFFSET(MIXERCAPS2A, wPid, 2)
2351     TEST_FIELD_SIZE  (MIXERCAPS2A, vDriverVersion, 4)
2352     TEST_FIELD_ALIGN (MIXERCAPS2A, vDriverVersion, 1)
2353     TEST_FIELD_OFFSET(MIXERCAPS2A, vDriverVersion, 4)
2354 }
2355
2356 static void test_pack_MIXERCAPS2W(void)
2357 {
2358     /* MIXERCAPS2W (pack 1) */
2359     TEST_FIELD_SIZE  (MIXERCAPS2W, wMid, 2)
2360     TEST_FIELD_ALIGN (MIXERCAPS2W, wMid, 1)
2361     TEST_FIELD_OFFSET(MIXERCAPS2W, wMid, 0)
2362     TEST_FIELD_SIZE  (MIXERCAPS2W, wPid, 2)
2363     TEST_FIELD_ALIGN (MIXERCAPS2W, wPid, 1)
2364     TEST_FIELD_OFFSET(MIXERCAPS2W, wPid, 2)
2365     TEST_FIELD_SIZE  (MIXERCAPS2W, vDriverVersion, 4)
2366     TEST_FIELD_ALIGN (MIXERCAPS2W, vDriverVersion, 1)
2367     TEST_FIELD_OFFSET(MIXERCAPS2W, vDriverVersion, 4)
2368 }
2369
2370 static void test_pack_MIXERLINEA(void)
2371 {
2372     /* MIXERLINEA (pack 1) */
2373     TEST_FIELD_SIZE  (MIXERLINEA, cbStruct, 4)
2374     TEST_FIELD_ALIGN (MIXERLINEA, cbStruct, 1)
2375     TEST_FIELD_OFFSET(MIXERLINEA, cbStruct, 0)
2376     TEST_FIELD_SIZE  (MIXERLINEA, dwDestination, 4)
2377     TEST_FIELD_ALIGN (MIXERLINEA, dwDestination, 1)
2378     TEST_FIELD_OFFSET(MIXERLINEA, dwDestination, 4)
2379     TEST_FIELD_SIZE  (MIXERLINEA, dwSource, 4)
2380     TEST_FIELD_ALIGN (MIXERLINEA, dwSource, 1)
2381     TEST_FIELD_OFFSET(MIXERLINEA, dwSource, 8)
2382     TEST_FIELD_SIZE  (MIXERLINEA, dwLineID, 4)
2383     TEST_FIELD_ALIGN (MIXERLINEA, dwLineID, 1)
2384     TEST_FIELD_OFFSET(MIXERLINEA, dwLineID, 12)
2385     TEST_FIELD_SIZE  (MIXERLINEA, fdwLine, 4)
2386     TEST_FIELD_ALIGN (MIXERLINEA, fdwLine, 1)
2387     TEST_FIELD_OFFSET(MIXERLINEA, fdwLine, 16)
2388     TEST_FIELD_SIZE  (MIXERLINEA, dwUser, 4)
2389     TEST_FIELD_ALIGN (MIXERLINEA, dwUser, 1)
2390     TEST_FIELD_OFFSET(MIXERLINEA, dwUser, 20)
2391     TEST_FIELD_SIZE  (MIXERLINEA, dwComponentType, 4)
2392     TEST_FIELD_ALIGN (MIXERLINEA, dwComponentType, 1)
2393     TEST_FIELD_OFFSET(MIXERLINEA, dwComponentType, 24)
2394     TEST_FIELD_SIZE  (MIXERLINEA, cChannels, 4)
2395     TEST_FIELD_ALIGN (MIXERLINEA, cChannels, 1)
2396     TEST_FIELD_OFFSET(MIXERLINEA, cChannels, 28)
2397     TEST_FIELD_SIZE  (MIXERLINEA, cConnections, 4)
2398     TEST_FIELD_ALIGN (MIXERLINEA, cConnections, 1)
2399     TEST_FIELD_OFFSET(MIXERLINEA, cConnections, 32)
2400     TEST_FIELD_SIZE  (MIXERLINEA, cControls, 4)
2401     TEST_FIELD_ALIGN (MIXERLINEA, cControls, 1)
2402     TEST_FIELD_OFFSET(MIXERLINEA, cControls, 36)
2403 }
2404
2405 static void test_pack_MIXERLINEW(void)
2406 {
2407     /* MIXERLINEW (pack 1) */
2408     TEST_FIELD_SIZE  (MIXERLINEW, cbStruct, 4)
2409     TEST_FIELD_ALIGN (MIXERLINEW, cbStruct, 1)
2410     TEST_FIELD_OFFSET(MIXERLINEW, cbStruct, 0)
2411     TEST_FIELD_SIZE  (MIXERLINEW, dwDestination, 4)
2412     TEST_FIELD_ALIGN (MIXERLINEW, dwDestination, 1)
2413     TEST_FIELD_OFFSET(MIXERLINEW, dwDestination, 4)
2414     TEST_FIELD_SIZE  (MIXERLINEW, dwSource, 4)
2415     TEST_FIELD_ALIGN (MIXERLINEW, dwSource, 1)
2416     TEST_FIELD_OFFSET(MIXERLINEW, dwSource, 8)
2417     TEST_FIELD_SIZE  (MIXERLINEW, dwLineID, 4)
2418     TEST_FIELD_ALIGN (MIXERLINEW, dwLineID, 1)
2419     TEST_FIELD_OFFSET(MIXERLINEW, dwLineID, 12)
2420     TEST_FIELD_SIZE  (MIXERLINEW, fdwLine, 4)
2421     TEST_FIELD_ALIGN (MIXERLINEW, fdwLine, 1)
2422     TEST_FIELD_OFFSET(MIXERLINEW, fdwLine, 16)
2423     TEST_FIELD_SIZE  (MIXERLINEW, dwUser, 4)
2424     TEST_FIELD_ALIGN (MIXERLINEW, dwUser, 1)
2425     TEST_FIELD_OFFSET(MIXERLINEW, dwUser, 20)
2426     TEST_FIELD_SIZE  (MIXERLINEW, dwComponentType, 4)
2427     TEST_FIELD_ALIGN (MIXERLINEW, dwComponentType, 1)
2428     TEST_FIELD_OFFSET(MIXERLINEW, dwComponentType, 24)
2429     TEST_FIELD_SIZE  (MIXERLINEW, cChannels, 4)
2430     TEST_FIELD_ALIGN (MIXERLINEW, cChannels, 1)
2431     TEST_FIELD_OFFSET(MIXERLINEW, cChannels, 28)
2432     TEST_FIELD_SIZE  (MIXERLINEW, cConnections, 4)
2433     TEST_FIELD_ALIGN (MIXERLINEW, cConnections, 1)
2434     TEST_FIELD_OFFSET(MIXERLINEW, cConnections, 32)
2435     TEST_FIELD_SIZE  (MIXERLINEW, cControls, 4)
2436     TEST_FIELD_ALIGN (MIXERLINEW, cControls, 1)
2437     TEST_FIELD_OFFSET(MIXERLINEW, cControls, 36)
2438 }
2439
2440 static void test_pack_MIXERCONTROLA(void)
2441 {
2442     /* MIXERCONTROLA (pack 1) */
2443     TEST_FIELD_SIZE  (MIXERCONTROLA, cbStruct, 4)
2444     TEST_FIELD_ALIGN (MIXERCONTROLA, cbStruct, 1)
2445     TEST_FIELD_OFFSET(MIXERCONTROLA, cbStruct, 0)
2446     TEST_FIELD_SIZE  (MIXERCONTROLA, dwControlID, 4)
2447     TEST_FIELD_ALIGN (MIXERCONTROLA, dwControlID, 1)
2448     TEST_FIELD_OFFSET(MIXERCONTROLA, dwControlID, 4)
2449     TEST_FIELD_SIZE  (MIXERCONTROLA, dwControlType, 4)
2450     TEST_FIELD_ALIGN (MIXERCONTROLA, dwControlType, 1)
2451     TEST_FIELD_OFFSET(MIXERCONTROLA, dwControlType, 8)
2452     TEST_FIELD_SIZE  (MIXERCONTROLA, fdwControl, 4)
2453     TEST_FIELD_ALIGN (MIXERCONTROLA, fdwControl, 1)
2454     TEST_FIELD_OFFSET(MIXERCONTROLA, fdwControl, 12)
2455     TEST_FIELD_SIZE  (MIXERCONTROLA, cMultipleItems, 4)
2456     TEST_FIELD_ALIGN (MIXERCONTROLA, cMultipleItems, 1)
2457     TEST_FIELD_OFFSET(MIXERCONTROLA, cMultipleItems, 16)
2458 }
2459
2460 static void test_pack_MIXERCONTROLW(void)
2461 {
2462     /* MIXERCONTROLW (pack 1) */
2463     TEST_FIELD_SIZE  (MIXERCONTROLW, cbStruct, 4)
2464     TEST_FIELD_ALIGN (MIXERCONTROLW, cbStruct, 1)
2465     TEST_FIELD_OFFSET(MIXERCONTROLW, cbStruct, 0)
2466     TEST_FIELD_SIZE  (MIXERCONTROLW, dwControlID, 4)
2467     TEST_FIELD_ALIGN (MIXERCONTROLW, dwControlID, 1)
2468     TEST_FIELD_OFFSET(MIXERCONTROLW, dwControlID, 4)
2469     TEST_FIELD_SIZE  (MIXERCONTROLW, dwControlType, 4)
2470     TEST_FIELD_ALIGN (MIXERCONTROLW, dwControlType, 1)
2471     TEST_FIELD_OFFSET(MIXERCONTROLW, dwControlType, 8)
2472     TEST_FIELD_SIZE  (MIXERCONTROLW, fdwControl, 4)
2473     TEST_FIELD_ALIGN (MIXERCONTROLW, fdwControl, 1)
2474     TEST_FIELD_OFFSET(MIXERCONTROLW, fdwControl, 12)
2475     TEST_FIELD_SIZE  (MIXERCONTROLW, cMultipleItems, 4)
2476     TEST_FIELD_ALIGN (MIXERCONTROLW, cMultipleItems, 1)
2477     TEST_FIELD_OFFSET(MIXERCONTROLW, cMultipleItems, 16)
2478 }
2479
2480 static void test_pack_MIXERCONTROLDETAILS(void)
2481 {
2482     /* MIXERCONTROLDETAILS (pack 1) */
2483     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS, cbStruct, 4)
2484     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS, cbStruct, 1)
2485     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS, cbStruct, 0)
2486     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS, dwControlID, 4)
2487     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS, dwControlID, 1)
2488     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS, dwControlID, 4)
2489     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS, cChannels, 4)
2490     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS, cChannels, 1)
2491     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS, cChannels, 8)
2492 }
2493
2494 static void test_pack_MIXERCONTROLDETAILS_LISTTEXTA(void)
2495 {
2496     /* MIXERCONTROLDETAILS_LISTTEXTA (pack 1) */
2497     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_LISTTEXTA, dwParam1, 4)
2498     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_LISTTEXTA, dwParam1, 1)
2499     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_LISTTEXTA, dwParam1, 0)
2500     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_LISTTEXTA, dwParam2, 4)
2501     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_LISTTEXTA, dwParam2, 1)
2502     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_LISTTEXTA, dwParam2, 4)
2503 }
2504
2505 static void test_pack_MIXERCONTROLDETAILS_LISTTEXTW(void)
2506 {
2507     /* MIXERCONTROLDETAILS_LISTTEXTW (pack 1) */
2508     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_LISTTEXTW, dwParam1, 4)
2509     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_LISTTEXTW, dwParam1, 1)
2510     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_LISTTEXTW, dwParam1, 0)
2511     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_LISTTEXTW, dwParam2, 4)
2512     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_LISTTEXTW, dwParam2, 1)
2513     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_LISTTEXTW, dwParam2, 4)
2514 }
2515
2516 static void test_pack_MIXERCONTROLDETAILS_BOOLEAN(void)
2517 {
2518     /* MIXERCONTROLDETAILS_BOOLEAN (pack 1) */
2519     TEST_TYPE_SIZE   (MIXERCONTROLDETAILS_BOOLEAN, 4)
2520     TEST_TYPE_ALIGN  (MIXERCONTROLDETAILS_BOOLEAN, 1)
2521     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_BOOLEAN, fValue, 4)
2522     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_BOOLEAN, fValue, 1)
2523     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_BOOLEAN, fValue, 0)
2524 }
2525
2526 static void test_pack_MIXERCONTROLDETAILS_SIGNED(void)
2527 {
2528     /* MIXERCONTROLDETAILS_SIGNED (pack 1) */
2529     TEST_TYPE_SIZE   (MIXERCONTROLDETAILS_SIGNED, 4)
2530     TEST_TYPE_ALIGN  (MIXERCONTROLDETAILS_SIGNED, 1)
2531     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_SIGNED, lValue, 4)
2532     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_SIGNED, lValue, 1)
2533     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_SIGNED, lValue, 0)
2534 }
2535
2536 static void test_pack_MIXERCONTROLDETAILS_UNSIGNED(void)
2537 {
2538     /* MIXERCONTROLDETAILS_UNSIGNED (pack 1) */
2539     TEST_TYPE_SIZE   (MIXERCONTROLDETAILS_UNSIGNED, 4)
2540     TEST_TYPE_ALIGN  (MIXERCONTROLDETAILS_UNSIGNED, 1)
2541     TEST_FIELD_SIZE  (MIXERCONTROLDETAILS_UNSIGNED, dwValue, 4)
2542     TEST_FIELD_ALIGN (MIXERCONTROLDETAILS_UNSIGNED, dwValue, 1)
2543     TEST_FIELD_OFFSET(MIXERCONTROLDETAILS_UNSIGNED, dwValue, 0)
2544 }
2545
2546 static void test_pack_MMIOINFO(void)
2547 {
2548     /* MMIOINFO (pack 1) */
2549     TEST_FIELD_SIZE  (MMIOINFO, dwFlags, 4)
2550     TEST_FIELD_ALIGN (MMIOINFO, dwFlags, 1)
2551     TEST_FIELD_OFFSET(MMIOINFO, dwFlags, 0)
2552     TEST_FIELD_SIZE  (MMIOINFO, fccIOProc, 4)
2553     TEST_FIELD_ALIGN (MMIOINFO, fccIOProc, 1)
2554     TEST_FIELD_OFFSET(MMIOINFO, fccIOProc, 4)
2555     TEST_FIELD_SIZE  (MMIOINFO, pIOProc, 4)
2556     TEST_FIELD_ALIGN (MMIOINFO, pIOProc, 1)
2557     TEST_FIELD_OFFSET(MMIOINFO, pIOProc, 8)
2558     TEST_FIELD_SIZE  (MMIOINFO, wErrorRet, 4)
2559     TEST_FIELD_ALIGN (MMIOINFO, wErrorRet, 1)
2560     TEST_FIELD_OFFSET(MMIOINFO, wErrorRet, 12)
2561 }
2562
2563 static void test_pack_MMCKINFO(void)
2564 {
2565     /* MMCKINFO (pack 1) */
2566     TEST_TYPE_SIZE   (MMCKINFO, 20)
2567     TEST_TYPE_ALIGN  (MMCKINFO, 1)
2568     TEST_FIELD_SIZE  (MMCKINFO, ckid, 4)
2569     TEST_FIELD_ALIGN (MMCKINFO, ckid, 1)
2570     TEST_FIELD_OFFSET(MMCKINFO, ckid, 0)
2571     TEST_FIELD_SIZE  (MMCKINFO, cksize, 4)
2572     TEST_FIELD_ALIGN (MMCKINFO, cksize, 1)
2573     TEST_FIELD_OFFSET(MMCKINFO, cksize, 4)
2574     TEST_FIELD_SIZE  (MMCKINFO, fccType, 4)
2575     TEST_FIELD_ALIGN (MMCKINFO, fccType, 1)
2576     TEST_FIELD_OFFSET(MMCKINFO, fccType, 8)
2577     TEST_FIELD_SIZE  (MMCKINFO, dwDataOffset, 4)
2578     TEST_FIELD_ALIGN (MMCKINFO, dwDataOffset, 1)
2579     TEST_FIELD_OFFSET(MMCKINFO, dwDataOffset, 12)
2580     TEST_FIELD_SIZE  (MMCKINFO, dwFlags, 4)
2581     TEST_FIELD_ALIGN (MMCKINFO, dwFlags, 1)
2582     TEST_FIELD_OFFSET(MMCKINFO, dwFlags, 16)
2583 }
2584
2585 static void test_pack_MCI_GENERIC_PARMS(void)
2586 {
2587     /* MCI_GENERIC_PARMS (pack 1) */
2588     TEST_TYPE_SIZE   (MCI_GENERIC_PARMS, 4)
2589     TEST_TYPE_ALIGN  (MCI_GENERIC_PARMS, 1)
2590     TEST_FIELD_SIZE  (MCI_GENERIC_PARMS, dwCallback, 4)
2591     TEST_FIELD_ALIGN (MCI_GENERIC_PARMS, dwCallback, 1)
2592     TEST_FIELD_OFFSET(MCI_GENERIC_PARMS, dwCallback, 0)
2593 }
2594
2595 static void test_pack_MCI_OPEN_PARMSA(void)
2596 {
2597     /* MCI_OPEN_PARMSA (pack 1) */
2598     TEST_TYPE_SIZE   (MCI_OPEN_PARMSA, 20)
2599     TEST_TYPE_ALIGN  (MCI_OPEN_PARMSA, 1)
2600     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, dwCallback, 4)
2601     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, dwCallback, 1)
2602     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, dwCallback, 0)
2603     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, wDeviceID, 4)
2604     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, wDeviceID, 1)
2605     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, wDeviceID, 4)
2606     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, lpstrDeviceType, 4)
2607     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, lpstrDeviceType, 1)
2608     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, lpstrDeviceType, 8)
2609     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, lpstrElementName, 4)
2610     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, lpstrElementName, 1)
2611     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, lpstrElementName, 12)
2612     TEST_FIELD_SIZE  (MCI_OPEN_PARMSA, lpstrAlias, 4)
2613     TEST_FIELD_ALIGN (MCI_OPEN_PARMSA, lpstrAlias, 1)
2614     TEST_FIELD_OFFSET(MCI_OPEN_PARMSA, lpstrAlias, 16)
2615 }
2616
2617 static void test_pack_MCI_OPEN_PARMSW(void)
2618 {
2619     /* MCI_OPEN_PARMSW (pack 1) */
2620     TEST_TYPE_SIZE   (MCI_OPEN_PARMSW, 20)
2621     TEST_TYPE_ALIGN  (MCI_OPEN_PARMSW, 1)
2622     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, dwCallback, 4)
2623     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, dwCallback, 1)
2624     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, dwCallback, 0)
2625     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, wDeviceID, 4)
2626     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, wDeviceID, 1)
2627     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, wDeviceID, 4)
2628     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, lpstrDeviceType, 4)
2629     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, lpstrDeviceType, 1)
2630     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, lpstrDeviceType, 8)
2631     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, lpstrElementName, 4)
2632     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, lpstrElementName, 1)
2633     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, lpstrElementName, 12)
2634     TEST_FIELD_SIZE  (MCI_OPEN_PARMSW, lpstrAlias, 4)
2635     TEST_FIELD_ALIGN (MCI_OPEN_PARMSW, lpstrAlias, 1)
2636     TEST_FIELD_OFFSET(MCI_OPEN_PARMSW, lpstrAlias, 16)
2637 }
2638
2639 static void test_pack_MCI_PLAY_PARMS(void)
2640 {
2641     /* MCI_PLAY_PARMS (pack 1) */
2642     TEST_TYPE_SIZE   (MCI_PLAY_PARMS, 12)
2643     TEST_TYPE_ALIGN  (MCI_PLAY_PARMS, 1)
2644     TEST_FIELD_SIZE  (MCI_PLAY_PARMS, dwCallback, 4)
2645     TEST_FIELD_ALIGN (MCI_PLAY_PARMS, dwCallback, 1)
2646     TEST_FIELD_OFFSET(MCI_PLAY_PARMS, dwCallback, 0)
2647     TEST_FIELD_SIZE  (MCI_PLAY_PARMS, dwFrom, 4)
2648     TEST_FIELD_ALIGN (MCI_PLAY_PARMS, dwFrom, 1)
2649     TEST_FIELD_OFFSET(MCI_PLAY_PARMS, dwFrom, 4)
2650     TEST_FIELD_SIZE  (MCI_PLAY_PARMS, dwTo, 4)
2651     TEST_FIELD_ALIGN (MCI_PLAY_PARMS, dwTo, 1)
2652     TEST_FIELD_OFFSET(MCI_PLAY_PARMS, dwTo, 8)
2653 }
2654
2655 static void test_pack_MCI_SEEK_PARMS(void)
2656 {
2657     /* MCI_SEEK_PARMS (pack 1) */
2658     TEST_TYPE_SIZE   (MCI_SEEK_PARMS, 8)
2659     TEST_TYPE_ALIGN  (MCI_SEEK_PARMS, 1)
2660     TEST_FIELD_SIZE  (MCI_SEEK_PARMS, dwCallback, 4)
2661     TEST_FIELD_ALIGN (MCI_SEEK_PARMS, dwCallback, 1)
2662     TEST_FIELD_OFFSET(MCI_SEEK_PARMS, dwCallback, 0)
2663     TEST_FIELD_SIZE  (MCI_SEEK_PARMS, dwTo, 4)
2664     TEST_FIELD_ALIGN (MCI_SEEK_PARMS, dwTo, 1)
2665     TEST_FIELD_OFFSET(MCI_SEEK_PARMS, dwTo, 4)
2666 }
2667
2668 static void test_pack_MCI_STATUS_PARMS(void)
2669 {
2670     /* MCI_STATUS_PARMS (pack 1) */
2671     TEST_TYPE_SIZE   (MCI_STATUS_PARMS, 16)
2672     TEST_TYPE_ALIGN  (MCI_STATUS_PARMS, 1)
2673     TEST_FIELD_SIZE  (MCI_STATUS_PARMS, dwCallback, 4)
2674     TEST_FIELD_ALIGN (MCI_STATUS_PARMS, dwCallback, 1)
2675     TEST_FIELD_OFFSET(MCI_STATUS_PARMS, dwCallback, 0)
2676     TEST_FIELD_SIZE  (MCI_STATUS_PARMS, dwReturn, 4)
2677     TEST_FIELD_ALIGN (MCI_STATUS_PARMS, dwReturn, 1)
2678     TEST_FIELD_OFFSET(MCI_STATUS_PARMS, dwReturn, 4)
2679     TEST_FIELD_SIZE  (MCI_STATUS_PARMS, dwItem, 4)
2680     TEST_FIELD_ALIGN (MCI_STATUS_PARMS, dwItem, 1)
2681     TEST_FIELD_OFFSET(MCI_STATUS_PARMS, dwItem, 8)
2682     TEST_FIELD_SIZE  (MCI_STATUS_PARMS, dwTrack, 4)
2683     TEST_FIELD_ALIGN (MCI_STATUS_PARMS, dwTrack, 1)
2684     TEST_FIELD_OFFSET(MCI_STATUS_PARMS, dwTrack, 12)
2685 }
2686
2687 static void test_pack_MCI_INFO_PARMSA(void)
2688 {
2689     /* MCI_INFO_PARMSA (pack 1) */
2690     TEST_TYPE_SIZE   (MCI_INFO_PARMSA, 12)
2691     TEST_TYPE_ALIGN  (MCI_INFO_PARMSA, 1)
2692     TEST_FIELD_SIZE  (MCI_INFO_PARMSA, dwCallback, 4)
2693     TEST_FIELD_ALIGN (MCI_INFO_PARMSA, dwCallback, 1)
2694     TEST_FIELD_OFFSET(MCI_INFO_PARMSA, dwCallback, 0)
2695     TEST_FIELD_SIZE  (MCI_INFO_PARMSA, lpstrReturn, 4)
2696     TEST_FIELD_ALIGN (MCI_INFO_PARMSA, lpstrReturn, 1)
2697     TEST_FIELD_OFFSET(MCI_INFO_PARMSA, lpstrReturn, 4)
2698     TEST_FIELD_SIZE  (MCI_INFO_PARMSA, dwRetSize, 4)
2699     TEST_FIELD_ALIGN (MCI_INFO_PARMSA, dwRetSize, 1)
2700     TEST_FIELD_OFFSET(MCI_INFO_PARMSA, dwRetSize, 8)
2701 }
2702
2703 static void test_pack_MCI_INFO_PARMSW(void)
2704 {
2705     /* MCI_INFO_PARMSW (pack 1) */
2706     TEST_TYPE_SIZE   (MCI_INFO_PARMSW, 12)
2707     TEST_TYPE_ALIGN  (MCI_INFO_PARMSW, 1)
2708     TEST_FIELD_SIZE  (MCI_INFO_PARMSW, dwCallback, 4)
2709     TEST_FIELD_ALIGN (MCI_INFO_PARMSW, dwCallback, 1)
2710     TEST_FIELD_OFFSET(MCI_INFO_PARMSW, dwCallback, 0)
2711     TEST_FIELD_SIZE  (MCI_INFO_PARMSW, lpstrReturn, 4)
2712     TEST_FIELD_ALIGN (MCI_INFO_PARMSW, lpstrReturn, 1)
2713     TEST_FIELD_OFFSET(MCI_INFO_PARMSW, lpstrReturn, 4)
2714     TEST_FIELD_SIZE  (MCI_INFO_PARMSW, dwRetSize, 4)
2715     TEST_FIELD_ALIGN (MCI_INFO_PARMSW, dwRetSize, 1)
2716     TEST_FIELD_OFFSET(MCI_INFO_PARMSW, dwRetSize, 8)
2717 }
2718
2719 static void test_pack_MCI_GETDEVCAPS_PARMS(void)
2720 {
2721     /* MCI_GETDEVCAPS_PARMS (pack 1) */
2722     TEST_TYPE_SIZE   (MCI_GETDEVCAPS_PARMS, 12)
2723     TEST_TYPE_ALIGN  (MCI_GETDEVCAPS_PARMS, 1)
2724     TEST_FIELD_SIZE  (MCI_GETDEVCAPS_PARMS, dwCallback, 4)
2725     TEST_FIELD_ALIGN (MCI_GETDEVCAPS_PARMS, dwCallback, 1)
2726     TEST_FIELD_OFFSET(MCI_GETDEVCAPS_PARMS, dwCallback, 0)
2727     TEST_FIELD_SIZE  (MCI_GETDEVCAPS_PARMS, dwReturn, 4)
2728     TEST_FIELD_ALIGN (MCI_GETDEVCAPS_PARMS, dwReturn, 1)
2729     TEST_FIELD_OFFSET(MCI_GETDEVCAPS_PARMS, dwReturn, 4)
2730     TEST_FIELD_SIZE  (MCI_GETDEVCAPS_PARMS, dwItem, 4)
2731     TEST_FIELD_ALIGN (MCI_GETDEVCAPS_PARMS, dwItem, 1)
2732     TEST_FIELD_OFFSET(MCI_GETDEVCAPS_PARMS, dwItem, 8)
2733 }
2734
2735 static void test_pack_MCI_SYSINFO_PARMSA(void)
2736 {
2737     /* MCI_SYSINFO_PARMSA (pack 1) */
2738     TEST_TYPE_SIZE   (MCI_SYSINFO_PARMSA, 20)
2739     TEST_TYPE_ALIGN  (MCI_SYSINFO_PARMSA, 1)
2740     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, dwCallback, 4)
2741     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, dwCallback, 1)
2742     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, dwCallback, 0)
2743     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, lpstrReturn, 4)
2744     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, lpstrReturn, 1)
2745     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, lpstrReturn, 4)
2746     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, dwRetSize, 4)
2747     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, dwRetSize, 1)
2748     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, dwRetSize, 8)
2749     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, dwNumber, 4)
2750     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, dwNumber, 1)
2751     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, dwNumber, 12)
2752     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSA, wDeviceType, 4)
2753     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSA, wDeviceType, 1)
2754     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSA, wDeviceType, 16)
2755 }
2756
2757 static void test_pack_MCI_SYSINFO_PARMSW(void)
2758 {
2759     /* MCI_SYSINFO_PARMSW (pack 1) */
2760     TEST_TYPE_SIZE   (MCI_SYSINFO_PARMSW, 20)
2761     TEST_TYPE_ALIGN  (MCI_SYSINFO_PARMSW, 1)
2762     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, dwCallback, 4)
2763     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, dwCallback, 1)
2764     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, dwCallback, 0)
2765     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, lpstrReturn, 4)
2766     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, lpstrReturn, 1)
2767     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, lpstrReturn, 4)
2768     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, dwRetSize, 4)
2769     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, dwRetSize, 1)
2770     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, dwRetSize, 8)
2771     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, dwNumber, 4)
2772     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, dwNumber, 1)
2773     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, dwNumber, 12)
2774     TEST_FIELD_SIZE  (MCI_SYSINFO_PARMSW, wDeviceType, 4)
2775     TEST_FIELD_ALIGN (MCI_SYSINFO_PARMSW, wDeviceType, 1)
2776     TEST_FIELD_OFFSET(MCI_SYSINFO_PARMSW, wDeviceType, 16)
2777 }
2778
2779 static void test_pack_MCI_SET_PARMS(void)
2780 {
2781     /* MCI_SET_PARMS (pack 1) */
2782     TEST_TYPE_SIZE   (MCI_SET_PARMS, 12)
2783     TEST_TYPE_ALIGN  (MCI_SET_PARMS, 1)
2784     TEST_FIELD_SIZE  (MCI_SET_PARMS, dwCallback, 4)
2785     TEST_FIELD_ALIGN (MCI_SET_PARMS, dwCallback, 1)
2786     TEST_FIELD_OFFSET(MCI_SET_PARMS, dwCallback, 0)
2787     TEST_FIELD_SIZE  (MCI_SET_PARMS, dwTimeFormat, 4)
2788     TEST_FIELD_ALIGN (MCI_SET_PARMS, dwTimeFormat, 1)
2789     TEST_FIELD_OFFSET(MCI_SET_PARMS, dwTimeFormat, 4)
2790     TEST_FIELD_SIZE  (MCI_SET_PARMS, dwAudio, 4)
2791     TEST_FIELD_ALIGN (MCI_SET_PARMS, dwAudio, 1)
2792     TEST_FIELD_OFFSET(MCI_SET_PARMS, dwAudio, 8)
2793 }
2794
2795 static void test_pack_MCI_BREAK_PARMS(void)
2796 {
2797     /* MCI_BREAK_PARMS (pack 1) */
2798     TEST_TYPE_SIZE   (MCI_BREAK_PARMS, 12)
2799     TEST_TYPE_ALIGN  (MCI_BREAK_PARMS, 1)
2800     TEST_FIELD_SIZE  (MCI_BREAK_PARMS, dwCallback, 4)
2801     TEST_FIELD_ALIGN (MCI_BREAK_PARMS, dwCallback, 1)
2802     TEST_FIELD_OFFSET(MCI_BREAK_PARMS, dwCallback, 0)
2803     TEST_FIELD_SIZE  (MCI_BREAK_PARMS, nVirtKey, 4)
2804     TEST_FIELD_ALIGN (MCI_BREAK_PARMS, nVirtKey, 1)
2805     TEST_FIELD_OFFSET(MCI_BREAK_PARMS, nVirtKey, 4)
2806     TEST_FIELD_SIZE  (MCI_BREAK_PARMS, hwndBreak, 4)
2807     TEST_FIELD_ALIGN (MCI_BREAK_PARMS, hwndBreak, 1)
2808     TEST_FIELD_OFFSET(MCI_BREAK_PARMS, hwndBreak, 8)
2809 }
2810
2811 static void test_pack_MCI_SOUND_PARMSA(void)
2812 {
2813     /* MCI_SOUND_PARMSA (pack 1) */
2814     TEST_TYPE_SIZE   (MCI_SOUND_PARMSA, 8)
2815     TEST_TYPE_ALIGN  (MCI_SOUND_PARMSA, 1)
2816     TEST_FIELD_SIZE  (MCI_SOUND_PARMSA, dwCallback, 4)
2817     TEST_FIELD_ALIGN (MCI_SOUND_PARMSA, dwCallback, 1)
2818     TEST_FIELD_OFFSET(MCI_SOUND_PARMSA, dwCallback, 0)
2819     TEST_FIELD_SIZE  (MCI_SOUND_PARMSA, lpstrSoundName, 4)
2820     TEST_FIELD_ALIGN (MCI_SOUND_PARMSA, lpstrSoundName, 1)
2821     TEST_FIELD_OFFSET(MCI_SOUND_PARMSA, lpstrSoundName, 4)
2822 }
2823
2824 static void test_pack_MCI_SOUND_PARMSW(void)
2825 {
2826     /* MCI_SOUND_PARMSW (pack 1) */
2827     TEST_TYPE_SIZE   (MCI_SOUND_PARMSW, 8)
2828     TEST_TYPE_ALIGN  (MCI_SOUND_PARMSW, 1)
2829     TEST_FIELD_SIZE  (MCI_SOUND_PARMSW, dwCallback, 4)
2830     TEST_FIELD_ALIGN (MCI_SOUND_PARMSW, dwCallback, 1)
2831     TEST_FIELD_OFFSET(MCI_SOUND_PARMSW, dwCallback, 0)
2832     TEST_FIELD_SIZE  (MCI_SOUND_PARMSW, lpstrSoundName, 4)
2833     TEST_FIELD_ALIGN (MCI_SOUND_PARMSW, lpstrSoundName, 1)
2834     TEST_FIELD_OFFSET(MCI_SOUND_PARMSW, lpstrSoundName, 4)
2835 }
2836
2837 static void test_pack_MCI_SAVE_PARMSA(void)
2838 {
2839     /* MCI_SAVE_PARMSA (pack 1) */
2840     TEST_TYPE_SIZE   (MCI_SAVE_PARMSA, 8)
2841     TEST_TYPE_ALIGN  (MCI_SAVE_PARMSA, 1)
2842     TEST_FIELD_SIZE  (MCI_SAVE_PARMSA, dwCallback, 4)
2843     TEST_FIELD_ALIGN (MCI_SAVE_PARMSA, dwCallback, 1)
2844     TEST_FIELD_OFFSET(MCI_SAVE_PARMSA, dwCallback, 0)
2845     TEST_FIELD_SIZE  (MCI_SAVE_PARMSA, lpfilename, 4)
2846     TEST_FIELD_ALIGN (MCI_SAVE_PARMSA, lpfilename, 1)
2847     TEST_FIELD_OFFSET(MCI_SAVE_PARMSA, lpfilename, 4)
2848 }
2849
2850 static void test_pack_MCI_SAVE_PARMSW(void)
2851 {
2852     /* MCI_SAVE_PARMSW (pack 1) */
2853     TEST_TYPE_SIZE   (MCI_SAVE_PARMSW, 8)
2854     TEST_TYPE_ALIGN  (MCI_SAVE_PARMSW, 1)
2855     TEST_FIELD_SIZE  (MCI_SAVE_PARMSW, dwCallback, 4)
2856     TEST_FIELD_ALIGN (MCI_SAVE_PARMSW, dwCallback, 1)
2857     TEST_FIELD_OFFSET(MCI_SAVE_PARMSW, dwCallback, 0)
2858     TEST_FIELD_SIZE  (MCI_SAVE_PARMSW, lpfilename, 4)
2859     TEST_FIELD_ALIGN (MCI_SAVE_PARMSW, lpfilename, 1)
2860     TEST_FIELD_OFFSET(MCI_SAVE_PARMSW, lpfilename, 4)
2861 }
2862
2863 static void test_pack_MCI_LOAD_PARMSA(void)
2864 {
2865     /* MCI_LOAD_PARMSA (pack 1) */
2866     TEST_TYPE_SIZE   (MCI_LOAD_PARMSA, 8)
2867     TEST_TYPE_ALIGN  (MCI_LOAD_PARMSA, 1)
2868     TEST_FIELD_SIZE  (MCI_LOAD_PARMSA, dwCallback, 4)
2869     TEST_FIELD_ALIGN (MCI_LOAD_PARMSA, dwCallback, 1)
2870     TEST_FIELD_OFFSET(MCI_LOAD_PARMSA, dwCallback, 0)
2871     TEST_FIELD_SIZE  (MCI_LOAD_PARMSA, lpfilename, 4)
2872     TEST_FIELD_ALIGN (MCI_LOAD_PARMSA, lpfilename, 1)
2873     TEST_FIELD_OFFSET(MCI_LOAD_PARMSA, lpfilename, 4)
2874 }
2875
2876 static void test_pack_MCI_LOAD_PARMSW(void)
2877 {
2878     /* MCI_LOAD_PARMSW (pack 1) */
2879     TEST_TYPE_SIZE   (MCI_LOAD_PARMSW, 8)
2880     TEST_TYPE_ALIGN  (MCI_LOAD_PARMSW, 1)
2881     TEST_FIELD_SIZE  (MCI_LOAD_PARMSW, dwCallback, 4)
2882     TEST_FIELD_ALIGN (MCI_LOAD_PARMSW, dwCallback, 1)
2883     TEST_FIELD_OFFSET(MCI_LOAD_PARMSW, dwCallback, 0)
2884     TEST_FIELD_SIZE  (MCI_LOAD_PARMSW, lpfilename, 4)
2885     TEST_FIELD_ALIGN (MCI_LOAD_PARMSW, lpfilename, 1)
2886     TEST_FIELD_OFFSET(MCI_LOAD_PARMSW, lpfilename, 4)
2887 }
2888
2889 static void test_pack_MCI_RECORD_PARMS(void)
2890 {
2891     /* MCI_RECORD_PARMS (pack 1) */
2892     TEST_TYPE_SIZE   (MCI_RECORD_PARMS, 12)
2893     TEST_TYPE_ALIGN  (MCI_RECORD_PARMS, 1)
2894     TEST_FIELD_SIZE  (MCI_RECORD_PARMS, dwCallback, 4)
2895     TEST_FIELD_ALIGN (MCI_RECORD_PARMS, dwCallback, 1)
2896     TEST_FIELD_OFFSET(MCI_RECORD_PARMS, dwCallback, 0)
2897     TEST_FIELD_SIZE  (MCI_RECORD_PARMS, dwFrom, 4)
2898     TEST_FIELD_ALIGN (MCI_RECORD_PARMS, dwFrom, 1)
2899     TEST_FIELD_OFFSET(MCI_RECORD_PARMS, dwFrom, 4)
2900     TEST_FIELD_SIZE  (MCI_RECORD_PARMS, dwTo, 4)
2901     TEST_FIELD_ALIGN (MCI_RECORD_PARMS, dwTo, 1)
2902     TEST_FIELD_OFFSET(MCI_RECORD_PARMS, dwTo, 8)
2903 }
2904
2905 static void test_pack_MCI_VD_PLAY_PARMS(void)
2906 {
2907     /* MCI_VD_PLAY_PARMS (pack 1) */
2908     TEST_TYPE_SIZE   (MCI_VD_PLAY_PARMS, 16)
2909     TEST_TYPE_ALIGN  (MCI_VD_PLAY_PARMS, 1)
2910     TEST_FIELD_SIZE  (MCI_VD_PLAY_PARMS, dwCallback, 4)
2911     TEST_FIELD_ALIGN (MCI_VD_PLAY_PARMS, dwCallback, 1)
2912     TEST_FIELD_OFFSET(MCI_VD_PLAY_PARMS, dwCallback, 0)
2913     TEST_FIELD_SIZE  (MCI_VD_PLAY_PARMS, dwFrom, 4)
2914     TEST_FIELD_ALIGN (MCI_VD_PLAY_PARMS, dwFrom, 1)
2915     TEST_FIELD_OFFSET(MCI_VD_PLAY_PARMS, dwFrom, 4)
2916     TEST_FIELD_SIZE  (MCI_VD_PLAY_PARMS, dwTo, 4)
2917     TEST_FIELD_ALIGN (MCI_VD_PLAY_PARMS, dwTo, 1)
2918     TEST_FIELD_OFFSET(MCI_VD_PLAY_PARMS, dwTo, 8)
2919     TEST_FIELD_SIZE  (MCI_VD_PLAY_PARMS, dwSpeed, 4)
2920     TEST_FIELD_ALIGN (MCI_VD_PLAY_PARMS, dwSpeed, 1)
2921     TEST_FIELD_OFFSET(MCI_VD_PLAY_PARMS, dwSpeed, 12)
2922 }
2923
2924 static void test_pack_MCI_VD_STEP_PARMS(void)
2925 {
2926     /* MCI_VD_STEP_PARMS (pack 1) */
2927     TEST_TYPE_SIZE   (MCI_VD_STEP_PARMS, 8)
2928     TEST_TYPE_ALIGN  (MCI_VD_STEP_PARMS, 1)
2929     TEST_FIELD_SIZE  (MCI_VD_STEP_PARMS, dwCallback, 4)
2930     TEST_FIELD_ALIGN (MCI_VD_STEP_PARMS, dwCallback, 1)
2931     TEST_FIELD_OFFSET(MCI_VD_STEP_PARMS, dwCallback, 0)
2932     TEST_FIELD_SIZE  (MCI_VD_STEP_PARMS, dwFrames, 4)
2933     TEST_FIELD_ALIGN (MCI_VD_STEP_PARMS, dwFrames, 1)
2934     TEST_FIELD_OFFSET(MCI_VD_STEP_PARMS, dwFrames, 4)
2935 }
2936
2937 static void test_pack_MCI_VD_ESCAPE_PARMSA(void)
2938 {
2939     /* MCI_VD_ESCAPE_PARMSA (pack 1) */
2940     TEST_TYPE_SIZE   (MCI_VD_ESCAPE_PARMSA, 8)
2941     TEST_TYPE_ALIGN  (MCI_VD_ESCAPE_PARMSA, 1)
2942     TEST_FIELD_SIZE  (MCI_VD_ESCAPE_PARMSA, dwCallback, 4)
2943     TEST_FIELD_ALIGN (MCI_VD_ESCAPE_PARMSA, dwCallback, 1)
2944     TEST_FIELD_OFFSET(MCI_VD_ESCAPE_PARMSA, dwCallback, 0)
2945     TEST_FIELD_SIZE  (MCI_VD_ESCAPE_PARMSA, lpstrCommand, 4)
2946     TEST_FIELD_ALIGN (MCI_VD_ESCAPE_PARMSA, lpstrCommand, 1)
2947     TEST_FIELD_OFFSET(MCI_VD_ESCAPE_PARMSA, lpstrCommand, 4)
2948 }
2949
2950 static void test_pack_MCI_VD_ESCAPE_PARMSW(void)
2951 {
2952     /* MCI_VD_ESCAPE_PARMSW (pack 1) */
2953     TEST_TYPE_SIZE   (MCI_VD_ESCAPE_PARMSW, 8)
2954     TEST_TYPE_ALIGN  (MCI_VD_ESCAPE_PARMSW, 1)
2955     TEST_FIELD_SIZE  (MCI_VD_ESCAPE_PARMSW, dwCallback, 4)
2956     TEST_FIELD_ALIGN (MCI_VD_ESCAPE_PARMSW, dwCallback, 1)
2957     TEST_FIELD_OFFSET(MCI_VD_ESCAPE_PARMSW, dwCallback, 0)
2958     TEST_FIELD_SIZE  (MCI_VD_ESCAPE_PARMSW, lpstrCommand, 4)
2959     TEST_FIELD_ALIGN (MCI_VD_ESCAPE_PARMSW, lpstrCommand, 1)
2960     TEST_FIELD_OFFSET(MCI_VD_ESCAPE_PARMSW, lpstrCommand, 4)
2961 }
2962
2963 static void test_pack_MCI_WAVE_OPEN_PARMSA(void)
2964 {
2965     /* MCI_WAVE_OPEN_PARMSA (pack 1) */
2966     TEST_TYPE_SIZE   (MCI_WAVE_OPEN_PARMSA, 24)
2967     TEST_TYPE_ALIGN  (MCI_WAVE_OPEN_PARMSA, 1)
2968     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, dwCallback, 4)
2969     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, dwCallback, 1)
2970     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, dwCallback, 0)
2971     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, wDeviceID, 4)
2972     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, wDeviceID, 1)
2973     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, wDeviceID, 4)
2974     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, lpstrDeviceType, 4)
2975     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, lpstrDeviceType, 1)
2976     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, lpstrDeviceType, 8)
2977     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, lpstrElementName, 4)
2978     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, lpstrElementName, 1)
2979     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, lpstrElementName, 12)
2980     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, lpstrAlias, 4)
2981     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, lpstrAlias, 1)
2982     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, lpstrAlias, 16)
2983     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSA, dwBufferSeconds, 4)
2984     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSA, dwBufferSeconds, 1)
2985     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSA, dwBufferSeconds, 20)
2986 }
2987
2988 static void test_pack_MCI_WAVE_OPEN_PARMSW(void)
2989 {
2990     /* MCI_WAVE_OPEN_PARMSW (pack 1) */
2991     TEST_TYPE_SIZE   (MCI_WAVE_OPEN_PARMSW, 24)
2992     TEST_TYPE_ALIGN  (MCI_WAVE_OPEN_PARMSW, 1)
2993     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, dwCallback, 4)
2994     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, dwCallback, 1)
2995     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, dwCallback, 0)
2996     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, wDeviceID, 4)
2997     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, wDeviceID, 1)
2998     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, wDeviceID, 4)
2999     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, lpstrDeviceType, 4)
3000     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, lpstrDeviceType, 1)
3001     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, lpstrDeviceType, 8)
3002     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, lpstrElementName, 4)
3003     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, lpstrElementName, 1)
3004     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, lpstrElementName, 12)
3005     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, lpstrAlias, 4)
3006     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, lpstrAlias, 1)
3007     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, lpstrAlias, 16)
3008     TEST_FIELD_SIZE  (MCI_WAVE_OPEN_PARMSW, dwBufferSeconds, 4)
3009     TEST_FIELD_ALIGN (MCI_WAVE_OPEN_PARMSW, dwBufferSeconds, 1)
3010     TEST_FIELD_OFFSET(MCI_WAVE_OPEN_PARMSW, dwBufferSeconds, 20)
3011 }
3012
3013 static void test_pack_MCI_WAVE_DELETE_PARMS(void)
3014 {
3015     /* MCI_WAVE_DELETE_PARMS (pack 1) */
3016     TEST_TYPE_SIZE   (MCI_WAVE_DELETE_PARMS, 12)
3017     TEST_TYPE_ALIGN  (MCI_WAVE_DELETE_PARMS, 1)
3018     TEST_FIELD_SIZE  (MCI_WAVE_DELETE_PARMS, dwCallback, 4)
3019     TEST_FIELD_ALIGN (MCI_WAVE_DELETE_PARMS, dwCallback, 1)
3020     TEST_FIELD_OFFSET(MCI_WAVE_DELETE_PARMS, dwCallback, 0)
3021     TEST_FIELD_SIZE  (MCI_WAVE_DELETE_PARMS, dwFrom, 4)
3022     TEST_FIELD_ALIGN (MCI_WAVE_DELETE_PARMS, dwFrom, 1)
3023     TEST_FIELD_OFFSET(MCI_WAVE_DELETE_PARMS, dwFrom, 4)
3024     TEST_FIELD_SIZE  (MCI_WAVE_DELETE_PARMS, dwTo, 4)
3025     TEST_FIELD_ALIGN (MCI_WAVE_DELETE_PARMS, dwTo, 1)
3026     TEST_FIELD_OFFSET(MCI_WAVE_DELETE_PARMS, dwTo, 8)
3027 }
3028
3029 static void test_pack_MCI_WAVE_SET_PARMS(void)
3030 {
3031     /* MCI_WAVE_SET_PARMS (pack 1) */
3032     TEST_TYPE_SIZE   (MCI_WAVE_SET_PARMS, 44)
3033     TEST_TYPE_ALIGN  (MCI_WAVE_SET_PARMS, 1)
3034     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, dwCallback, 4)
3035     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, dwCallback, 1)
3036     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, dwCallback, 0)
3037     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, dwTimeFormat, 4)
3038     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, dwTimeFormat, 1)
3039     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, dwTimeFormat, 4)
3040     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, dwAudio, 4)
3041     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, dwAudio, 1)
3042     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, dwAudio, 8)
3043     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, wInput, 4)
3044     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, wInput, 1)
3045     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, wInput, 12)
3046     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, wOutput, 4)
3047     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, wOutput, 1)
3048     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, wOutput, 16)
3049     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, wFormatTag, 4)
3050     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, wFormatTag, 1)
3051     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, wFormatTag, 20)
3052     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, nChannels, 4)
3053     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, nChannels, 1)
3054     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, nChannels, 24)
3055     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, nSamplesPerSec, 4)
3056     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, nSamplesPerSec, 1)
3057     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, nSamplesPerSec, 28)
3058     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, nAvgBytesPerSec, 4)
3059     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, nAvgBytesPerSec, 1)
3060     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, nAvgBytesPerSec, 32)
3061     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, nBlockAlign, 4)
3062     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, nBlockAlign, 1)
3063     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, nBlockAlign, 36)
3064     TEST_FIELD_SIZE  (MCI_WAVE_SET_PARMS, wBitsPerSample, 4)
3065     TEST_FIELD_ALIGN (MCI_WAVE_SET_PARMS, wBitsPerSample, 1)
3066     TEST_FIELD_OFFSET(MCI_WAVE_SET_PARMS, wBitsPerSample, 40)
3067 }
3068
3069 static void test_pack_MCI_SEQ_SET_PARMS(void)
3070 {
3071     /* MCI_SEQ_SET_PARMS (pack 1) */
3072     TEST_TYPE_SIZE   (MCI_SEQ_SET_PARMS, 32)
3073     TEST_TYPE_ALIGN  (MCI_SEQ_SET_PARMS, 1)
3074     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwCallback, 4)
3075     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwCallback, 1)
3076     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwCallback, 0)
3077     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwTimeFormat, 4)
3078     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwTimeFormat, 1)
3079     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwTimeFormat, 4)
3080     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwAudio, 4)
3081     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwAudio, 1)
3082     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwAudio, 8)
3083     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwTempo, 4)
3084     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwTempo, 1)
3085     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwTempo, 12)
3086     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwPort, 4)
3087     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwPort, 1)
3088     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwPort, 16)
3089     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwSlave, 4)
3090     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwSlave, 1)
3091     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwSlave, 20)
3092     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwMaster, 4)
3093     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwMaster, 1)
3094     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwMaster, 24)
3095     TEST_FIELD_SIZE  (MCI_SEQ_SET_PARMS, dwOffset, 4)
3096     TEST_FIELD_ALIGN (MCI_SEQ_SET_PARMS, dwOffset, 1)
3097     TEST_FIELD_OFFSET(MCI_SEQ_SET_PARMS, dwOffset, 28)
3098 }
3099
3100 static void test_pack_MCI_ANIM_OPEN_PARMSA(void)
3101 {
3102     /* MCI_ANIM_OPEN_PARMSA (pack 1) */
3103     TEST_TYPE_SIZE   (MCI_ANIM_OPEN_PARMSA, 28)
3104     TEST_TYPE_ALIGN  (MCI_ANIM_OPEN_PARMSA, 1)
3105     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, dwCallback, 4)
3106     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, dwCallback, 1)
3107     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, dwCallback, 0)
3108     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, wDeviceID, 4)
3109     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, wDeviceID, 1)
3110     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, wDeviceID, 4)
3111     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, lpstrDeviceType, 4)
3112     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, lpstrDeviceType, 1)
3113     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, lpstrDeviceType, 8)
3114     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, lpstrElementName, 4)
3115     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, lpstrElementName, 1)
3116     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, lpstrElementName, 12)
3117     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, lpstrAlias, 4)
3118     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, lpstrAlias, 1)
3119     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, lpstrAlias, 16)
3120     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, dwStyle, 4)
3121     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, dwStyle, 1)
3122     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, dwStyle, 20)
3123     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSA, hWndParent, 4)
3124     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSA, hWndParent, 1)
3125     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSA, hWndParent, 24)
3126 }
3127
3128 static void test_pack_MCI_ANIM_OPEN_PARMSW(void)
3129 {
3130     /* MCI_ANIM_OPEN_PARMSW (pack 1) */
3131     TEST_TYPE_SIZE   (MCI_ANIM_OPEN_PARMSW, 28)
3132     TEST_TYPE_ALIGN  (MCI_ANIM_OPEN_PARMSW, 1)
3133     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, dwCallback, 4)
3134     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, dwCallback, 1)
3135     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, dwCallback, 0)
3136     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, wDeviceID, 4)
3137     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, wDeviceID, 1)
3138     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, wDeviceID, 4)
3139     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, lpstrDeviceType, 4)
3140     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, lpstrDeviceType, 1)
3141     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, lpstrDeviceType, 8)
3142     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, lpstrElementName, 4)
3143     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, lpstrElementName, 1)
3144     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, lpstrElementName, 12)
3145     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, lpstrAlias, 4)
3146     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, lpstrAlias, 1)
3147     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, lpstrAlias, 16)
3148     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, dwStyle, 4)
3149     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, dwStyle, 1)
3150     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, dwStyle, 20)
3151     TEST_FIELD_SIZE  (MCI_ANIM_OPEN_PARMSW, hWndParent, 4)
3152     TEST_FIELD_ALIGN (MCI_ANIM_OPEN_PARMSW, hWndParent, 1)
3153     TEST_FIELD_OFFSET(MCI_ANIM_OPEN_PARMSW, hWndParent, 24)
3154 }
3155
3156 static void test_pack_MCI_ANIM_PLAY_PARMS(void)
3157 {
3158     /* MCI_ANIM_PLAY_PARMS (pack 1) */
3159     TEST_TYPE_SIZE   (MCI_ANIM_PLAY_PARMS, 16)
3160     TEST_TYPE_ALIGN  (MCI_ANIM_PLAY_PARMS, 1)
3161     TEST_FIELD_SIZE  (MCI_ANIM_PLAY_PARMS, dwCallback, 4)
3162     TEST_FIELD_ALIGN (MCI_ANIM_PLAY_PARMS, dwCallback, 1)
3163     TEST_FIELD_OFFSET(MCI_ANIM_PLAY_PARMS, dwCallback, 0)
3164     TEST_FIELD_SIZE  (MCI_ANIM_PLAY_PARMS, dwFrom, 4)
3165     TEST_FIELD_ALIGN (MCI_ANIM_PLAY_PARMS, dwFrom, 1)
3166     TEST_FIELD_OFFSET(MCI_ANIM_PLAY_PARMS, dwFrom, 4)
3167     TEST_FIELD_SIZE  (MCI_ANIM_PLAY_PARMS, dwTo, 4)
3168     TEST_FIELD_ALIGN (MCI_ANIM_PLAY_PARMS, dwTo, 1)
3169     TEST_FIELD_OFFSET(MCI_ANIM_PLAY_PARMS, dwTo, 8)
3170     TEST_FIELD_SIZE  (MCI_ANIM_PLAY_PARMS, dwSpeed, 4)
3171     TEST_FIELD_ALIGN (MCI_ANIM_PLAY_PARMS, dwSpeed, 1)
3172     TEST_FIELD_OFFSET(MCI_ANIM_PLAY_PARMS, dwSpeed, 12)
3173 }
3174
3175 static void test_pack_MCI_ANIM_STEP_PARMS(void)
3176 {
3177     /* MCI_ANIM_STEP_PARMS (pack 1) */
3178     TEST_TYPE_SIZE   (MCI_ANIM_STEP_PARMS, 8)
3179     TEST_TYPE_ALIGN  (MCI_ANIM_STEP_PARMS, 1)
3180     TEST_FIELD_SIZE  (MCI_ANIM_STEP_PARMS, dwCallback, 4)
3181     TEST_FIELD_ALIGN (MCI_ANIM_STEP_PARMS, dwCallback, 1)
3182     TEST_FIELD_OFFSET(MCI_ANIM_STEP_PARMS, dwCallback, 0)
3183     TEST_FIELD_SIZE  (MCI_ANIM_STEP_PARMS, dwFrames, 4)
3184     TEST_FIELD_ALIGN (MCI_ANIM_STEP_PARMS, dwFrames, 1)
3185     TEST_FIELD_OFFSET(MCI_ANIM_STEP_PARMS, dwFrames, 4)
3186 }
3187
3188 static void test_pack_MCI_ANIM_WINDOW_PARMSA(void)
3189 {
3190     /* MCI_ANIM_WINDOW_PARMSA (pack 1) */
3191     TEST_TYPE_SIZE   (MCI_ANIM_WINDOW_PARMSA, 16)
3192     TEST_TYPE_ALIGN  (MCI_ANIM_WINDOW_PARMSA, 1)
3193     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSA, dwCallback, 4)
3194     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSA, dwCallback, 1)
3195     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSA, dwCallback, 0)
3196     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSA, hWnd, 4)
3197     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSA, hWnd, 1)
3198     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSA, hWnd, 4)
3199     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSA, nCmdShow, 4)
3200     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSA, nCmdShow, 1)
3201     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSA, nCmdShow, 8)
3202     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSA, lpstrText, 4)
3203     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSA, lpstrText, 1)
3204     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSA, lpstrText, 12)
3205 }
3206
3207 static void test_pack_MCI_ANIM_WINDOW_PARMSW(void)
3208 {
3209     /* MCI_ANIM_WINDOW_PARMSW (pack 1) */
3210     TEST_TYPE_SIZE   (MCI_ANIM_WINDOW_PARMSW, 16)
3211     TEST_TYPE_ALIGN  (MCI_ANIM_WINDOW_PARMSW, 1)
3212     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSW, dwCallback, 4)
3213     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSW, dwCallback, 1)
3214     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSW, dwCallback, 0)
3215     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSW, hWnd, 4)
3216     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSW, hWnd, 1)
3217     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSW, hWnd, 4)
3218     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSW, nCmdShow, 4)
3219     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSW, nCmdShow, 1)
3220     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSW, nCmdShow, 8)
3221     TEST_FIELD_SIZE  (MCI_ANIM_WINDOW_PARMSW, lpstrText, 4)
3222     TEST_FIELD_ALIGN (MCI_ANIM_WINDOW_PARMSW, lpstrText, 1)
3223     TEST_FIELD_OFFSET(MCI_ANIM_WINDOW_PARMSW, lpstrText, 12)
3224 }
3225
3226 static void test_pack_MCI_ANIM_UPDATE_PARMS(void)
3227 {
3228     /* MCI_ANIM_UPDATE_PARMS (pack 1) */
3229     TEST_TYPE_SIZE   (MCI_ANIM_UPDATE_PARMS, 24)
3230     TEST_TYPE_ALIGN  (MCI_ANIM_UPDATE_PARMS, 1)
3231     TEST_FIELD_SIZE  (MCI_ANIM_UPDATE_PARMS, dwCallback, 4)
3232     TEST_FIELD_ALIGN (MCI_ANIM_UPDATE_PARMS, dwCallback, 1)
3233     TEST_FIELD_OFFSET(MCI_ANIM_UPDATE_PARMS, dwCallback, 0)
3234     TEST_FIELD_SIZE  (MCI_ANIM_UPDATE_PARMS, rc, 16)
3235     TEST_FIELD_ALIGN (MCI_ANIM_UPDATE_PARMS, rc, 1)
3236     TEST_FIELD_OFFSET(MCI_ANIM_UPDATE_PARMS, rc, 4)
3237     TEST_FIELD_SIZE  (MCI_ANIM_UPDATE_PARMS, hDC, 4)
3238     TEST_FIELD_ALIGN (MCI_ANIM_UPDATE_PARMS, hDC, 1)
3239     TEST_FIELD_OFFSET(MCI_ANIM_UPDATE_PARMS, hDC, 20)
3240 }
3241
3242 static void test_pack_MCI_OVLY_OPEN_PARMSA(void)
3243 {
3244     /* MCI_OVLY_OPEN_PARMSA (pack 1) */
3245     TEST_TYPE_SIZE   (MCI_OVLY_OPEN_PARMSA, 28)
3246     TEST_TYPE_ALIGN  (MCI_OVLY_OPEN_PARMSA, 1)
3247     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, dwCallback, 4)
3248     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, dwCallback, 1)
3249     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, dwCallback, 0)
3250     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, wDeviceID, 4)
3251     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, wDeviceID, 1)
3252     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, wDeviceID, 4)
3253     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, lpstrDeviceType, 4)
3254     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, lpstrDeviceType, 1)
3255     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, lpstrDeviceType, 8)
3256     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, lpstrElementName, 4)
3257     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, lpstrElementName, 1)
3258     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, lpstrElementName, 12)
3259     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, lpstrAlias, 4)
3260     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, lpstrAlias, 1)
3261     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, lpstrAlias, 16)
3262     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, dwStyle, 4)
3263     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, dwStyle, 1)
3264     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, dwStyle, 20)
3265     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSA, hWndParent, 4)
3266     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSA, hWndParent, 1)
3267     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSA, hWndParent, 24)
3268 }
3269
3270 static void test_pack_MCI_OVLY_OPEN_PARMSW(void)
3271 {
3272     /* MCI_OVLY_OPEN_PARMSW (pack 1) */
3273     TEST_TYPE_SIZE   (MCI_OVLY_OPEN_PARMSW, 28)
3274     TEST_TYPE_ALIGN  (MCI_OVLY_OPEN_PARMSW, 1)
3275     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, dwCallback, 4)
3276     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, dwCallback, 1)
3277     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, dwCallback, 0)
3278     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, wDeviceID, 4)
3279     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, wDeviceID, 1)
3280     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, wDeviceID, 4)
3281     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, lpstrDeviceType, 4)
3282     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, lpstrDeviceType, 1)
3283     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, lpstrDeviceType, 8)
3284     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, lpstrElementName, 4)
3285     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, lpstrElementName, 1)
3286     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, lpstrElementName, 12)
3287     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, lpstrAlias, 4)
3288     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, lpstrAlias, 1)
3289     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, lpstrAlias, 16)
3290     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, dwStyle, 4)
3291     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, dwStyle, 1)
3292     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, dwStyle, 20)
3293     TEST_FIELD_SIZE  (MCI_OVLY_OPEN_PARMSW, hWndParent, 4)
3294     TEST_FIELD_ALIGN (MCI_OVLY_OPEN_PARMSW, hWndParent, 1)
3295     TEST_FIELD_OFFSET(MCI_OVLY_OPEN_PARMSW, hWndParent, 24)
3296 }
3297
3298 static void test_pack_MCI_OVLY_WINDOW_PARMSA(void)
3299 {
3300     /* MCI_OVLY_WINDOW_PARMSA (pack 1) */
3301     TEST_TYPE_SIZE   (MCI_OVLY_WINDOW_PARMSA, 16)
3302     TEST_TYPE_ALIGN  (MCI_OVLY_WINDOW_PARMSA, 1)
3303     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSA, dwCallback, 4)
3304     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSA, dwCallback, 1)
3305     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSA, dwCallback, 0)
3306     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSA, hWnd, 4)
3307     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSA, hWnd, 1)
3308     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSA, hWnd, 4)
3309     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSA, nCmdShow, 4)
3310     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSA, nCmdShow, 1)
3311     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSA, nCmdShow, 8)
3312     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSA, lpstrText, 4)
3313     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSA, lpstrText, 1)
3314     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSA, lpstrText, 12)
3315 }
3316
3317 static void test_pack_MCI_OVLY_WINDOW_PARMSW(void)
3318 {
3319     /* MCI_OVLY_WINDOW_PARMSW (pack 1) */
3320     TEST_TYPE_SIZE   (MCI_OVLY_WINDOW_PARMSW, 16)
3321     TEST_TYPE_ALIGN  (MCI_OVLY_WINDOW_PARMSW, 1)
3322     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSW, dwCallback, 4)
3323     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSW, dwCallback, 1)
3324     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSW, dwCallback, 0)
3325     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSW, hWnd, 4)
3326     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSW, hWnd, 1)
3327     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSW, hWnd, 4)
3328     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSW, nCmdShow, 4)
3329     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSW, nCmdShow, 1)
3330     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSW, nCmdShow, 8)
3331     TEST_FIELD_SIZE  (MCI_OVLY_WINDOW_PARMSW, lpstrText, 4)
3332     TEST_FIELD_ALIGN (MCI_OVLY_WINDOW_PARMSW, lpstrText, 1)
3333     TEST_FIELD_OFFSET(MCI_OVLY_WINDOW_PARMSW, lpstrText, 12)
3334 }
3335
3336 static void test_pack_MCI_OVLY_SAVE_PARMSA(void)
3337 {
3338     /* MCI_OVLY_SAVE_PARMSA (pack 1) */
3339     TEST_TYPE_SIZE   (MCI_OVLY_SAVE_PARMSA, 24)
3340     TEST_TYPE_ALIGN  (MCI_OVLY_SAVE_PARMSA, 1)
3341     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSA, dwCallback, 4)
3342     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSA, dwCallback, 1)
3343     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSA, dwCallback, 0)
3344     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSA, lpfilename, 4)
3345     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSA, lpfilename, 1)
3346     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSA, lpfilename, 4)
3347     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSA, rc, 16)
3348     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSA, rc, 1)
3349     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSA, rc, 8)
3350 }
3351
3352 static void test_pack_MCI_OVLY_SAVE_PARMSW(void)
3353 {
3354     /* MCI_OVLY_SAVE_PARMSW (pack 1) */
3355     TEST_TYPE_SIZE   (MCI_OVLY_SAVE_PARMSW, 24)
3356     TEST_TYPE_ALIGN  (MCI_OVLY_SAVE_PARMSW, 1)
3357     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSW, dwCallback, 4)
3358     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSW, dwCallback, 1)
3359     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSW, dwCallback, 0)
3360     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSW, lpfilename, 4)
3361     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSW, lpfilename, 1)
3362     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSW, lpfilename, 4)
3363     TEST_FIELD_SIZE  (MCI_OVLY_SAVE_PARMSW, rc, 16)
3364     TEST_FIELD_ALIGN (MCI_OVLY_SAVE_PARMSW, rc, 1)
3365     TEST_FIELD_OFFSET(MCI_OVLY_SAVE_PARMSW, rc, 8)
3366 }
3367
3368 static void test_pack_MCI_OVLY_LOAD_PARMSA(void)
3369 {
3370     /* MCI_OVLY_LOAD_PARMSA (pack 1) */
3371     TEST_TYPE_SIZE   (MCI_OVLY_LOAD_PARMSA, 24)
3372     TEST_TYPE_ALIGN  (MCI_OVLY_LOAD_PARMSA, 1)
3373     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSA, dwCallback, 4)
3374     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSA, dwCallback, 1)
3375     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSA, dwCallback, 0)
3376     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSA, lpfilename, 4)
3377     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSA, lpfilename, 1)
3378     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSA, lpfilename, 4)
3379     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSA, rc, 16)
3380     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSA, rc, 1)
3381     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSA, rc, 8)
3382 }
3383
3384 static void test_pack_MCI_OVLY_LOAD_PARMSW(void)
3385 {
3386     /* MCI_OVLY_LOAD_PARMSW (pack 1) */
3387     TEST_TYPE_SIZE   (MCI_OVLY_LOAD_PARMSW, 24)
3388     TEST_TYPE_ALIGN  (MCI_OVLY_LOAD_PARMSW, 1)
3389     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSW, dwCallback, 4)
3390     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSW, dwCallback, 1)
3391     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSW, dwCallback, 0)
3392     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSW, lpfilename, 4)
3393     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSW, lpfilename, 1)
3394     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSW, lpfilename, 4)
3395     TEST_FIELD_SIZE  (MCI_OVLY_LOAD_PARMSW, rc, 16)
3396     TEST_FIELD_ALIGN (MCI_OVLY_LOAD_PARMSW, rc, 1)
3397     TEST_FIELD_OFFSET(MCI_OVLY_LOAD_PARMSW, rc, 8)
3398 }
3399
3400 #endif /* _WIN64 */
3401
3402 static void test_pack(void)
3403 {
3404     test_pack_AUXCAPS2A();
3405     test_pack_AUXCAPS2W();
3406     test_pack_AUXCAPSA();
3407     test_pack_AUXCAPSW();
3408     test_pack_DRVCONFIGINFO();
3409     test_pack_JOYCAPS2A();
3410     test_pack_JOYCAPS2W();
3411     test_pack_JOYCAPSA();
3412     test_pack_JOYCAPSW();
3413     test_pack_JOYINFO();
3414     test_pack_JOYINFOEX();
3415     test_pack_MCI_ANIM_OPEN_PARMSA();
3416     test_pack_MCI_ANIM_OPEN_PARMSW();
3417     test_pack_MCI_ANIM_PLAY_PARMS();
3418     test_pack_MCI_ANIM_STEP_PARMS();
3419     test_pack_MCI_ANIM_UPDATE_PARMS();
3420     test_pack_MCI_ANIM_WINDOW_PARMSA();
3421     test_pack_MCI_ANIM_WINDOW_PARMSW();
3422     test_pack_MCI_BREAK_PARMS();
3423     test_pack_MCI_GENERIC_PARMS();
3424     test_pack_MCI_GETDEVCAPS_PARMS();
3425     test_pack_MCI_INFO_PARMSA();
3426     test_pack_MCI_INFO_PARMSW();
3427     test_pack_MCI_LOAD_PARMSA();
3428     test_pack_MCI_LOAD_PARMSW();
3429     test_pack_MCI_OPEN_PARMSA();
3430     test_pack_MCI_OPEN_PARMSW();
3431     test_pack_MCI_OVLY_LOAD_PARMSA();
3432     test_pack_MCI_OVLY_LOAD_PARMSW();
3433     test_pack_MCI_OVLY_OPEN_PARMSA();
3434     test_pack_MCI_OVLY_OPEN_PARMSW();
3435     test_pack_MCI_OVLY_SAVE_PARMSA();
3436     test_pack_MCI_OVLY_SAVE_PARMSW();
3437     test_pack_MCI_OVLY_WINDOW_PARMSA();
3438     test_pack_MCI_OVLY_WINDOW_PARMSW();
3439     test_pack_MCI_PLAY_PARMS();
3440     test_pack_MCI_RECORD_PARMS();
3441     test_pack_MCI_SAVE_PARMSA();
3442     test_pack_MCI_SAVE_PARMSW();
3443     test_pack_MCI_SEEK_PARMS();
3444     test_pack_MCI_SEQ_SET_PARMS();
3445     test_pack_MCI_SET_PARMS();
3446     test_pack_MCI_SOUND_PARMSA();
3447     test_pack_MCI_SOUND_PARMSW();
3448     test_pack_MCI_STATUS_PARMS();
3449     test_pack_MCI_SYSINFO_PARMSA();
3450     test_pack_MCI_SYSINFO_PARMSW();
3451     test_pack_MCI_VD_ESCAPE_PARMSA();
3452     test_pack_MCI_VD_ESCAPE_PARMSW();
3453     test_pack_MCI_VD_PLAY_PARMS();
3454     test_pack_MCI_VD_STEP_PARMS();
3455     test_pack_MCI_WAVE_DELETE_PARMS();
3456     test_pack_MCI_WAVE_OPEN_PARMSA();
3457     test_pack_MCI_WAVE_OPEN_PARMSW();
3458     test_pack_MCI_WAVE_SET_PARMS();
3459     test_pack_MIDIEVENT();
3460     test_pack_MIDIHDR();
3461     test_pack_MIDIINCAPS2A();
3462     test_pack_MIDIINCAPS2W();
3463     test_pack_MIDIINCAPSA();
3464     test_pack_MIDIINCAPSW();
3465     test_pack_MIDIOUTCAPS2A();
3466     test_pack_MIDIOUTCAPS2W();
3467     test_pack_MIDIOUTCAPSA();
3468     test_pack_MIDIOUTCAPSW();
3469     test_pack_MIXERCAPS2A();
3470     test_pack_MIXERCAPS2W();
3471     test_pack_MIXERCAPSA();
3472     test_pack_MIXERCAPSW();
3473     test_pack_MIXERCONTROLA();
3474     test_pack_MIXERCONTROLDETAILS();
3475     test_pack_MIXERCONTROLDETAILS_BOOLEAN();
3476     test_pack_MIXERCONTROLDETAILS_LISTTEXTA();
3477     test_pack_MIXERCONTROLDETAILS_LISTTEXTW();
3478     test_pack_MIXERCONTROLDETAILS_SIGNED();
3479     test_pack_MIXERCONTROLDETAILS_UNSIGNED();
3480     test_pack_MIXERCONTROLW();
3481     test_pack_MIXERLINEA();
3482     test_pack_MIXERLINEW();
3483     test_pack_MMCKINFO();
3484     test_pack_MMIOINFO();
3485     test_pack_MMTIME();
3486     test_pack_PCMWAVEFORMAT();
3487     test_pack_TIMECAPS();
3488     test_pack_WAVEFORMAT();
3489     test_pack_WAVEFORMATEX();
3490     test_pack_WAVEHDR();
3491     test_pack_WAVEINCAPS2A();
3492     test_pack_WAVEINCAPS2W();
3493     test_pack_WAVEINCAPSA();
3494     test_pack_WAVEINCAPSW();
3495     test_pack_WAVEOUTCAPS2A();
3496     test_pack_WAVEOUTCAPS2W();
3497     test_pack_WAVEOUTCAPSA();
3498     test_pack_WAVEOUTCAPSW();
3499 }
3500
3501 START_TEST(generated)
3502 {
3503     test_pack();
3504 }