gdi32: Allow a driver to implement SelectBitmap but not CreateBitmap.
[wine] / dlls / gdi32 / 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_ABC(void)
81 {
82     /* ABC */
83     TEST_TYPE_SIZE   (ABC, 12)
84     TEST_TYPE_ALIGN  (ABC, 4)
85     TEST_FIELD_SIZE  (ABC, abcA, 4)
86     TEST_FIELD_ALIGN (ABC, abcA, 4)
87     TEST_FIELD_OFFSET(ABC, abcA, 0)
88     TEST_FIELD_SIZE  (ABC, abcB, 4)
89     TEST_FIELD_ALIGN (ABC, abcB, 4)
90     TEST_FIELD_OFFSET(ABC, abcB, 4)
91     TEST_FIELD_SIZE  (ABC, abcC, 4)
92     TEST_FIELD_ALIGN (ABC, abcC, 4)
93     TEST_FIELD_OFFSET(ABC, abcC, 8)
94 }
95
96 static void test_pack_ABCFLOAT(void)
97 {
98     /* ABCFLOAT */
99     TEST_TYPE_SIZE   (ABCFLOAT, 12)
100     TEST_TYPE_ALIGN  (ABCFLOAT, 4)
101     TEST_FIELD_SIZE  (ABCFLOAT, abcfA, 4)
102     TEST_FIELD_ALIGN (ABCFLOAT, abcfA, 4)
103     TEST_FIELD_OFFSET(ABCFLOAT, abcfA, 0)
104     TEST_FIELD_SIZE  (ABCFLOAT, abcfB, 4)
105     TEST_FIELD_ALIGN (ABCFLOAT, abcfB, 4)
106     TEST_FIELD_OFFSET(ABCFLOAT, abcfB, 4)
107     TEST_FIELD_SIZE  (ABCFLOAT, abcfC, 4)
108     TEST_FIELD_ALIGN (ABCFLOAT, abcfC, 4)
109     TEST_FIELD_OFFSET(ABCFLOAT, abcfC, 8)
110 }
111
112 static void test_pack_ABORTPROC(void)
113 {
114     /* ABORTPROC */
115     TEST_TYPE_SIZE   (ABORTPROC, 8)
116     TEST_TYPE_ALIGN  (ABORTPROC, 8)
117 }
118
119 static void test_pack_BITMAP(void)
120 {
121     /* BITMAP */
122     TEST_TYPE_SIZE   (BITMAP, 32)
123     TEST_TYPE_ALIGN  (BITMAP, 8)
124     TEST_FIELD_SIZE  (BITMAP, bmType, 4)
125     TEST_FIELD_ALIGN (BITMAP, bmType, 4)
126     TEST_FIELD_OFFSET(BITMAP, bmType, 0)
127     TEST_FIELD_SIZE  (BITMAP, bmWidth, 4)
128     TEST_FIELD_ALIGN (BITMAP, bmWidth, 4)
129     TEST_FIELD_OFFSET(BITMAP, bmWidth, 4)
130     TEST_FIELD_SIZE  (BITMAP, bmHeight, 4)
131     TEST_FIELD_ALIGN (BITMAP, bmHeight, 4)
132     TEST_FIELD_OFFSET(BITMAP, bmHeight, 8)
133     TEST_FIELD_SIZE  (BITMAP, bmWidthBytes, 4)
134     TEST_FIELD_ALIGN (BITMAP, bmWidthBytes, 4)
135     TEST_FIELD_OFFSET(BITMAP, bmWidthBytes, 12)
136     TEST_FIELD_SIZE  (BITMAP, bmPlanes, 2)
137     TEST_FIELD_ALIGN (BITMAP, bmPlanes, 2)
138     TEST_FIELD_OFFSET(BITMAP, bmPlanes, 16)
139     TEST_FIELD_SIZE  (BITMAP, bmBitsPixel, 2)
140     TEST_FIELD_ALIGN (BITMAP, bmBitsPixel, 2)
141     TEST_FIELD_OFFSET(BITMAP, bmBitsPixel, 18)
142     TEST_FIELD_SIZE  (BITMAP, bmBits, 8)
143     TEST_FIELD_ALIGN (BITMAP, bmBits, 8)
144     TEST_FIELD_OFFSET(BITMAP, bmBits, 24)
145 }
146
147 static void test_pack_BITMAPCOREHEADER(void)
148 {
149     /* BITMAPCOREHEADER */
150     TEST_TYPE_SIZE   (BITMAPCOREHEADER, 12)
151     TEST_TYPE_ALIGN  (BITMAPCOREHEADER, 4)
152     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcSize, 4)
153     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcSize, 4)
154     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcSize, 0)
155     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcWidth, 2)
156     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcWidth, 2)
157     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcWidth, 4)
158     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcHeight, 2)
159     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcHeight, 2)
160     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcHeight, 6)
161     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcPlanes, 2)
162     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcPlanes, 2)
163     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcPlanes, 8)
164     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcBitCount, 2)
165     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcBitCount, 2)
166     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcBitCount, 10)
167 }
168
169 static void test_pack_BITMAPCOREINFO(void)
170 {
171     /* BITMAPCOREINFO */
172     TEST_TYPE_SIZE   (BITMAPCOREINFO, 16)
173     TEST_TYPE_ALIGN  (BITMAPCOREINFO, 4)
174     TEST_FIELD_SIZE  (BITMAPCOREINFO, bmciHeader, 12)
175     TEST_FIELD_ALIGN (BITMAPCOREINFO, bmciHeader, 4)
176     TEST_FIELD_OFFSET(BITMAPCOREINFO, bmciHeader, 0)
177     TEST_FIELD_SIZE  (BITMAPCOREINFO, bmciColors, 3)
178     TEST_FIELD_ALIGN (BITMAPCOREINFO, bmciColors, 1)
179     TEST_FIELD_OFFSET(BITMAPCOREINFO, bmciColors, 12)
180 }
181
182 static void test_pack_BITMAPFILEHEADER(void)
183 {
184     /* BITMAPFILEHEADER (pack 2) */
185     TEST_TYPE_SIZE   (BITMAPFILEHEADER, 14)
186     TEST_TYPE_ALIGN  (BITMAPFILEHEADER, 2)
187     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfType, 2)
188     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfType, 2)
189     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfType, 0)
190     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfSize, 4)
191     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfSize, 2)
192     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfSize, 2)
193     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfReserved1, 2)
194     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfReserved1, 2)
195     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfReserved1, 6)
196     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfReserved2, 2)
197     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfReserved2, 2)
198     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfReserved2, 8)
199     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfOffBits, 4)
200     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfOffBits, 2)
201     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfOffBits, 10)
202 }
203
204 static void test_pack_BITMAPINFO(void)
205 {
206     /* BITMAPINFO */
207     TEST_TYPE_SIZE   (BITMAPINFO, 44)
208     TEST_TYPE_ALIGN  (BITMAPINFO, 4)
209     TEST_FIELD_SIZE  (BITMAPINFO, bmiHeader, 40)
210     TEST_FIELD_ALIGN (BITMAPINFO, bmiHeader, 4)
211     TEST_FIELD_OFFSET(BITMAPINFO, bmiHeader, 0)
212     TEST_FIELD_SIZE  (BITMAPINFO, bmiColors, 4)
213     TEST_FIELD_ALIGN (BITMAPINFO, bmiColors, 1)
214     TEST_FIELD_OFFSET(BITMAPINFO, bmiColors, 40)
215 }
216
217 static void test_pack_BITMAPINFOHEADER(void)
218 {
219     /* BITMAPINFOHEADER */
220     TEST_TYPE_SIZE   (BITMAPINFOHEADER, 40)
221     TEST_TYPE_ALIGN  (BITMAPINFOHEADER, 4)
222     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biSize, 4)
223     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biSize, 4)
224     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biSize, 0)
225     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biWidth, 4)
226     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biWidth, 4)
227     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biWidth, 4)
228     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biHeight, 4)
229     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biHeight, 4)
230     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biHeight, 8)
231     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biPlanes, 2)
232     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biPlanes, 2)
233     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biPlanes, 12)
234     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biBitCount, 2)
235     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biBitCount, 2)
236     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biBitCount, 14)
237     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biCompression, 4)
238     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biCompression, 4)
239     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biCompression, 16)
240     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biSizeImage, 4)
241     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biSizeImage, 4)
242     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biSizeImage, 20)
243     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biXPelsPerMeter, 4)
244     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biXPelsPerMeter, 4)
245     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biXPelsPerMeter, 24)
246     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biYPelsPerMeter, 4)
247     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biYPelsPerMeter, 4)
248     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biYPelsPerMeter, 28)
249     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biClrUsed, 4)
250     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biClrUsed, 4)
251     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biClrUsed, 32)
252     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biClrImportant, 4)
253     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biClrImportant, 4)
254     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biClrImportant, 36)
255 }
256
257 static void test_pack_BITMAPV4HEADER(void)
258 {
259     /* BITMAPV4HEADER */
260     TEST_TYPE_SIZE   (BITMAPV4HEADER, 108)
261     TEST_TYPE_ALIGN  (BITMAPV4HEADER, 4)
262     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Size, 4)
263     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Size, 4)
264     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Size, 0)
265     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Width, 4)
266     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Width, 4)
267     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Width, 4)
268     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Height, 4)
269     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Height, 4)
270     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Height, 8)
271     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Planes, 2)
272     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Planes, 2)
273     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Planes, 12)
274     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4BitCount, 2)
275     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4BitCount, 2)
276     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4BitCount, 14)
277     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4V4Compression, 4)
278     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4V4Compression, 4)
279     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4V4Compression, 16)
280     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4SizeImage, 4)
281     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4SizeImage, 4)
282     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4SizeImage, 20)
283     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4XPelsPerMeter, 4)
284     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4XPelsPerMeter, 4)
285     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4XPelsPerMeter, 24)
286     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4YPelsPerMeter, 4)
287     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4YPelsPerMeter, 4)
288     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4YPelsPerMeter, 28)
289     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4ClrUsed, 4)
290     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4ClrUsed, 4)
291     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4ClrUsed, 32)
292     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4ClrImportant, 4)
293     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4ClrImportant, 4)
294     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4ClrImportant, 36)
295     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4RedMask, 4)
296     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4RedMask, 4)
297     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4RedMask, 40)
298     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4GreenMask, 4)
299     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GreenMask, 4)
300     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GreenMask, 44)
301     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4BlueMask, 4)
302     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4BlueMask, 4)
303     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4BlueMask, 48)
304     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4AlphaMask, 4)
305     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4AlphaMask, 4)
306     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4AlphaMask, 52)
307     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4CSType, 4)
308     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4CSType, 4)
309     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4CSType, 56)
310     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Endpoints, 36)
311     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Endpoints, 4)
312     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Endpoints, 60)
313     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4GammaRed, 4)
314     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaRed, 4)
315     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaRed, 96)
316     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4GammaGreen, 4)
317     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaGreen, 4)
318     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaGreen, 100)
319     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4GammaBlue, 4)
320     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaBlue, 4)
321     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaBlue, 104)
322 }
323
324 static void test_pack_BITMAPV5HEADER(void)
325 {
326     /* BITMAPV5HEADER */
327     TEST_TYPE_SIZE   (BITMAPV5HEADER, 124)
328     TEST_TYPE_ALIGN  (BITMAPV5HEADER, 4)
329     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Size, 4)
330     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Size, 4)
331     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Size, 0)
332     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Width, 4)
333     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Width, 4)
334     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Width, 4)
335     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Height, 4)
336     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Height, 4)
337     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Height, 8)
338     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Planes, 2)
339     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Planes, 2)
340     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Planes, 12)
341     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5BitCount, 2)
342     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5BitCount, 2)
343     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5BitCount, 14)
344     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Compression, 4)
345     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Compression, 4)
346     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Compression, 16)
347     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5SizeImage, 4)
348     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5SizeImage, 4)
349     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5SizeImage, 20)
350     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5XPelsPerMeter, 4)
351     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5XPelsPerMeter, 4)
352     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5XPelsPerMeter, 24)
353     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5YPelsPerMeter, 4)
354     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5YPelsPerMeter, 4)
355     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5YPelsPerMeter, 28)
356     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5ClrUsed, 4)
357     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ClrUsed, 4)
358     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ClrUsed, 32)
359     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5ClrImportant, 4)
360     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ClrImportant, 4)
361     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ClrImportant, 36)
362     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5RedMask, 4)
363     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5RedMask, 4)
364     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5RedMask, 40)
365     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5GreenMask, 4)
366     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GreenMask, 4)
367     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GreenMask, 44)
368     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5BlueMask, 4)
369     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5BlueMask, 4)
370     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5BlueMask, 48)
371     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5AlphaMask, 4)
372     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5AlphaMask, 4)
373     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5AlphaMask, 52)
374     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5CSType, 4)
375     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5CSType, 4)
376     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5CSType, 56)
377     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Endpoints, 36)
378     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Endpoints, 4)
379     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Endpoints, 60)
380     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5GammaRed, 4)
381     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaRed, 4)
382     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaRed, 96)
383     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5GammaGreen, 4)
384     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaGreen, 4)
385     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaGreen, 100)
386     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5GammaBlue, 4)
387     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaBlue, 4)
388     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaBlue, 104)
389     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Intent, 4)
390     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Intent, 4)
391     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Intent, 108)
392     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5ProfileData, 4)
393     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ProfileData, 4)
394     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ProfileData, 112)
395     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5ProfileSize, 4)
396     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ProfileSize, 4)
397     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ProfileSize, 116)
398     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Reserved, 4)
399     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Reserved, 4)
400     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Reserved, 120)
401 }
402
403 static void test_pack_BLENDFUNCTION(void)
404 {
405     /* BLENDFUNCTION */
406     TEST_TYPE_SIZE   (BLENDFUNCTION, 4)
407     TEST_TYPE_ALIGN  (BLENDFUNCTION, 1)
408     TEST_FIELD_SIZE  (BLENDFUNCTION, BlendOp, 1)
409     TEST_FIELD_ALIGN (BLENDFUNCTION, BlendOp, 1)
410     TEST_FIELD_OFFSET(BLENDFUNCTION, BlendOp, 0)
411     TEST_FIELD_SIZE  (BLENDFUNCTION, BlendFlags, 1)
412     TEST_FIELD_ALIGN (BLENDFUNCTION, BlendFlags, 1)
413     TEST_FIELD_OFFSET(BLENDFUNCTION, BlendFlags, 1)
414     TEST_FIELD_SIZE  (BLENDFUNCTION, SourceConstantAlpha, 1)
415     TEST_FIELD_ALIGN (BLENDFUNCTION, SourceConstantAlpha, 1)
416     TEST_FIELD_OFFSET(BLENDFUNCTION, SourceConstantAlpha, 2)
417     TEST_FIELD_SIZE  (BLENDFUNCTION, AlphaFormat, 1)
418     TEST_FIELD_ALIGN (BLENDFUNCTION, AlphaFormat, 1)
419     TEST_FIELD_OFFSET(BLENDFUNCTION, AlphaFormat, 3)
420 }
421
422 static void test_pack_CHARSETINFO(void)
423 {
424     /* CHARSETINFO */
425     TEST_TYPE_SIZE   (CHARSETINFO, 32)
426     TEST_TYPE_ALIGN  (CHARSETINFO, 4)
427     TEST_FIELD_SIZE  (CHARSETINFO, ciCharset, 4)
428     TEST_FIELD_ALIGN (CHARSETINFO, ciCharset, 4)
429     TEST_FIELD_OFFSET(CHARSETINFO, ciCharset, 0)
430     TEST_FIELD_SIZE  (CHARSETINFO, ciACP, 4)
431     TEST_FIELD_ALIGN (CHARSETINFO, ciACP, 4)
432     TEST_FIELD_OFFSET(CHARSETINFO, ciACP, 4)
433     TEST_FIELD_SIZE  (CHARSETINFO, fs, 24)
434     TEST_FIELD_ALIGN (CHARSETINFO, fs, 4)
435     TEST_FIELD_OFFSET(CHARSETINFO, fs, 8)
436 }
437
438 static void test_pack_CIEXYZ(void)
439 {
440     /* CIEXYZ */
441     TEST_TYPE_SIZE   (CIEXYZ, 12)
442     TEST_TYPE_ALIGN  (CIEXYZ, 4)
443     TEST_FIELD_SIZE  (CIEXYZ, ciexyzX, 4)
444     TEST_FIELD_ALIGN (CIEXYZ, ciexyzX, 4)
445     TEST_FIELD_OFFSET(CIEXYZ, ciexyzX, 0)
446     TEST_FIELD_SIZE  (CIEXYZ, ciexyzY, 4)
447     TEST_FIELD_ALIGN (CIEXYZ, ciexyzY, 4)
448     TEST_FIELD_OFFSET(CIEXYZ, ciexyzY, 4)
449     TEST_FIELD_SIZE  (CIEXYZ, ciexyzZ, 4)
450     TEST_FIELD_ALIGN (CIEXYZ, ciexyzZ, 4)
451     TEST_FIELD_OFFSET(CIEXYZ, ciexyzZ, 8)
452 }
453
454 static void test_pack_CIEXYZTRIPLE(void)
455 {
456     /* CIEXYZTRIPLE */
457     TEST_TYPE_SIZE   (CIEXYZTRIPLE, 36)
458     TEST_TYPE_ALIGN  (CIEXYZTRIPLE, 4)
459     TEST_FIELD_SIZE  (CIEXYZTRIPLE, ciexyzRed, 12)
460     TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzRed, 4)
461     TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzRed, 0)
462     TEST_FIELD_SIZE  (CIEXYZTRIPLE, ciexyzGreen, 12)
463     TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzGreen, 4)
464     TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzGreen, 12)
465     TEST_FIELD_SIZE  (CIEXYZTRIPLE, ciexyzBlue, 12)
466     TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzBlue, 4)
467     TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzBlue, 24)
468 }
469
470 static void test_pack_COLOR16(void)
471 {
472     /* COLOR16 */
473     TEST_TYPE_SIZE   (COLOR16, 2)
474     TEST_TYPE_ALIGN  (COLOR16, 2)
475 }
476
477 static void test_pack_COLORADJUSTMENT(void)
478 {
479     /* COLORADJUSTMENT */
480     TEST_TYPE_SIZE   (COLORADJUSTMENT, 24)
481     TEST_TYPE_ALIGN  (COLORADJUSTMENT, 2)
482     TEST_FIELD_SIZE  (COLORADJUSTMENT, caSize, 2)
483     TEST_FIELD_ALIGN (COLORADJUSTMENT, caSize, 2)
484     TEST_FIELD_OFFSET(COLORADJUSTMENT, caSize, 0)
485     TEST_FIELD_SIZE  (COLORADJUSTMENT, caFlags, 2)
486     TEST_FIELD_ALIGN (COLORADJUSTMENT, caFlags, 2)
487     TEST_FIELD_OFFSET(COLORADJUSTMENT, caFlags, 2)
488     TEST_FIELD_SIZE  (COLORADJUSTMENT, caIlluminantIndex, 2)
489     TEST_FIELD_ALIGN (COLORADJUSTMENT, caIlluminantIndex, 2)
490     TEST_FIELD_OFFSET(COLORADJUSTMENT, caIlluminantIndex, 4)
491     TEST_FIELD_SIZE  (COLORADJUSTMENT, caRedGamma, 2)
492     TEST_FIELD_ALIGN (COLORADJUSTMENT, caRedGamma, 2)
493     TEST_FIELD_OFFSET(COLORADJUSTMENT, caRedGamma, 6)
494     TEST_FIELD_SIZE  (COLORADJUSTMENT, caGreenGamma, 2)
495     TEST_FIELD_ALIGN (COLORADJUSTMENT, caGreenGamma, 2)
496     TEST_FIELD_OFFSET(COLORADJUSTMENT, caGreenGamma, 8)
497     TEST_FIELD_SIZE  (COLORADJUSTMENT, caBlueGamma, 2)
498     TEST_FIELD_ALIGN (COLORADJUSTMENT, caBlueGamma, 2)
499     TEST_FIELD_OFFSET(COLORADJUSTMENT, caBlueGamma, 10)
500     TEST_FIELD_SIZE  (COLORADJUSTMENT, caReferenceBlack, 2)
501     TEST_FIELD_ALIGN (COLORADJUSTMENT, caReferenceBlack, 2)
502     TEST_FIELD_OFFSET(COLORADJUSTMENT, caReferenceBlack, 12)
503     TEST_FIELD_SIZE  (COLORADJUSTMENT, caReferenceWhite, 2)
504     TEST_FIELD_ALIGN (COLORADJUSTMENT, caReferenceWhite, 2)
505     TEST_FIELD_OFFSET(COLORADJUSTMENT, caReferenceWhite, 14)
506     TEST_FIELD_SIZE  (COLORADJUSTMENT, caContrast, 2)
507     TEST_FIELD_ALIGN (COLORADJUSTMENT, caContrast, 2)
508     TEST_FIELD_OFFSET(COLORADJUSTMENT, caContrast, 16)
509     TEST_FIELD_SIZE  (COLORADJUSTMENT, caBrightness, 2)
510     TEST_FIELD_ALIGN (COLORADJUSTMENT, caBrightness, 2)
511     TEST_FIELD_OFFSET(COLORADJUSTMENT, caBrightness, 18)
512     TEST_FIELD_SIZE  (COLORADJUSTMENT, caColorfulness, 2)
513     TEST_FIELD_ALIGN (COLORADJUSTMENT, caColorfulness, 2)
514     TEST_FIELD_OFFSET(COLORADJUSTMENT, caColorfulness, 20)
515     TEST_FIELD_SIZE  (COLORADJUSTMENT, caRedGreenTint, 2)
516     TEST_FIELD_ALIGN (COLORADJUSTMENT, caRedGreenTint, 2)
517     TEST_FIELD_OFFSET(COLORADJUSTMENT, caRedGreenTint, 22)
518 }
519
520 static void test_pack_DEVMODEA(void)
521 {
522     /* DEVMODEA */
523     TEST_FIELD_SIZE  (DEVMODEA, dmDeviceName, 32)
524     TEST_FIELD_ALIGN (DEVMODEA, dmDeviceName, 1)
525     TEST_FIELD_OFFSET(DEVMODEA, dmDeviceName, 0)
526     TEST_FIELD_SIZE  (DEVMODEA, dmSpecVersion, 2)
527     TEST_FIELD_ALIGN (DEVMODEA, dmSpecVersion, 2)
528     TEST_FIELD_OFFSET(DEVMODEA, dmSpecVersion, 32)
529     TEST_FIELD_SIZE  (DEVMODEA, dmDriverVersion, 2)
530     TEST_FIELD_ALIGN (DEVMODEA, dmDriverVersion, 2)
531     TEST_FIELD_OFFSET(DEVMODEA, dmDriverVersion, 34)
532     TEST_FIELD_SIZE  (DEVMODEA, dmSize, 2)
533     TEST_FIELD_ALIGN (DEVMODEA, dmSize, 2)
534     TEST_FIELD_OFFSET(DEVMODEA, dmSize, 36)
535     TEST_FIELD_SIZE  (DEVMODEA, dmDriverExtra, 2)
536     TEST_FIELD_ALIGN (DEVMODEA, dmDriverExtra, 2)
537     TEST_FIELD_OFFSET(DEVMODEA, dmDriverExtra, 38)
538     TEST_FIELD_SIZE  (DEVMODEA, dmFields, 4)
539     TEST_FIELD_ALIGN (DEVMODEA, dmFields, 4)
540     TEST_FIELD_OFFSET(DEVMODEA, dmFields, 40)
541 }
542
543 static void test_pack_DEVMODEW(void)
544 {
545     /* DEVMODEW */
546     TEST_FIELD_SIZE  (DEVMODEW, dmDeviceName, 64)
547     TEST_FIELD_ALIGN (DEVMODEW, dmDeviceName, 2)
548     TEST_FIELD_OFFSET(DEVMODEW, dmDeviceName, 0)
549     TEST_FIELD_SIZE  (DEVMODEW, dmSpecVersion, 2)
550     TEST_FIELD_ALIGN (DEVMODEW, dmSpecVersion, 2)
551     TEST_FIELD_OFFSET(DEVMODEW, dmSpecVersion, 64)
552     TEST_FIELD_SIZE  (DEVMODEW, dmDriverVersion, 2)
553     TEST_FIELD_ALIGN (DEVMODEW, dmDriverVersion, 2)
554     TEST_FIELD_OFFSET(DEVMODEW, dmDriverVersion, 66)
555     TEST_FIELD_SIZE  (DEVMODEW, dmSize, 2)
556     TEST_FIELD_ALIGN (DEVMODEW, dmSize, 2)
557     TEST_FIELD_OFFSET(DEVMODEW, dmSize, 68)
558     TEST_FIELD_SIZE  (DEVMODEW, dmDriverExtra, 2)
559     TEST_FIELD_ALIGN (DEVMODEW, dmDriverExtra, 2)
560     TEST_FIELD_OFFSET(DEVMODEW, dmDriverExtra, 70)
561     TEST_FIELD_SIZE  (DEVMODEW, dmFields, 4)
562     TEST_FIELD_ALIGN (DEVMODEW, dmFields, 4)
563     TEST_FIELD_OFFSET(DEVMODEW, dmFields, 72)
564 }
565
566 static void test_pack_DIBSECTION(void)
567 {
568     /* DIBSECTION */
569     TEST_TYPE_SIZE   (DIBSECTION, 104)
570     TEST_TYPE_ALIGN  (DIBSECTION, 8)
571     TEST_FIELD_SIZE  (DIBSECTION, dsBm, 32)
572     TEST_FIELD_ALIGN (DIBSECTION, dsBm, 8)
573     TEST_FIELD_OFFSET(DIBSECTION, dsBm, 0)
574     TEST_FIELD_SIZE  (DIBSECTION, dsBmih, 40)
575     TEST_FIELD_ALIGN (DIBSECTION, dsBmih, 4)
576     TEST_FIELD_OFFSET(DIBSECTION, dsBmih, 32)
577     TEST_FIELD_SIZE  (DIBSECTION, dsBitfields, 12)
578     TEST_FIELD_ALIGN (DIBSECTION, dsBitfields, 4)
579     TEST_FIELD_OFFSET(DIBSECTION, dsBitfields, 72)
580     TEST_FIELD_SIZE  (DIBSECTION, dshSection, 8)
581     TEST_FIELD_ALIGN (DIBSECTION, dshSection, 8)
582     TEST_FIELD_OFFSET(DIBSECTION, dshSection, 88)
583     TEST_FIELD_SIZE  (DIBSECTION, dsOffset, 4)
584     TEST_FIELD_ALIGN (DIBSECTION, dsOffset, 4)
585     TEST_FIELD_OFFSET(DIBSECTION, dsOffset, 96)
586 }
587
588 static void test_pack_DISPLAY_DEVICEA(void)
589 {
590     /* DISPLAY_DEVICEA */
591     TEST_TYPE_SIZE   (DISPLAY_DEVICEA, 424)
592     TEST_TYPE_ALIGN  (DISPLAY_DEVICEA, 4)
593     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, cb, 4)
594     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, cb, 4)
595     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, cb, 0)
596     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, DeviceName, 32)
597     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceName, 1)
598     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceName, 4)
599     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, DeviceString, 128)
600     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceString, 1)
601     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceString, 36)
602     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, StateFlags, 4)
603     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, StateFlags, 4)
604     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, StateFlags, 164)
605     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, DeviceID, 128)
606     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceID, 1)
607     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceID, 168)
608     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, DeviceKey, 128)
609     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceKey, 1)
610     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceKey, 296)
611 }
612
613 static void test_pack_DISPLAY_DEVICEW(void)
614 {
615     /* DISPLAY_DEVICEW */
616     TEST_TYPE_SIZE   (DISPLAY_DEVICEW, 840)
617     TEST_TYPE_ALIGN  (DISPLAY_DEVICEW, 4)
618     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, cb, 4)
619     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, cb, 4)
620     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, cb, 0)
621     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, DeviceName, 64)
622     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceName, 2)
623     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceName, 4)
624     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, DeviceString, 256)
625     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceString, 2)
626     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceString, 68)
627     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, StateFlags, 4)
628     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, StateFlags, 4)
629     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, StateFlags, 324)
630     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, DeviceID, 256)
631     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceID, 2)
632     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceID, 328)
633     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, DeviceKey, 256)
634     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceKey, 2)
635     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceKey, 584)
636 }
637
638 static void test_pack_DOCINFOA(void)
639 {
640     /* DOCINFOA */
641     TEST_TYPE_SIZE   (DOCINFOA, 40)
642     TEST_TYPE_ALIGN  (DOCINFOA, 8)
643     TEST_FIELD_SIZE  (DOCINFOA, cbSize, 4)
644     TEST_FIELD_ALIGN (DOCINFOA, cbSize, 4)
645     TEST_FIELD_OFFSET(DOCINFOA, cbSize, 0)
646     TEST_FIELD_SIZE  (DOCINFOA, lpszDocName, 8)
647     TEST_FIELD_ALIGN (DOCINFOA, lpszDocName, 8)
648     TEST_FIELD_OFFSET(DOCINFOA, lpszDocName, 8)
649     TEST_FIELD_SIZE  (DOCINFOA, lpszOutput, 8)
650     TEST_FIELD_ALIGN (DOCINFOA, lpszOutput, 8)
651     TEST_FIELD_OFFSET(DOCINFOA, lpszOutput, 16)
652     TEST_FIELD_SIZE  (DOCINFOA, lpszDatatype, 8)
653     TEST_FIELD_ALIGN (DOCINFOA, lpszDatatype, 8)
654     TEST_FIELD_OFFSET(DOCINFOA, lpszDatatype, 24)
655     TEST_FIELD_SIZE  (DOCINFOA, fwType, 4)
656     TEST_FIELD_ALIGN (DOCINFOA, fwType, 4)
657     TEST_FIELD_OFFSET(DOCINFOA, fwType, 32)
658 }
659
660 static void test_pack_DOCINFOW(void)
661 {
662     /* DOCINFOW */
663     TEST_TYPE_SIZE   (DOCINFOW, 40)
664     TEST_TYPE_ALIGN  (DOCINFOW, 8)
665     TEST_FIELD_SIZE  (DOCINFOW, cbSize, 4)
666     TEST_FIELD_ALIGN (DOCINFOW, cbSize, 4)
667     TEST_FIELD_OFFSET(DOCINFOW, cbSize, 0)
668     TEST_FIELD_SIZE  (DOCINFOW, lpszDocName, 8)
669     TEST_FIELD_ALIGN (DOCINFOW, lpszDocName, 8)
670     TEST_FIELD_OFFSET(DOCINFOW, lpszDocName, 8)
671     TEST_FIELD_SIZE  (DOCINFOW, lpszOutput, 8)
672     TEST_FIELD_ALIGN (DOCINFOW, lpszOutput, 8)
673     TEST_FIELD_OFFSET(DOCINFOW, lpszOutput, 16)
674     TEST_FIELD_SIZE  (DOCINFOW, lpszDatatype, 8)
675     TEST_FIELD_ALIGN (DOCINFOW, lpszDatatype, 8)
676     TEST_FIELD_OFFSET(DOCINFOW, lpszDatatype, 24)
677     TEST_FIELD_SIZE  (DOCINFOW, fwType, 4)
678     TEST_FIELD_ALIGN (DOCINFOW, fwType, 4)
679     TEST_FIELD_OFFSET(DOCINFOW, fwType, 32)
680 }
681
682 static void test_pack_EMR(void)
683 {
684     /* EMR */
685     TEST_TYPE_SIZE   (EMR, 8)
686     TEST_TYPE_ALIGN  (EMR, 4)
687     TEST_FIELD_SIZE  (EMR, iType, 4)
688     TEST_FIELD_ALIGN (EMR, iType, 4)
689     TEST_FIELD_OFFSET(EMR, iType, 0)
690     TEST_FIELD_SIZE  (EMR, nSize, 4)
691     TEST_FIELD_ALIGN (EMR, nSize, 4)
692     TEST_FIELD_OFFSET(EMR, nSize, 4)
693 }
694
695 static void test_pack_EMRABORTPATH(void)
696 {
697     /* EMRABORTPATH */
698     TEST_TYPE_SIZE   (EMRABORTPATH, 8)
699     TEST_TYPE_ALIGN  (EMRABORTPATH, 4)
700     TEST_FIELD_SIZE  (EMRABORTPATH, emr, 8)
701     TEST_FIELD_ALIGN (EMRABORTPATH, emr, 4)
702     TEST_FIELD_OFFSET(EMRABORTPATH, emr, 0)
703 }
704
705 static void test_pack_EMRANGLEARC(void)
706 {
707     /* EMRANGLEARC */
708     TEST_TYPE_SIZE   (EMRANGLEARC, 28)
709     TEST_TYPE_ALIGN  (EMRANGLEARC, 4)
710     TEST_FIELD_SIZE  (EMRANGLEARC, emr, 8)
711     TEST_FIELD_ALIGN (EMRANGLEARC, emr, 4)
712     TEST_FIELD_OFFSET(EMRANGLEARC, emr, 0)
713     TEST_FIELD_SIZE  (EMRANGLEARC, ptlCenter, 8)
714     TEST_FIELD_ALIGN (EMRANGLEARC, ptlCenter, 4)
715     TEST_FIELD_OFFSET(EMRANGLEARC, ptlCenter, 8)
716     TEST_FIELD_SIZE  (EMRANGLEARC, nRadius, 4)
717     TEST_FIELD_ALIGN (EMRANGLEARC, nRadius, 4)
718     TEST_FIELD_OFFSET(EMRANGLEARC, nRadius, 16)
719     TEST_FIELD_SIZE  (EMRANGLEARC, eStartAngle, 4)
720     TEST_FIELD_ALIGN (EMRANGLEARC, eStartAngle, 4)
721     TEST_FIELD_OFFSET(EMRANGLEARC, eStartAngle, 20)
722     TEST_FIELD_SIZE  (EMRANGLEARC, eSweepAngle, 4)
723     TEST_FIELD_ALIGN (EMRANGLEARC, eSweepAngle, 4)
724     TEST_FIELD_OFFSET(EMRANGLEARC, eSweepAngle, 24)
725 }
726
727 static void test_pack_EMRARC(void)
728 {
729     /* EMRARC */
730     TEST_TYPE_SIZE   (EMRARC, 40)
731     TEST_TYPE_ALIGN  (EMRARC, 4)
732     TEST_FIELD_SIZE  (EMRARC, emr, 8)
733     TEST_FIELD_ALIGN (EMRARC, emr, 4)
734     TEST_FIELD_OFFSET(EMRARC, emr, 0)
735     TEST_FIELD_SIZE  (EMRARC, rclBox, 16)
736     TEST_FIELD_ALIGN (EMRARC, rclBox, 4)
737     TEST_FIELD_OFFSET(EMRARC, rclBox, 8)
738     TEST_FIELD_SIZE  (EMRARC, ptlStart, 8)
739     TEST_FIELD_ALIGN (EMRARC, ptlStart, 4)
740     TEST_FIELD_OFFSET(EMRARC, ptlStart, 24)
741     TEST_FIELD_SIZE  (EMRARC, ptlEnd, 8)
742     TEST_FIELD_ALIGN (EMRARC, ptlEnd, 4)
743     TEST_FIELD_OFFSET(EMRARC, ptlEnd, 32)
744 }
745
746 static void test_pack_EMRARCTO(void)
747 {
748     /* EMRARCTO */
749     TEST_TYPE_SIZE   (EMRARCTO, 40)
750     TEST_TYPE_ALIGN  (EMRARCTO, 4)
751     TEST_FIELD_SIZE  (EMRARCTO, emr, 8)
752     TEST_FIELD_ALIGN (EMRARCTO, emr, 4)
753     TEST_FIELD_OFFSET(EMRARCTO, emr, 0)
754     TEST_FIELD_SIZE  (EMRARCTO, rclBox, 16)
755     TEST_FIELD_ALIGN (EMRARCTO, rclBox, 4)
756     TEST_FIELD_OFFSET(EMRARCTO, rclBox, 8)
757     TEST_FIELD_SIZE  (EMRARCTO, ptlStart, 8)
758     TEST_FIELD_ALIGN (EMRARCTO, ptlStart, 4)
759     TEST_FIELD_OFFSET(EMRARCTO, ptlStart, 24)
760     TEST_FIELD_SIZE  (EMRARCTO, ptlEnd, 8)
761     TEST_FIELD_ALIGN (EMRARCTO, ptlEnd, 4)
762     TEST_FIELD_OFFSET(EMRARCTO, ptlEnd, 32)
763 }
764
765 static void test_pack_EMRBEGINPATH(void)
766 {
767     /* EMRBEGINPATH */
768     TEST_TYPE_SIZE   (EMRBEGINPATH, 8)
769     TEST_TYPE_ALIGN  (EMRBEGINPATH, 4)
770     TEST_FIELD_SIZE  (EMRBEGINPATH, emr, 8)
771     TEST_FIELD_ALIGN (EMRBEGINPATH, emr, 4)
772     TEST_FIELD_OFFSET(EMRBEGINPATH, emr, 0)
773 }
774
775 static void test_pack_EMRBITBLT(void)
776 {
777     /* EMRBITBLT */
778     TEST_TYPE_SIZE   (EMRBITBLT, 100)
779     TEST_TYPE_ALIGN  (EMRBITBLT, 4)
780     TEST_FIELD_SIZE  (EMRBITBLT, emr, 8)
781     TEST_FIELD_ALIGN (EMRBITBLT, emr, 4)
782     TEST_FIELD_OFFSET(EMRBITBLT, emr, 0)
783     TEST_FIELD_SIZE  (EMRBITBLT, rclBounds, 16)
784     TEST_FIELD_ALIGN (EMRBITBLT, rclBounds, 4)
785     TEST_FIELD_OFFSET(EMRBITBLT, rclBounds, 8)
786     TEST_FIELD_SIZE  (EMRBITBLT, xDest, 4)
787     TEST_FIELD_ALIGN (EMRBITBLT, xDest, 4)
788     TEST_FIELD_OFFSET(EMRBITBLT, xDest, 24)
789     TEST_FIELD_SIZE  (EMRBITBLT, yDest, 4)
790     TEST_FIELD_ALIGN (EMRBITBLT, yDest, 4)
791     TEST_FIELD_OFFSET(EMRBITBLT, yDest, 28)
792     TEST_FIELD_SIZE  (EMRBITBLT, cxDest, 4)
793     TEST_FIELD_ALIGN (EMRBITBLT, cxDest, 4)
794     TEST_FIELD_OFFSET(EMRBITBLT, cxDest, 32)
795     TEST_FIELD_SIZE  (EMRBITBLT, cyDest, 4)
796     TEST_FIELD_ALIGN (EMRBITBLT, cyDest, 4)
797     TEST_FIELD_OFFSET(EMRBITBLT, cyDest, 36)
798     TEST_FIELD_SIZE  (EMRBITBLT, dwRop, 4)
799     TEST_FIELD_ALIGN (EMRBITBLT, dwRop, 4)
800     TEST_FIELD_OFFSET(EMRBITBLT, dwRop, 40)
801     TEST_FIELD_SIZE  (EMRBITBLT, xSrc, 4)
802     TEST_FIELD_ALIGN (EMRBITBLT, xSrc, 4)
803     TEST_FIELD_OFFSET(EMRBITBLT, xSrc, 44)
804     TEST_FIELD_SIZE  (EMRBITBLT, ySrc, 4)
805     TEST_FIELD_ALIGN (EMRBITBLT, ySrc, 4)
806     TEST_FIELD_OFFSET(EMRBITBLT, ySrc, 48)
807     TEST_FIELD_SIZE  (EMRBITBLT, xformSrc, 24)
808     TEST_FIELD_ALIGN (EMRBITBLT, xformSrc, 4)
809     TEST_FIELD_OFFSET(EMRBITBLT, xformSrc, 52)
810     TEST_FIELD_SIZE  (EMRBITBLT, crBkColorSrc, 4)
811     TEST_FIELD_ALIGN (EMRBITBLT, crBkColorSrc, 4)
812     TEST_FIELD_OFFSET(EMRBITBLT, crBkColorSrc, 76)
813     TEST_FIELD_SIZE  (EMRBITBLT, iUsageSrc, 4)
814     TEST_FIELD_ALIGN (EMRBITBLT, iUsageSrc, 4)
815     TEST_FIELD_OFFSET(EMRBITBLT, iUsageSrc, 80)
816     TEST_FIELD_SIZE  (EMRBITBLT, offBmiSrc, 4)
817     TEST_FIELD_ALIGN (EMRBITBLT, offBmiSrc, 4)
818     TEST_FIELD_OFFSET(EMRBITBLT, offBmiSrc, 84)
819     TEST_FIELD_SIZE  (EMRBITBLT, cbBmiSrc, 4)
820     TEST_FIELD_ALIGN (EMRBITBLT, cbBmiSrc, 4)
821     TEST_FIELD_OFFSET(EMRBITBLT, cbBmiSrc, 88)
822     TEST_FIELD_SIZE  (EMRBITBLT, offBitsSrc, 4)
823     TEST_FIELD_ALIGN (EMRBITBLT, offBitsSrc, 4)
824     TEST_FIELD_OFFSET(EMRBITBLT, offBitsSrc, 92)
825     TEST_FIELD_SIZE  (EMRBITBLT, cbBitsSrc, 4)
826     TEST_FIELD_ALIGN (EMRBITBLT, cbBitsSrc, 4)
827     TEST_FIELD_OFFSET(EMRBITBLT, cbBitsSrc, 96)
828 }
829
830 static void test_pack_EMRCHORD(void)
831 {
832     /* EMRCHORD */
833     TEST_TYPE_SIZE   (EMRCHORD, 40)
834     TEST_TYPE_ALIGN  (EMRCHORD, 4)
835     TEST_FIELD_SIZE  (EMRCHORD, emr, 8)
836     TEST_FIELD_ALIGN (EMRCHORD, emr, 4)
837     TEST_FIELD_OFFSET(EMRCHORD, emr, 0)
838     TEST_FIELD_SIZE  (EMRCHORD, rclBox, 16)
839     TEST_FIELD_ALIGN (EMRCHORD, rclBox, 4)
840     TEST_FIELD_OFFSET(EMRCHORD, rclBox, 8)
841     TEST_FIELD_SIZE  (EMRCHORD, ptlStart, 8)
842     TEST_FIELD_ALIGN (EMRCHORD, ptlStart, 4)
843     TEST_FIELD_OFFSET(EMRCHORD, ptlStart, 24)
844     TEST_FIELD_SIZE  (EMRCHORD, ptlEnd, 8)
845     TEST_FIELD_ALIGN (EMRCHORD, ptlEnd, 4)
846     TEST_FIELD_OFFSET(EMRCHORD, ptlEnd, 32)
847 }
848
849 static void test_pack_EMRCLOSEFIGURE(void)
850 {
851     /* EMRCLOSEFIGURE */
852     TEST_TYPE_SIZE   (EMRCLOSEFIGURE, 8)
853     TEST_TYPE_ALIGN  (EMRCLOSEFIGURE, 4)
854     TEST_FIELD_SIZE  (EMRCLOSEFIGURE, emr, 8)
855     TEST_FIELD_ALIGN (EMRCLOSEFIGURE, emr, 4)
856     TEST_FIELD_OFFSET(EMRCLOSEFIGURE, emr, 0)
857 }
858
859 static void test_pack_EMRCREATEBRUSHINDIRECT(void)
860 {
861     /* EMRCREATEBRUSHINDIRECT */
862     TEST_TYPE_SIZE   (EMRCREATEBRUSHINDIRECT, 24)
863     TEST_TYPE_ALIGN  (EMRCREATEBRUSHINDIRECT, 4)
864     TEST_FIELD_SIZE  (EMRCREATEBRUSHINDIRECT, emr, 8)
865     TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, emr, 4)
866     TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, emr, 0)
867     TEST_FIELD_SIZE  (EMRCREATEBRUSHINDIRECT, ihBrush, 4)
868     TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, ihBrush, 4)
869     TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, ihBrush, 8)
870     TEST_FIELD_SIZE  (EMRCREATEBRUSHINDIRECT, lb, 12)
871     TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, lb, 4)
872     TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, lb, 12)
873 }
874
875 static void test_pack_EMRCREATECOLORSPACE(void)
876 {
877     /* EMRCREATECOLORSPACE */
878     TEST_TYPE_SIZE   (EMRCREATECOLORSPACE, 340)
879     TEST_TYPE_ALIGN  (EMRCREATECOLORSPACE, 4)
880     TEST_FIELD_SIZE  (EMRCREATECOLORSPACE, emr, 8)
881     TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, emr, 4)
882     TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, emr, 0)
883     TEST_FIELD_SIZE  (EMRCREATECOLORSPACE, ihCS, 4)
884     TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, ihCS, 4)
885     TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, ihCS, 8)
886     TEST_FIELD_SIZE  (EMRCREATECOLORSPACE, lcs, 328)
887     TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, lcs, 4)
888     TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, lcs, 12)
889 }
890
891 static void test_pack_EMRCREATECOLORSPACEW(void)
892 {
893     /* EMRCREATECOLORSPACEW */
894     TEST_TYPE_SIZE   (EMRCREATECOLORSPACEW, 612)
895     TEST_TYPE_ALIGN  (EMRCREATECOLORSPACEW, 4)
896     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, emr, 8)
897     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, emr, 4)
898     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, emr, 0)
899     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, ihCS, 4)
900     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, ihCS, 4)
901     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, ihCS, 8)
902     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, lcs, 588)
903     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, lcs, 4)
904     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, lcs, 12)
905     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, dwFlags, 4)
906     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, dwFlags, 4)
907     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, dwFlags, 600)
908     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, cbData, 4)
909     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, cbData, 4)
910     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, cbData, 604)
911     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, Data, 1)
912     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, Data, 1)
913     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, Data, 608)
914 }
915
916 static void test_pack_EMRCREATEDIBPATTERNBRUSHPT(void)
917 {
918     /* EMRCREATEDIBPATTERNBRUSHPT */
919     TEST_TYPE_SIZE   (EMRCREATEDIBPATTERNBRUSHPT, 32)
920     TEST_TYPE_ALIGN  (EMRCREATEDIBPATTERNBRUSHPT, 4)
921     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, emr, 8)
922     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, emr, 4)
923     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, emr, 0)
924     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 4)
925     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 4)
926     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 8)
927     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, iUsage, 4)
928     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, iUsage, 4)
929     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, iUsage, 12)
930     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, offBmi, 4)
931     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, offBmi, 4)
932     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBmi, 16)
933     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 4)
934     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 4)
935     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 20)
936     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, offBits, 4)
937     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, offBits, 4)
938     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBits, 24)
939     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, cbBits, 4)
940     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, cbBits, 4)
941     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBits, 28)
942 }
943
944 static void test_pack_EMRCREATEMONOBRUSH(void)
945 {
946     /* EMRCREATEMONOBRUSH */
947     TEST_TYPE_SIZE   (EMRCREATEMONOBRUSH, 32)
948     TEST_TYPE_ALIGN  (EMRCREATEMONOBRUSH, 4)
949     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, emr, 8)
950     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, emr, 4)
951     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, emr, 0)
952     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, ihBrush, 4)
953     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, ihBrush, 4)
954     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, ihBrush, 8)
955     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, iUsage, 4)
956     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, iUsage, 4)
957     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, iUsage, 12)
958     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, offBmi, 4)
959     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, offBmi, 4)
960     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, offBmi, 16)
961     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, cbBmi, 4)
962     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, cbBmi, 4)
963     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBmi, 20)
964     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, offBits, 4)
965     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, offBits, 4)
966     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, offBits, 24)
967     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, cbBits, 4)
968     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, cbBits, 4)
969     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBits, 28)
970 }
971
972 static void test_pack_EMRCREATEPEN(void)
973 {
974     /* EMRCREATEPEN */
975     TEST_TYPE_SIZE   (EMRCREATEPEN, 28)
976     TEST_TYPE_ALIGN  (EMRCREATEPEN, 4)
977     TEST_FIELD_SIZE  (EMRCREATEPEN, emr, 8)
978     TEST_FIELD_ALIGN (EMRCREATEPEN, emr, 4)
979     TEST_FIELD_OFFSET(EMRCREATEPEN, emr, 0)
980     TEST_FIELD_SIZE  (EMRCREATEPEN, ihPen, 4)
981     TEST_FIELD_ALIGN (EMRCREATEPEN, ihPen, 4)
982     TEST_FIELD_OFFSET(EMRCREATEPEN, ihPen, 8)
983     TEST_FIELD_SIZE  (EMRCREATEPEN, lopn, 16)
984     TEST_FIELD_ALIGN (EMRCREATEPEN, lopn, 4)
985     TEST_FIELD_OFFSET(EMRCREATEPEN, lopn, 12)
986 }
987
988 static void test_pack_EMRDELETECOLORSPACE(void)
989 {
990     /* EMRDELETECOLORSPACE */
991     TEST_TYPE_SIZE   (EMRDELETECOLORSPACE, 12)
992     TEST_TYPE_ALIGN  (EMRDELETECOLORSPACE, 4)
993     TEST_FIELD_SIZE  (EMRDELETECOLORSPACE, emr, 8)
994     TEST_FIELD_ALIGN (EMRDELETECOLORSPACE, emr, 4)
995     TEST_FIELD_OFFSET(EMRDELETECOLORSPACE, emr, 0)
996     TEST_FIELD_SIZE  (EMRDELETECOLORSPACE, ihCS, 4)
997     TEST_FIELD_ALIGN (EMRDELETECOLORSPACE, ihCS, 4)
998     TEST_FIELD_OFFSET(EMRDELETECOLORSPACE, ihCS, 8)
999 }
1000
1001 static void test_pack_EMRDELETEOBJECT(void)
1002 {
1003     /* EMRDELETEOBJECT */
1004     TEST_TYPE_SIZE   (EMRDELETEOBJECT, 12)
1005     TEST_TYPE_ALIGN  (EMRDELETEOBJECT, 4)
1006     TEST_FIELD_SIZE  (EMRDELETEOBJECT, emr, 8)
1007     TEST_FIELD_ALIGN (EMRDELETEOBJECT, emr, 4)
1008     TEST_FIELD_OFFSET(EMRDELETEOBJECT, emr, 0)
1009     TEST_FIELD_SIZE  (EMRDELETEOBJECT, ihObject, 4)
1010     TEST_FIELD_ALIGN (EMRDELETEOBJECT, ihObject, 4)
1011     TEST_FIELD_OFFSET(EMRDELETEOBJECT, ihObject, 8)
1012 }
1013
1014 static void test_pack_EMRELLIPSE(void)
1015 {
1016     /* EMRELLIPSE */
1017     TEST_TYPE_SIZE   (EMRELLIPSE, 24)
1018     TEST_TYPE_ALIGN  (EMRELLIPSE, 4)
1019     TEST_FIELD_SIZE  (EMRELLIPSE, emr, 8)
1020     TEST_FIELD_ALIGN (EMRELLIPSE, emr, 4)
1021     TEST_FIELD_OFFSET(EMRELLIPSE, emr, 0)
1022     TEST_FIELD_SIZE  (EMRELLIPSE, rclBox, 16)
1023     TEST_FIELD_ALIGN (EMRELLIPSE, rclBox, 4)
1024     TEST_FIELD_OFFSET(EMRELLIPSE, rclBox, 8)
1025 }
1026
1027 static void test_pack_EMRENDPATH(void)
1028 {
1029     /* EMRENDPATH */
1030     TEST_TYPE_SIZE   (EMRENDPATH, 8)
1031     TEST_TYPE_ALIGN  (EMRENDPATH, 4)
1032     TEST_FIELD_SIZE  (EMRENDPATH, emr, 8)
1033     TEST_FIELD_ALIGN (EMRENDPATH, emr, 4)
1034     TEST_FIELD_OFFSET(EMRENDPATH, emr, 0)
1035 }
1036
1037 static void test_pack_EMREOF(void)
1038 {
1039     /* EMREOF */
1040     TEST_TYPE_SIZE   (EMREOF, 20)
1041     TEST_TYPE_ALIGN  (EMREOF, 4)
1042     TEST_FIELD_SIZE  (EMREOF, emr, 8)
1043     TEST_FIELD_ALIGN (EMREOF, emr, 4)
1044     TEST_FIELD_OFFSET(EMREOF, emr, 0)
1045     TEST_FIELD_SIZE  (EMREOF, nPalEntries, 4)
1046     TEST_FIELD_ALIGN (EMREOF, nPalEntries, 4)
1047     TEST_FIELD_OFFSET(EMREOF, nPalEntries, 8)
1048     TEST_FIELD_SIZE  (EMREOF, offPalEntries, 4)
1049     TEST_FIELD_ALIGN (EMREOF, offPalEntries, 4)
1050     TEST_FIELD_OFFSET(EMREOF, offPalEntries, 12)
1051     TEST_FIELD_SIZE  (EMREOF, nSizeLast, 4)
1052     TEST_FIELD_ALIGN (EMREOF, nSizeLast, 4)
1053     TEST_FIELD_OFFSET(EMREOF, nSizeLast, 16)
1054 }
1055
1056 static void test_pack_EMREXCLUDECLIPRECT(void)
1057 {
1058     /* EMREXCLUDECLIPRECT */
1059     TEST_TYPE_SIZE   (EMREXCLUDECLIPRECT, 24)
1060     TEST_TYPE_ALIGN  (EMREXCLUDECLIPRECT, 4)
1061     TEST_FIELD_SIZE  (EMREXCLUDECLIPRECT, emr, 8)
1062     TEST_FIELD_ALIGN (EMREXCLUDECLIPRECT, emr, 4)
1063     TEST_FIELD_OFFSET(EMREXCLUDECLIPRECT, emr, 0)
1064     TEST_FIELD_SIZE  (EMREXCLUDECLIPRECT, rclClip, 16)
1065     TEST_FIELD_ALIGN (EMREXCLUDECLIPRECT, rclClip, 4)
1066     TEST_FIELD_OFFSET(EMREXCLUDECLIPRECT, rclClip, 8)
1067 }
1068
1069 static void test_pack_EMREXTCREATEFONTINDIRECTW(void)
1070 {
1071     /* EMREXTCREATEFONTINDIRECTW */
1072     TEST_TYPE_SIZE   (EMREXTCREATEFONTINDIRECTW, 332)
1073     TEST_TYPE_ALIGN  (EMREXTCREATEFONTINDIRECTW, 4)
1074     TEST_FIELD_SIZE  (EMREXTCREATEFONTINDIRECTW, emr, 8)
1075     TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, emr, 4)
1076     TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, emr, 0)
1077     TEST_FIELD_SIZE  (EMREXTCREATEFONTINDIRECTW, ihFont, 4)
1078     TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, ihFont, 4)
1079     TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, ihFont, 8)
1080     TEST_FIELD_SIZE  (EMREXTCREATEFONTINDIRECTW, elfw, 320)
1081     TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, elfw, 4)
1082     TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, elfw, 12)
1083 }
1084
1085 static void test_pack_EMREXTCREATEPEN(void)
1086 {
1087     /* EMREXTCREATEPEN */
1088     TEST_TYPE_SIZE   (EMREXTCREATEPEN, 64)
1089     TEST_TYPE_ALIGN  (EMREXTCREATEPEN, 8)
1090     TEST_FIELD_SIZE  (EMREXTCREATEPEN, emr, 8)
1091     TEST_FIELD_ALIGN (EMREXTCREATEPEN, emr, 4)
1092     TEST_FIELD_OFFSET(EMREXTCREATEPEN, emr, 0)
1093     TEST_FIELD_SIZE  (EMREXTCREATEPEN, ihPen, 4)
1094     TEST_FIELD_ALIGN (EMREXTCREATEPEN, ihPen, 4)
1095     TEST_FIELD_OFFSET(EMREXTCREATEPEN, ihPen, 8)
1096     TEST_FIELD_SIZE  (EMREXTCREATEPEN, offBmi, 4)
1097     TEST_FIELD_ALIGN (EMREXTCREATEPEN, offBmi, 4)
1098     TEST_FIELD_OFFSET(EMREXTCREATEPEN, offBmi, 12)
1099     TEST_FIELD_SIZE  (EMREXTCREATEPEN, cbBmi, 4)
1100     TEST_FIELD_ALIGN (EMREXTCREATEPEN, cbBmi, 4)
1101     TEST_FIELD_OFFSET(EMREXTCREATEPEN, cbBmi, 16)
1102     TEST_FIELD_SIZE  (EMREXTCREATEPEN, offBits, 4)
1103     TEST_FIELD_ALIGN (EMREXTCREATEPEN, offBits, 4)
1104     TEST_FIELD_OFFSET(EMREXTCREATEPEN, offBits, 20)
1105     TEST_FIELD_SIZE  (EMREXTCREATEPEN, cbBits, 4)
1106     TEST_FIELD_ALIGN (EMREXTCREATEPEN, cbBits, 4)
1107     TEST_FIELD_OFFSET(EMREXTCREATEPEN, cbBits, 24)
1108     TEST_FIELD_SIZE  (EMREXTCREATEPEN, elp, 32)
1109     TEST_FIELD_ALIGN (EMREXTCREATEPEN, elp, 8)
1110     TEST_FIELD_OFFSET(EMREXTCREATEPEN, elp, 32)
1111 }
1112
1113 static void test_pack_EMREXTFLOODFILL(void)
1114 {
1115     /* EMREXTFLOODFILL */
1116     TEST_TYPE_SIZE   (EMREXTFLOODFILL, 24)
1117     TEST_TYPE_ALIGN  (EMREXTFLOODFILL, 4)
1118     TEST_FIELD_SIZE  (EMREXTFLOODFILL, emr, 8)
1119     TEST_FIELD_ALIGN (EMREXTFLOODFILL, emr, 4)
1120     TEST_FIELD_OFFSET(EMREXTFLOODFILL, emr, 0)
1121     TEST_FIELD_SIZE  (EMREXTFLOODFILL, ptlStart, 8)
1122     TEST_FIELD_ALIGN (EMREXTFLOODFILL, ptlStart, 4)
1123     TEST_FIELD_OFFSET(EMREXTFLOODFILL, ptlStart, 8)
1124     TEST_FIELD_SIZE  (EMREXTFLOODFILL, crColor, 4)
1125     TEST_FIELD_ALIGN (EMREXTFLOODFILL, crColor, 4)
1126     TEST_FIELD_OFFSET(EMREXTFLOODFILL, crColor, 16)
1127     TEST_FIELD_SIZE  (EMREXTFLOODFILL, iMode, 4)
1128     TEST_FIELD_ALIGN (EMREXTFLOODFILL, iMode, 4)
1129     TEST_FIELD_OFFSET(EMREXTFLOODFILL, iMode, 20)
1130 }
1131
1132 static void test_pack_EMREXTSELECTCLIPRGN(void)
1133 {
1134     /* EMREXTSELECTCLIPRGN */
1135     TEST_TYPE_SIZE   (EMREXTSELECTCLIPRGN, 20)
1136     TEST_TYPE_ALIGN  (EMREXTSELECTCLIPRGN, 4)
1137     TEST_FIELD_SIZE  (EMREXTSELECTCLIPRGN, emr, 8)
1138     TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, emr, 4)
1139     TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, emr, 0)
1140     TEST_FIELD_SIZE  (EMREXTSELECTCLIPRGN, cbRgnData, 4)
1141     TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, cbRgnData, 4)
1142     TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, cbRgnData, 8)
1143     TEST_FIELD_SIZE  (EMREXTSELECTCLIPRGN, iMode, 4)
1144     TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, iMode, 4)
1145     TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, iMode, 12)
1146     TEST_FIELD_SIZE  (EMREXTSELECTCLIPRGN, RgnData, 1)
1147     TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, RgnData, 1)
1148     TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, RgnData, 16)
1149 }
1150
1151 static void test_pack_EMREXTTEXTOUTA(void)
1152 {
1153     /* EMREXTTEXTOUTA */
1154     TEST_TYPE_SIZE   (EMREXTTEXTOUTA, 76)
1155     TEST_TYPE_ALIGN  (EMREXTTEXTOUTA, 4)
1156     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, emr, 8)
1157     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, emr, 4)
1158     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, emr, 0)
1159     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, rclBounds, 16)
1160     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, rclBounds, 4)
1161     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, rclBounds, 8)
1162     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, iGraphicsMode, 4)
1163     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, iGraphicsMode, 4)
1164     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, iGraphicsMode, 24)
1165     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, exScale, 4)
1166     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, exScale, 4)
1167     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, exScale, 28)
1168     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, eyScale, 4)
1169     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, eyScale, 4)
1170     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, eyScale, 32)
1171     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, emrtext, 40)
1172     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, emrtext, 4)
1173     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, emrtext, 36)
1174 }
1175
1176 static void test_pack_EMREXTTEXTOUTW(void)
1177 {
1178     /* EMREXTTEXTOUTW */
1179     TEST_TYPE_SIZE   (EMREXTTEXTOUTW, 76)
1180     TEST_TYPE_ALIGN  (EMREXTTEXTOUTW, 4)
1181     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, emr, 8)
1182     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, emr, 4)
1183     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, emr, 0)
1184     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, rclBounds, 16)
1185     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, rclBounds, 4)
1186     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, rclBounds, 8)
1187     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, iGraphicsMode, 4)
1188     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, iGraphicsMode, 4)
1189     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, iGraphicsMode, 24)
1190     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, exScale, 4)
1191     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, exScale, 4)
1192     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, exScale, 28)
1193     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, eyScale, 4)
1194     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, eyScale, 4)
1195     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, eyScale, 32)
1196     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, emrtext, 40)
1197     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, emrtext, 4)
1198     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, emrtext, 36)
1199 }
1200
1201 static void test_pack_EMRFILLPATH(void)
1202 {
1203     /* EMRFILLPATH */
1204     TEST_TYPE_SIZE   (EMRFILLPATH, 24)
1205     TEST_TYPE_ALIGN  (EMRFILLPATH, 4)
1206     TEST_FIELD_SIZE  (EMRFILLPATH, emr, 8)
1207     TEST_FIELD_ALIGN (EMRFILLPATH, emr, 4)
1208     TEST_FIELD_OFFSET(EMRFILLPATH, emr, 0)
1209     TEST_FIELD_SIZE  (EMRFILLPATH, rclBounds, 16)
1210     TEST_FIELD_ALIGN (EMRFILLPATH, rclBounds, 4)
1211     TEST_FIELD_OFFSET(EMRFILLPATH, rclBounds, 8)
1212 }
1213
1214 static void test_pack_EMRFILLRGN(void)
1215 {
1216     /* EMRFILLRGN */
1217     TEST_TYPE_SIZE   (EMRFILLRGN, 36)
1218     TEST_TYPE_ALIGN  (EMRFILLRGN, 4)
1219     TEST_FIELD_SIZE  (EMRFILLRGN, emr, 8)
1220     TEST_FIELD_ALIGN (EMRFILLRGN, emr, 4)
1221     TEST_FIELD_OFFSET(EMRFILLRGN, emr, 0)
1222     TEST_FIELD_SIZE  (EMRFILLRGN, rclBounds, 16)
1223     TEST_FIELD_ALIGN (EMRFILLRGN, rclBounds, 4)
1224     TEST_FIELD_OFFSET(EMRFILLRGN, rclBounds, 8)
1225     TEST_FIELD_SIZE  (EMRFILLRGN, cbRgnData, 4)
1226     TEST_FIELD_ALIGN (EMRFILLRGN, cbRgnData, 4)
1227     TEST_FIELD_OFFSET(EMRFILLRGN, cbRgnData, 24)
1228     TEST_FIELD_SIZE  (EMRFILLRGN, ihBrush, 4)
1229     TEST_FIELD_ALIGN (EMRFILLRGN, ihBrush, 4)
1230     TEST_FIELD_OFFSET(EMRFILLRGN, ihBrush, 28)
1231     TEST_FIELD_SIZE  (EMRFILLRGN, RgnData, 1)
1232     TEST_FIELD_ALIGN (EMRFILLRGN, RgnData, 1)
1233     TEST_FIELD_OFFSET(EMRFILLRGN, RgnData, 32)
1234 }
1235
1236 static void test_pack_EMRFLATTENPATH(void)
1237 {
1238     /* EMRFLATTENPATH */
1239     TEST_TYPE_SIZE   (EMRFLATTENPATH, 8)
1240     TEST_TYPE_ALIGN  (EMRFLATTENPATH, 4)
1241     TEST_FIELD_SIZE  (EMRFLATTENPATH, emr, 8)
1242     TEST_FIELD_ALIGN (EMRFLATTENPATH, emr, 4)
1243     TEST_FIELD_OFFSET(EMRFLATTENPATH, emr, 0)
1244 }
1245
1246 static void test_pack_EMRFORMAT(void)
1247 {
1248     /* EMRFORMAT */
1249     TEST_TYPE_SIZE   (EMRFORMAT, 16)
1250     TEST_TYPE_ALIGN  (EMRFORMAT, 4)
1251     TEST_FIELD_SIZE  (EMRFORMAT, dSignature, 4)
1252     TEST_FIELD_ALIGN (EMRFORMAT, dSignature, 4)
1253     TEST_FIELD_OFFSET(EMRFORMAT, dSignature, 0)
1254     TEST_FIELD_SIZE  (EMRFORMAT, nVersion, 4)
1255     TEST_FIELD_ALIGN (EMRFORMAT, nVersion, 4)
1256     TEST_FIELD_OFFSET(EMRFORMAT, nVersion, 4)
1257     TEST_FIELD_SIZE  (EMRFORMAT, cbData, 4)
1258     TEST_FIELD_ALIGN (EMRFORMAT, cbData, 4)
1259     TEST_FIELD_OFFSET(EMRFORMAT, cbData, 8)
1260     TEST_FIELD_SIZE  (EMRFORMAT, offData, 4)
1261     TEST_FIELD_ALIGN (EMRFORMAT, offData, 4)
1262     TEST_FIELD_OFFSET(EMRFORMAT, offData, 12)
1263 }
1264
1265 static void test_pack_EMRFRAMERGN(void)
1266 {
1267     /* EMRFRAMERGN */
1268     TEST_TYPE_SIZE   (EMRFRAMERGN, 44)
1269     TEST_TYPE_ALIGN  (EMRFRAMERGN, 4)
1270     TEST_FIELD_SIZE  (EMRFRAMERGN, emr, 8)
1271     TEST_FIELD_ALIGN (EMRFRAMERGN, emr, 4)
1272     TEST_FIELD_OFFSET(EMRFRAMERGN, emr, 0)
1273     TEST_FIELD_SIZE  (EMRFRAMERGN, rclBounds, 16)
1274     TEST_FIELD_ALIGN (EMRFRAMERGN, rclBounds, 4)
1275     TEST_FIELD_OFFSET(EMRFRAMERGN, rclBounds, 8)
1276     TEST_FIELD_SIZE  (EMRFRAMERGN, cbRgnData, 4)
1277     TEST_FIELD_ALIGN (EMRFRAMERGN, cbRgnData, 4)
1278     TEST_FIELD_OFFSET(EMRFRAMERGN, cbRgnData, 24)
1279     TEST_FIELD_SIZE  (EMRFRAMERGN, ihBrush, 4)
1280     TEST_FIELD_ALIGN (EMRFRAMERGN, ihBrush, 4)
1281     TEST_FIELD_OFFSET(EMRFRAMERGN, ihBrush, 28)
1282     TEST_FIELD_SIZE  (EMRFRAMERGN, szlStroke, 8)
1283     TEST_FIELD_ALIGN (EMRFRAMERGN, szlStroke, 4)
1284     TEST_FIELD_OFFSET(EMRFRAMERGN, szlStroke, 32)
1285     TEST_FIELD_SIZE  (EMRFRAMERGN, RgnData, 1)
1286     TEST_FIELD_ALIGN (EMRFRAMERGN, RgnData, 1)
1287     TEST_FIELD_OFFSET(EMRFRAMERGN, RgnData, 40)
1288 }
1289
1290 static void test_pack_EMRGDICOMMENT(void)
1291 {
1292     /* EMRGDICOMMENT */
1293     TEST_TYPE_SIZE   (EMRGDICOMMENT, 16)
1294     TEST_TYPE_ALIGN  (EMRGDICOMMENT, 4)
1295     TEST_FIELD_SIZE  (EMRGDICOMMENT, emr, 8)
1296     TEST_FIELD_ALIGN (EMRGDICOMMENT, emr, 4)
1297     TEST_FIELD_OFFSET(EMRGDICOMMENT, emr, 0)
1298     TEST_FIELD_SIZE  (EMRGDICOMMENT, cbData, 4)
1299     TEST_FIELD_ALIGN (EMRGDICOMMENT, cbData, 4)
1300     TEST_FIELD_OFFSET(EMRGDICOMMENT, cbData, 8)
1301     TEST_FIELD_SIZE  (EMRGDICOMMENT, Data, 1)
1302     TEST_FIELD_ALIGN (EMRGDICOMMENT, Data, 1)
1303     TEST_FIELD_OFFSET(EMRGDICOMMENT, Data, 12)
1304 }
1305
1306 static void test_pack_EMRGLSBOUNDEDRECORD(void)
1307 {
1308     /* EMRGLSBOUNDEDRECORD */
1309     TEST_TYPE_SIZE   (EMRGLSBOUNDEDRECORD, 32)
1310     TEST_TYPE_ALIGN  (EMRGLSBOUNDEDRECORD, 4)
1311     TEST_FIELD_SIZE  (EMRGLSBOUNDEDRECORD, emr, 8)
1312     TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, emr, 4)
1313     TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, emr, 0)
1314     TEST_FIELD_SIZE  (EMRGLSBOUNDEDRECORD, rclBounds, 16)
1315     TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, rclBounds, 4)
1316     TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, rclBounds, 8)
1317     TEST_FIELD_SIZE  (EMRGLSBOUNDEDRECORD, cbData, 4)
1318     TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, cbData, 4)
1319     TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, cbData, 24)
1320     TEST_FIELD_SIZE  (EMRGLSBOUNDEDRECORD, Data, 1)
1321     TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, Data, 1)
1322     TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, Data, 28)
1323 }
1324
1325 static void test_pack_EMRGLSRECORD(void)
1326 {
1327     /* EMRGLSRECORD */
1328     TEST_TYPE_SIZE   (EMRGLSRECORD, 16)
1329     TEST_TYPE_ALIGN  (EMRGLSRECORD, 4)
1330     TEST_FIELD_SIZE  (EMRGLSRECORD, emr, 8)
1331     TEST_FIELD_ALIGN (EMRGLSRECORD, emr, 4)
1332     TEST_FIELD_OFFSET(EMRGLSRECORD, emr, 0)
1333     TEST_FIELD_SIZE  (EMRGLSRECORD, cbData, 4)
1334     TEST_FIELD_ALIGN (EMRGLSRECORD, cbData, 4)
1335     TEST_FIELD_OFFSET(EMRGLSRECORD, cbData, 8)
1336     TEST_FIELD_SIZE  (EMRGLSRECORD, Data, 1)
1337     TEST_FIELD_ALIGN (EMRGLSRECORD, Data, 1)
1338     TEST_FIELD_OFFSET(EMRGLSRECORD, Data, 12)
1339 }
1340
1341 static void test_pack_EMRINTERSECTCLIPRECT(void)
1342 {
1343     /* EMRINTERSECTCLIPRECT */
1344     TEST_TYPE_SIZE   (EMRINTERSECTCLIPRECT, 24)
1345     TEST_TYPE_ALIGN  (EMRINTERSECTCLIPRECT, 4)
1346     TEST_FIELD_SIZE  (EMRINTERSECTCLIPRECT, emr, 8)
1347     TEST_FIELD_ALIGN (EMRINTERSECTCLIPRECT, emr, 4)
1348     TEST_FIELD_OFFSET(EMRINTERSECTCLIPRECT, emr, 0)
1349     TEST_FIELD_SIZE  (EMRINTERSECTCLIPRECT, rclClip, 16)
1350     TEST_FIELD_ALIGN (EMRINTERSECTCLIPRECT, rclClip, 4)
1351     TEST_FIELD_OFFSET(EMRINTERSECTCLIPRECT, rclClip, 8)
1352 }
1353
1354 static void test_pack_EMRINVERTRGN(void)
1355 {
1356     /* EMRINVERTRGN */
1357     TEST_TYPE_SIZE   (EMRINVERTRGN, 32)
1358     TEST_TYPE_ALIGN  (EMRINVERTRGN, 4)
1359     TEST_FIELD_SIZE  (EMRINVERTRGN, emr, 8)
1360     TEST_FIELD_ALIGN (EMRINVERTRGN, emr, 4)
1361     TEST_FIELD_OFFSET(EMRINVERTRGN, emr, 0)
1362     TEST_FIELD_SIZE  (EMRINVERTRGN, rclBounds, 16)
1363     TEST_FIELD_ALIGN (EMRINVERTRGN, rclBounds, 4)
1364     TEST_FIELD_OFFSET(EMRINVERTRGN, rclBounds, 8)
1365     TEST_FIELD_SIZE  (EMRINVERTRGN, cbRgnData, 4)
1366     TEST_FIELD_ALIGN (EMRINVERTRGN, cbRgnData, 4)
1367     TEST_FIELD_OFFSET(EMRINVERTRGN, cbRgnData, 24)
1368     TEST_FIELD_SIZE  (EMRINVERTRGN, RgnData, 1)
1369     TEST_FIELD_ALIGN (EMRINVERTRGN, RgnData, 1)
1370     TEST_FIELD_OFFSET(EMRINVERTRGN, RgnData, 28)
1371 }
1372
1373 static void test_pack_EMRLINETO(void)
1374 {
1375     /* EMRLINETO */
1376     TEST_TYPE_SIZE   (EMRLINETO, 16)
1377     TEST_TYPE_ALIGN  (EMRLINETO, 4)
1378     TEST_FIELD_SIZE  (EMRLINETO, emr, 8)
1379     TEST_FIELD_ALIGN (EMRLINETO, emr, 4)
1380     TEST_FIELD_OFFSET(EMRLINETO, emr, 0)
1381     TEST_FIELD_SIZE  (EMRLINETO, ptl, 8)
1382     TEST_FIELD_ALIGN (EMRLINETO, ptl, 4)
1383     TEST_FIELD_OFFSET(EMRLINETO, ptl, 8)
1384 }
1385
1386 static void test_pack_EMRMASKBLT(void)
1387 {
1388     /* EMRMASKBLT */
1389     TEST_TYPE_SIZE   (EMRMASKBLT, 128)
1390     TEST_TYPE_ALIGN  (EMRMASKBLT, 4)
1391     TEST_FIELD_SIZE  (EMRMASKBLT, emr, 8)
1392     TEST_FIELD_ALIGN (EMRMASKBLT, emr, 4)
1393     TEST_FIELD_OFFSET(EMRMASKBLT, emr, 0)
1394     TEST_FIELD_SIZE  (EMRMASKBLT, rclBounds, 16)
1395     TEST_FIELD_ALIGN (EMRMASKBLT, rclBounds, 4)
1396     TEST_FIELD_OFFSET(EMRMASKBLT, rclBounds, 8)
1397     TEST_FIELD_SIZE  (EMRMASKBLT, xDest, 4)
1398     TEST_FIELD_ALIGN (EMRMASKBLT, xDest, 4)
1399     TEST_FIELD_OFFSET(EMRMASKBLT, xDest, 24)
1400     TEST_FIELD_SIZE  (EMRMASKBLT, yDest, 4)
1401     TEST_FIELD_ALIGN (EMRMASKBLT, yDest, 4)
1402     TEST_FIELD_OFFSET(EMRMASKBLT, yDest, 28)
1403     TEST_FIELD_SIZE  (EMRMASKBLT, cxDest, 4)
1404     TEST_FIELD_ALIGN (EMRMASKBLT, cxDest, 4)
1405     TEST_FIELD_OFFSET(EMRMASKBLT, cxDest, 32)
1406     TEST_FIELD_SIZE  (EMRMASKBLT, cyDest, 4)
1407     TEST_FIELD_ALIGN (EMRMASKBLT, cyDest, 4)
1408     TEST_FIELD_OFFSET(EMRMASKBLT, cyDest, 36)
1409     TEST_FIELD_SIZE  (EMRMASKBLT, dwRop, 4)
1410     TEST_FIELD_ALIGN (EMRMASKBLT, dwRop, 4)
1411     TEST_FIELD_OFFSET(EMRMASKBLT, dwRop, 40)
1412     TEST_FIELD_SIZE  (EMRMASKBLT, xSrc, 4)
1413     TEST_FIELD_ALIGN (EMRMASKBLT, xSrc, 4)
1414     TEST_FIELD_OFFSET(EMRMASKBLT, xSrc, 44)
1415     TEST_FIELD_SIZE  (EMRMASKBLT, ySrc, 4)
1416     TEST_FIELD_ALIGN (EMRMASKBLT, ySrc, 4)
1417     TEST_FIELD_OFFSET(EMRMASKBLT, ySrc, 48)
1418     TEST_FIELD_SIZE  (EMRMASKBLT, xformSrc, 24)
1419     TEST_FIELD_ALIGN (EMRMASKBLT, xformSrc, 4)
1420     TEST_FIELD_OFFSET(EMRMASKBLT, xformSrc, 52)
1421     TEST_FIELD_SIZE  (EMRMASKBLT, crBkColorSrc, 4)
1422     TEST_FIELD_ALIGN (EMRMASKBLT, crBkColorSrc, 4)
1423     TEST_FIELD_OFFSET(EMRMASKBLT, crBkColorSrc, 76)
1424     TEST_FIELD_SIZE  (EMRMASKBLT, iUsageSrc, 4)
1425     TEST_FIELD_ALIGN (EMRMASKBLT, iUsageSrc, 4)
1426     TEST_FIELD_OFFSET(EMRMASKBLT, iUsageSrc, 80)
1427     TEST_FIELD_SIZE  (EMRMASKBLT, offBmiSrc, 4)
1428     TEST_FIELD_ALIGN (EMRMASKBLT, offBmiSrc, 4)
1429     TEST_FIELD_OFFSET(EMRMASKBLT, offBmiSrc, 84)
1430     TEST_FIELD_SIZE  (EMRMASKBLT, cbBmiSrc, 4)
1431     TEST_FIELD_ALIGN (EMRMASKBLT, cbBmiSrc, 4)
1432     TEST_FIELD_OFFSET(EMRMASKBLT, cbBmiSrc, 88)
1433     TEST_FIELD_SIZE  (EMRMASKBLT, offBitsSrc, 4)
1434     TEST_FIELD_ALIGN (EMRMASKBLT, offBitsSrc, 4)
1435     TEST_FIELD_OFFSET(EMRMASKBLT, offBitsSrc, 92)
1436     TEST_FIELD_SIZE  (EMRMASKBLT, cbBitsSrc, 4)
1437     TEST_FIELD_ALIGN (EMRMASKBLT, cbBitsSrc, 4)
1438     TEST_FIELD_OFFSET(EMRMASKBLT, cbBitsSrc, 96)
1439     TEST_FIELD_SIZE  (EMRMASKBLT, xMask, 4)
1440     TEST_FIELD_ALIGN (EMRMASKBLT, xMask, 4)
1441     TEST_FIELD_OFFSET(EMRMASKBLT, xMask, 100)
1442     TEST_FIELD_SIZE  (EMRMASKBLT, yMask, 4)
1443     TEST_FIELD_ALIGN (EMRMASKBLT, yMask, 4)
1444     TEST_FIELD_OFFSET(EMRMASKBLT, yMask, 104)
1445     TEST_FIELD_SIZE  (EMRMASKBLT, iUsageMask, 4)
1446     TEST_FIELD_ALIGN (EMRMASKBLT, iUsageMask, 4)
1447     TEST_FIELD_OFFSET(EMRMASKBLT, iUsageMask, 108)
1448     TEST_FIELD_SIZE  (EMRMASKBLT, offBmiMask, 4)
1449     TEST_FIELD_ALIGN (EMRMASKBLT, offBmiMask, 4)
1450     TEST_FIELD_OFFSET(EMRMASKBLT, offBmiMask, 112)
1451     TEST_FIELD_SIZE  (EMRMASKBLT, cbBmiMask, 4)
1452     TEST_FIELD_ALIGN (EMRMASKBLT, cbBmiMask, 4)
1453     TEST_FIELD_OFFSET(EMRMASKBLT, cbBmiMask, 116)
1454     TEST_FIELD_SIZE  (EMRMASKBLT, offBitsMask, 4)
1455     TEST_FIELD_ALIGN (EMRMASKBLT, offBitsMask, 4)
1456     TEST_FIELD_OFFSET(EMRMASKBLT, offBitsMask, 120)
1457     TEST_FIELD_SIZE  (EMRMASKBLT, cbBitsMask, 4)
1458     TEST_FIELD_ALIGN (EMRMASKBLT, cbBitsMask, 4)
1459     TEST_FIELD_OFFSET(EMRMASKBLT, cbBitsMask, 124)
1460 }
1461
1462 static void test_pack_EMRMODIFYWORLDTRANSFORM(void)
1463 {
1464     /* EMRMODIFYWORLDTRANSFORM */
1465     TEST_TYPE_SIZE   (EMRMODIFYWORLDTRANSFORM, 36)
1466     TEST_TYPE_ALIGN  (EMRMODIFYWORLDTRANSFORM, 4)
1467     TEST_FIELD_SIZE  (EMRMODIFYWORLDTRANSFORM, emr, 8)
1468     TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, emr, 4)
1469     TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, emr, 0)
1470     TEST_FIELD_SIZE  (EMRMODIFYWORLDTRANSFORM, xform, 24)
1471     TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, xform, 4)
1472     TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, xform, 8)
1473     TEST_FIELD_SIZE  (EMRMODIFYWORLDTRANSFORM, iMode, 4)
1474     TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, iMode, 4)
1475     TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, iMode, 32)
1476 }
1477
1478 static void test_pack_EMRMOVETOEX(void)
1479 {
1480     /* EMRMOVETOEX */
1481     TEST_TYPE_SIZE   (EMRMOVETOEX, 16)
1482     TEST_TYPE_ALIGN  (EMRMOVETOEX, 4)
1483     TEST_FIELD_SIZE  (EMRMOVETOEX, emr, 8)
1484     TEST_FIELD_ALIGN (EMRMOVETOEX, emr, 4)
1485     TEST_FIELD_OFFSET(EMRMOVETOEX, emr, 0)
1486     TEST_FIELD_SIZE  (EMRMOVETOEX, ptl, 8)
1487     TEST_FIELD_ALIGN (EMRMOVETOEX, ptl, 4)
1488     TEST_FIELD_OFFSET(EMRMOVETOEX, ptl, 8)
1489 }
1490
1491 static void test_pack_EMROFFSETCLIPRGN(void)
1492 {
1493     /* EMROFFSETCLIPRGN */
1494     TEST_TYPE_SIZE   (EMROFFSETCLIPRGN, 16)
1495     TEST_TYPE_ALIGN  (EMROFFSETCLIPRGN, 4)
1496     TEST_FIELD_SIZE  (EMROFFSETCLIPRGN, emr, 8)
1497     TEST_FIELD_ALIGN (EMROFFSETCLIPRGN, emr, 4)
1498     TEST_FIELD_OFFSET(EMROFFSETCLIPRGN, emr, 0)
1499     TEST_FIELD_SIZE  (EMROFFSETCLIPRGN, ptlOffset, 8)
1500     TEST_FIELD_ALIGN (EMROFFSETCLIPRGN, ptlOffset, 4)
1501     TEST_FIELD_OFFSET(EMROFFSETCLIPRGN, ptlOffset, 8)
1502 }
1503
1504 static void test_pack_EMRPAINTRGN(void)
1505 {
1506     /* EMRPAINTRGN */
1507     TEST_TYPE_SIZE   (EMRPAINTRGN, 32)
1508     TEST_TYPE_ALIGN  (EMRPAINTRGN, 4)
1509     TEST_FIELD_SIZE  (EMRPAINTRGN, emr, 8)
1510     TEST_FIELD_ALIGN (EMRPAINTRGN, emr, 4)
1511     TEST_FIELD_OFFSET(EMRPAINTRGN, emr, 0)
1512     TEST_FIELD_SIZE  (EMRPAINTRGN, rclBounds, 16)
1513     TEST_FIELD_ALIGN (EMRPAINTRGN, rclBounds, 4)
1514     TEST_FIELD_OFFSET(EMRPAINTRGN, rclBounds, 8)
1515     TEST_FIELD_SIZE  (EMRPAINTRGN, cbRgnData, 4)
1516     TEST_FIELD_ALIGN (EMRPAINTRGN, cbRgnData, 4)
1517     TEST_FIELD_OFFSET(EMRPAINTRGN, cbRgnData, 24)
1518     TEST_FIELD_SIZE  (EMRPAINTRGN, RgnData, 1)
1519     TEST_FIELD_ALIGN (EMRPAINTRGN, RgnData, 1)
1520     TEST_FIELD_OFFSET(EMRPAINTRGN, RgnData, 28)
1521 }
1522
1523 static void test_pack_EMRPIE(void)
1524 {
1525     /* EMRPIE */
1526     TEST_TYPE_SIZE   (EMRPIE, 40)
1527     TEST_TYPE_ALIGN  (EMRPIE, 4)
1528     TEST_FIELD_SIZE  (EMRPIE, emr, 8)
1529     TEST_FIELD_ALIGN (EMRPIE, emr, 4)
1530     TEST_FIELD_OFFSET(EMRPIE, emr, 0)
1531     TEST_FIELD_SIZE  (EMRPIE, rclBox, 16)
1532     TEST_FIELD_ALIGN (EMRPIE, rclBox, 4)
1533     TEST_FIELD_OFFSET(EMRPIE, rclBox, 8)
1534     TEST_FIELD_SIZE  (EMRPIE, ptlStart, 8)
1535     TEST_FIELD_ALIGN (EMRPIE, ptlStart, 4)
1536     TEST_FIELD_OFFSET(EMRPIE, ptlStart, 24)
1537     TEST_FIELD_SIZE  (EMRPIE, ptlEnd, 8)
1538     TEST_FIELD_ALIGN (EMRPIE, ptlEnd, 4)
1539     TEST_FIELD_OFFSET(EMRPIE, ptlEnd, 32)
1540 }
1541
1542 static void test_pack_EMRPIXELFORMAT(void)
1543 {
1544     /* EMRPIXELFORMAT */
1545     TEST_TYPE_SIZE   (EMRPIXELFORMAT, 48)
1546     TEST_TYPE_ALIGN  (EMRPIXELFORMAT, 4)
1547     TEST_FIELD_SIZE  (EMRPIXELFORMAT, emr, 8)
1548     TEST_FIELD_ALIGN (EMRPIXELFORMAT, emr, 4)
1549     TEST_FIELD_OFFSET(EMRPIXELFORMAT, emr, 0)
1550     TEST_FIELD_SIZE  (EMRPIXELFORMAT, pfd, 40)
1551     TEST_FIELD_ALIGN (EMRPIXELFORMAT, pfd, 4)
1552     TEST_FIELD_OFFSET(EMRPIXELFORMAT, pfd, 8)
1553 }
1554
1555 static void test_pack_EMRPLGBLT(void)
1556 {
1557     /* EMRPLGBLT */
1558     TEST_TYPE_SIZE   (EMRPLGBLT, 140)
1559     TEST_TYPE_ALIGN  (EMRPLGBLT, 4)
1560     TEST_FIELD_SIZE  (EMRPLGBLT, emr, 8)
1561     TEST_FIELD_ALIGN (EMRPLGBLT, emr, 4)
1562     TEST_FIELD_OFFSET(EMRPLGBLT, emr, 0)
1563     TEST_FIELD_SIZE  (EMRPLGBLT, rclBounds, 16)
1564     TEST_FIELD_ALIGN (EMRPLGBLT, rclBounds, 4)
1565     TEST_FIELD_OFFSET(EMRPLGBLT, rclBounds, 8)
1566     TEST_FIELD_SIZE  (EMRPLGBLT, aptlDest, 24)
1567     TEST_FIELD_ALIGN (EMRPLGBLT, aptlDest, 4)
1568     TEST_FIELD_OFFSET(EMRPLGBLT, aptlDest, 24)
1569     TEST_FIELD_SIZE  (EMRPLGBLT, xSrc, 4)
1570     TEST_FIELD_ALIGN (EMRPLGBLT, xSrc, 4)
1571     TEST_FIELD_OFFSET(EMRPLGBLT, xSrc, 48)
1572     TEST_FIELD_SIZE  (EMRPLGBLT, ySrc, 4)
1573     TEST_FIELD_ALIGN (EMRPLGBLT, ySrc, 4)
1574     TEST_FIELD_OFFSET(EMRPLGBLT, ySrc, 52)
1575     TEST_FIELD_SIZE  (EMRPLGBLT, cxSrc, 4)
1576     TEST_FIELD_ALIGN (EMRPLGBLT, cxSrc, 4)
1577     TEST_FIELD_OFFSET(EMRPLGBLT, cxSrc, 56)
1578     TEST_FIELD_SIZE  (EMRPLGBLT, cySrc, 4)
1579     TEST_FIELD_ALIGN (EMRPLGBLT, cySrc, 4)
1580     TEST_FIELD_OFFSET(EMRPLGBLT, cySrc, 60)
1581     TEST_FIELD_SIZE  (EMRPLGBLT, xformSrc, 24)
1582     TEST_FIELD_ALIGN (EMRPLGBLT, xformSrc, 4)
1583     TEST_FIELD_OFFSET(EMRPLGBLT, xformSrc, 64)
1584     TEST_FIELD_SIZE  (EMRPLGBLT, crBkColorSrc, 4)
1585     TEST_FIELD_ALIGN (EMRPLGBLT, crBkColorSrc, 4)
1586     TEST_FIELD_OFFSET(EMRPLGBLT, crBkColorSrc, 88)
1587     TEST_FIELD_SIZE  (EMRPLGBLT, iUsageSrc, 4)
1588     TEST_FIELD_ALIGN (EMRPLGBLT, iUsageSrc, 4)
1589     TEST_FIELD_OFFSET(EMRPLGBLT, iUsageSrc, 92)
1590     TEST_FIELD_SIZE  (EMRPLGBLT, offBmiSrc, 4)
1591     TEST_FIELD_ALIGN (EMRPLGBLT, offBmiSrc, 4)
1592     TEST_FIELD_OFFSET(EMRPLGBLT, offBmiSrc, 96)
1593     TEST_FIELD_SIZE  (EMRPLGBLT, cbBmiSrc, 4)
1594     TEST_FIELD_ALIGN (EMRPLGBLT, cbBmiSrc, 4)
1595     TEST_FIELD_OFFSET(EMRPLGBLT, cbBmiSrc, 100)
1596     TEST_FIELD_SIZE  (EMRPLGBLT, offBitsSrc, 4)
1597     TEST_FIELD_ALIGN (EMRPLGBLT, offBitsSrc, 4)
1598     TEST_FIELD_OFFSET(EMRPLGBLT, offBitsSrc, 104)
1599     TEST_FIELD_SIZE  (EMRPLGBLT, cbBitsSrc, 4)
1600     TEST_FIELD_ALIGN (EMRPLGBLT, cbBitsSrc, 4)
1601     TEST_FIELD_OFFSET(EMRPLGBLT, cbBitsSrc, 108)
1602     TEST_FIELD_SIZE  (EMRPLGBLT, xMask, 4)
1603     TEST_FIELD_ALIGN (EMRPLGBLT, xMask, 4)
1604     TEST_FIELD_OFFSET(EMRPLGBLT, xMask, 112)
1605     TEST_FIELD_SIZE  (EMRPLGBLT, yMask, 4)
1606     TEST_FIELD_ALIGN (EMRPLGBLT, yMask, 4)
1607     TEST_FIELD_OFFSET(EMRPLGBLT, yMask, 116)
1608     TEST_FIELD_SIZE  (EMRPLGBLT, iUsageMask, 4)
1609     TEST_FIELD_ALIGN (EMRPLGBLT, iUsageMask, 4)
1610     TEST_FIELD_OFFSET(EMRPLGBLT, iUsageMask, 120)
1611     TEST_FIELD_SIZE  (EMRPLGBLT, offBmiMask, 4)
1612     TEST_FIELD_ALIGN (EMRPLGBLT, offBmiMask, 4)
1613     TEST_FIELD_OFFSET(EMRPLGBLT, offBmiMask, 124)
1614     TEST_FIELD_SIZE  (EMRPLGBLT, cbBmiMask, 4)
1615     TEST_FIELD_ALIGN (EMRPLGBLT, cbBmiMask, 4)
1616     TEST_FIELD_OFFSET(EMRPLGBLT, cbBmiMask, 128)
1617     TEST_FIELD_SIZE  (EMRPLGBLT, offBitsMask, 4)
1618     TEST_FIELD_ALIGN (EMRPLGBLT, offBitsMask, 4)
1619     TEST_FIELD_OFFSET(EMRPLGBLT, offBitsMask, 132)
1620     TEST_FIELD_SIZE  (EMRPLGBLT, cbBitsMask, 4)
1621     TEST_FIELD_ALIGN (EMRPLGBLT, cbBitsMask, 4)
1622     TEST_FIELD_OFFSET(EMRPLGBLT, cbBitsMask, 136)
1623 }
1624
1625 static void test_pack_EMRPOLYBEZIER(void)
1626 {
1627     /* EMRPOLYBEZIER */
1628     TEST_TYPE_SIZE   (EMRPOLYBEZIER, 36)
1629     TEST_TYPE_ALIGN  (EMRPOLYBEZIER, 4)
1630     TEST_FIELD_SIZE  (EMRPOLYBEZIER, emr, 8)
1631     TEST_FIELD_ALIGN (EMRPOLYBEZIER, emr, 4)
1632     TEST_FIELD_OFFSET(EMRPOLYBEZIER, emr, 0)
1633     TEST_FIELD_SIZE  (EMRPOLYBEZIER, rclBounds, 16)
1634     TEST_FIELD_ALIGN (EMRPOLYBEZIER, rclBounds, 4)
1635     TEST_FIELD_OFFSET(EMRPOLYBEZIER, rclBounds, 8)
1636     TEST_FIELD_SIZE  (EMRPOLYBEZIER, cptl, 4)
1637     TEST_FIELD_ALIGN (EMRPOLYBEZIER, cptl, 4)
1638     TEST_FIELD_OFFSET(EMRPOLYBEZIER, cptl, 24)
1639     TEST_FIELD_SIZE  (EMRPOLYBEZIER, aptl, 8)
1640     TEST_FIELD_ALIGN (EMRPOLYBEZIER, aptl, 4)
1641     TEST_FIELD_OFFSET(EMRPOLYBEZIER, aptl, 28)
1642 }
1643
1644 static void test_pack_EMRPOLYBEZIER16(void)
1645 {
1646     /* EMRPOLYBEZIER16 */
1647     TEST_TYPE_SIZE   (EMRPOLYBEZIER16, 32)
1648     TEST_TYPE_ALIGN  (EMRPOLYBEZIER16, 4)
1649     TEST_FIELD_SIZE  (EMRPOLYBEZIER16, emr, 8)
1650     TEST_FIELD_ALIGN (EMRPOLYBEZIER16, emr, 4)
1651     TEST_FIELD_OFFSET(EMRPOLYBEZIER16, emr, 0)
1652     TEST_FIELD_SIZE  (EMRPOLYBEZIER16, rclBounds, 16)
1653     TEST_FIELD_ALIGN (EMRPOLYBEZIER16, rclBounds, 4)
1654     TEST_FIELD_OFFSET(EMRPOLYBEZIER16, rclBounds, 8)
1655     TEST_FIELD_SIZE  (EMRPOLYBEZIER16, cpts, 4)
1656     TEST_FIELD_ALIGN (EMRPOLYBEZIER16, cpts, 4)
1657     TEST_FIELD_OFFSET(EMRPOLYBEZIER16, cpts, 24)
1658     TEST_FIELD_SIZE  (EMRPOLYBEZIER16, apts, 4)
1659     TEST_FIELD_ALIGN (EMRPOLYBEZIER16, apts, 2)
1660     TEST_FIELD_OFFSET(EMRPOLYBEZIER16, apts, 28)
1661 }
1662
1663 static void test_pack_EMRPOLYBEZIERTO(void)
1664 {
1665     /* EMRPOLYBEZIERTO */
1666     TEST_TYPE_SIZE   (EMRPOLYBEZIERTO, 36)
1667     TEST_TYPE_ALIGN  (EMRPOLYBEZIERTO, 4)
1668     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO, emr, 8)
1669     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, emr, 4)
1670     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, emr, 0)
1671     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO, rclBounds, 16)
1672     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, rclBounds, 4)
1673     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, rclBounds, 8)
1674     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO, cptl, 4)
1675     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, cptl, 4)
1676     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, cptl, 24)
1677     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO, aptl, 8)
1678     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, aptl, 4)
1679     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, aptl, 28)
1680 }
1681
1682 static void test_pack_EMRPOLYBEZIERTO16(void)
1683 {
1684     /* EMRPOLYBEZIERTO16 */
1685     TEST_TYPE_SIZE   (EMRPOLYBEZIERTO16, 32)
1686     TEST_TYPE_ALIGN  (EMRPOLYBEZIERTO16, 4)
1687     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO16, emr, 8)
1688     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, emr, 4)
1689     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, emr, 0)
1690     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO16, rclBounds, 16)
1691     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, rclBounds, 4)
1692     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, rclBounds, 8)
1693     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO16, cpts, 4)
1694     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, cpts, 4)
1695     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, cpts, 24)
1696     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO16, apts, 4)
1697     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, apts, 2)
1698     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, apts, 28)
1699 }
1700
1701 static void test_pack_EMRPOLYDRAW(void)
1702 {
1703     /* EMRPOLYDRAW */
1704     TEST_TYPE_SIZE   (EMRPOLYDRAW, 40)
1705     TEST_TYPE_ALIGN  (EMRPOLYDRAW, 4)
1706     TEST_FIELD_SIZE  (EMRPOLYDRAW, emr, 8)
1707     TEST_FIELD_ALIGN (EMRPOLYDRAW, emr, 4)
1708     TEST_FIELD_OFFSET(EMRPOLYDRAW, emr, 0)
1709     TEST_FIELD_SIZE  (EMRPOLYDRAW, rclBounds, 16)
1710     TEST_FIELD_ALIGN (EMRPOLYDRAW, rclBounds, 4)
1711     TEST_FIELD_OFFSET(EMRPOLYDRAW, rclBounds, 8)
1712     TEST_FIELD_SIZE  (EMRPOLYDRAW, cptl, 4)
1713     TEST_FIELD_ALIGN (EMRPOLYDRAW, cptl, 4)
1714     TEST_FIELD_OFFSET(EMRPOLYDRAW, cptl, 24)
1715     TEST_FIELD_SIZE  (EMRPOLYDRAW, aptl, 8)
1716     TEST_FIELD_ALIGN (EMRPOLYDRAW, aptl, 4)
1717     TEST_FIELD_OFFSET(EMRPOLYDRAW, aptl, 28)
1718     TEST_FIELD_SIZE  (EMRPOLYDRAW, abTypes, 1)
1719     TEST_FIELD_ALIGN (EMRPOLYDRAW, abTypes, 1)
1720     TEST_FIELD_OFFSET(EMRPOLYDRAW, abTypes, 36)
1721 }
1722
1723 static void test_pack_EMRPOLYDRAW16(void)
1724 {
1725     /* EMRPOLYDRAW16 */
1726     TEST_TYPE_SIZE   (EMRPOLYDRAW16, 36)
1727     TEST_TYPE_ALIGN  (EMRPOLYDRAW16, 4)
1728     TEST_FIELD_SIZE  (EMRPOLYDRAW16, emr, 8)
1729     TEST_FIELD_ALIGN (EMRPOLYDRAW16, emr, 4)
1730     TEST_FIELD_OFFSET(EMRPOLYDRAW16, emr, 0)
1731     TEST_FIELD_SIZE  (EMRPOLYDRAW16, rclBounds, 16)
1732     TEST_FIELD_ALIGN (EMRPOLYDRAW16, rclBounds, 4)
1733     TEST_FIELD_OFFSET(EMRPOLYDRAW16, rclBounds, 8)
1734     TEST_FIELD_SIZE  (EMRPOLYDRAW16, cpts, 4)
1735     TEST_FIELD_ALIGN (EMRPOLYDRAW16, cpts, 4)
1736     TEST_FIELD_OFFSET(EMRPOLYDRAW16, cpts, 24)
1737     TEST_FIELD_SIZE  (EMRPOLYDRAW16, apts, 4)
1738     TEST_FIELD_ALIGN (EMRPOLYDRAW16, apts, 2)
1739     TEST_FIELD_OFFSET(EMRPOLYDRAW16, apts, 28)
1740     TEST_FIELD_SIZE  (EMRPOLYDRAW16, abTypes, 1)
1741     TEST_FIELD_ALIGN (EMRPOLYDRAW16, abTypes, 1)
1742     TEST_FIELD_OFFSET(EMRPOLYDRAW16, abTypes, 32)
1743 }
1744
1745 static void test_pack_EMRPOLYGON(void)
1746 {
1747     /* EMRPOLYGON */
1748     TEST_TYPE_SIZE   (EMRPOLYGON, 36)
1749     TEST_TYPE_ALIGN  (EMRPOLYGON, 4)
1750     TEST_FIELD_SIZE  (EMRPOLYGON, emr, 8)
1751     TEST_FIELD_ALIGN (EMRPOLYGON, emr, 4)
1752     TEST_FIELD_OFFSET(EMRPOLYGON, emr, 0)
1753     TEST_FIELD_SIZE  (EMRPOLYGON, rclBounds, 16)
1754     TEST_FIELD_ALIGN (EMRPOLYGON, rclBounds, 4)
1755     TEST_FIELD_OFFSET(EMRPOLYGON, rclBounds, 8)
1756     TEST_FIELD_SIZE  (EMRPOLYGON, cptl, 4)
1757     TEST_FIELD_ALIGN (EMRPOLYGON, cptl, 4)
1758     TEST_FIELD_OFFSET(EMRPOLYGON, cptl, 24)
1759     TEST_FIELD_SIZE  (EMRPOLYGON, aptl, 8)
1760     TEST_FIELD_ALIGN (EMRPOLYGON, aptl, 4)
1761     TEST_FIELD_OFFSET(EMRPOLYGON, aptl, 28)
1762 }
1763
1764 static void test_pack_EMRPOLYGON16(void)
1765 {
1766     /* EMRPOLYGON16 */
1767     TEST_TYPE_SIZE   (EMRPOLYGON16, 32)
1768     TEST_TYPE_ALIGN  (EMRPOLYGON16, 4)
1769     TEST_FIELD_SIZE  (EMRPOLYGON16, emr, 8)
1770     TEST_FIELD_ALIGN (EMRPOLYGON16, emr, 4)
1771     TEST_FIELD_OFFSET(EMRPOLYGON16, emr, 0)
1772     TEST_FIELD_SIZE  (EMRPOLYGON16, rclBounds, 16)
1773     TEST_FIELD_ALIGN (EMRPOLYGON16, rclBounds, 4)
1774     TEST_FIELD_OFFSET(EMRPOLYGON16, rclBounds, 8)
1775     TEST_FIELD_SIZE  (EMRPOLYGON16, cpts, 4)
1776     TEST_FIELD_ALIGN (EMRPOLYGON16, cpts, 4)
1777     TEST_FIELD_OFFSET(EMRPOLYGON16, cpts, 24)
1778     TEST_FIELD_SIZE  (EMRPOLYGON16, apts, 4)
1779     TEST_FIELD_ALIGN (EMRPOLYGON16, apts, 2)
1780     TEST_FIELD_OFFSET(EMRPOLYGON16, apts, 28)
1781 }
1782
1783 static void test_pack_EMRPOLYLINE(void)
1784 {
1785     /* EMRPOLYLINE */
1786     TEST_TYPE_SIZE   (EMRPOLYLINE, 36)
1787     TEST_TYPE_ALIGN  (EMRPOLYLINE, 4)
1788     TEST_FIELD_SIZE  (EMRPOLYLINE, emr, 8)
1789     TEST_FIELD_ALIGN (EMRPOLYLINE, emr, 4)
1790     TEST_FIELD_OFFSET(EMRPOLYLINE, emr, 0)
1791     TEST_FIELD_SIZE  (EMRPOLYLINE, rclBounds, 16)
1792     TEST_FIELD_ALIGN (EMRPOLYLINE, rclBounds, 4)
1793     TEST_FIELD_OFFSET(EMRPOLYLINE, rclBounds, 8)
1794     TEST_FIELD_SIZE  (EMRPOLYLINE, cptl, 4)
1795     TEST_FIELD_ALIGN (EMRPOLYLINE, cptl, 4)
1796     TEST_FIELD_OFFSET(EMRPOLYLINE, cptl, 24)
1797     TEST_FIELD_SIZE  (EMRPOLYLINE, aptl, 8)
1798     TEST_FIELD_ALIGN (EMRPOLYLINE, aptl, 4)
1799     TEST_FIELD_OFFSET(EMRPOLYLINE, aptl, 28)
1800 }
1801
1802 static void test_pack_EMRPOLYLINE16(void)
1803 {
1804     /* EMRPOLYLINE16 */
1805     TEST_TYPE_SIZE   (EMRPOLYLINE16, 32)
1806     TEST_TYPE_ALIGN  (EMRPOLYLINE16, 4)
1807     TEST_FIELD_SIZE  (EMRPOLYLINE16, emr, 8)
1808     TEST_FIELD_ALIGN (EMRPOLYLINE16, emr, 4)
1809     TEST_FIELD_OFFSET(EMRPOLYLINE16, emr, 0)
1810     TEST_FIELD_SIZE  (EMRPOLYLINE16, rclBounds, 16)
1811     TEST_FIELD_ALIGN (EMRPOLYLINE16, rclBounds, 4)
1812     TEST_FIELD_OFFSET(EMRPOLYLINE16, rclBounds, 8)
1813     TEST_FIELD_SIZE  (EMRPOLYLINE16, cpts, 4)
1814     TEST_FIELD_ALIGN (EMRPOLYLINE16, cpts, 4)
1815     TEST_FIELD_OFFSET(EMRPOLYLINE16, cpts, 24)
1816     TEST_FIELD_SIZE  (EMRPOLYLINE16, apts, 4)
1817     TEST_FIELD_ALIGN (EMRPOLYLINE16, apts, 2)
1818     TEST_FIELD_OFFSET(EMRPOLYLINE16, apts, 28)
1819 }
1820
1821 static void test_pack_EMRPOLYLINETO(void)
1822 {
1823     /* EMRPOLYLINETO */
1824     TEST_TYPE_SIZE   (EMRPOLYLINETO, 36)
1825     TEST_TYPE_ALIGN  (EMRPOLYLINETO, 4)
1826     TEST_FIELD_SIZE  (EMRPOLYLINETO, emr, 8)
1827     TEST_FIELD_ALIGN (EMRPOLYLINETO, emr, 4)
1828     TEST_FIELD_OFFSET(EMRPOLYLINETO, emr, 0)
1829     TEST_FIELD_SIZE  (EMRPOLYLINETO, rclBounds, 16)
1830     TEST_FIELD_ALIGN (EMRPOLYLINETO, rclBounds, 4)
1831     TEST_FIELD_OFFSET(EMRPOLYLINETO, rclBounds, 8)
1832     TEST_FIELD_SIZE  (EMRPOLYLINETO, cptl, 4)
1833     TEST_FIELD_ALIGN (EMRPOLYLINETO, cptl, 4)
1834     TEST_FIELD_OFFSET(EMRPOLYLINETO, cptl, 24)
1835     TEST_FIELD_SIZE  (EMRPOLYLINETO, aptl, 8)
1836     TEST_FIELD_ALIGN (EMRPOLYLINETO, aptl, 4)
1837     TEST_FIELD_OFFSET(EMRPOLYLINETO, aptl, 28)
1838 }
1839
1840 static void test_pack_EMRPOLYLINETO16(void)
1841 {
1842     /* EMRPOLYLINETO16 */
1843     TEST_TYPE_SIZE   (EMRPOLYLINETO16, 32)
1844     TEST_TYPE_ALIGN  (EMRPOLYLINETO16, 4)
1845     TEST_FIELD_SIZE  (EMRPOLYLINETO16, emr, 8)
1846     TEST_FIELD_ALIGN (EMRPOLYLINETO16, emr, 4)
1847     TEST_FIELD_OFFSET(EMRPOLYLINETO16, emr, 0)
1848     TEST_FIELD_SIZE  (EMRPOLYLINETO16, rclBounds, 16)
1849     TEST_FIELD_ALIGN (EMRPOLYLINETO16, rclBounds, 4)
1850     TEST_FIELD_OFFSET(EMRPOLYLINETO16, rclBounds, 8)
1851     TEST_FIELD_SIZE  (EMRPOLYLINETO16, cpts, 4)
1852     TEST_FIELD_ALIGN (EMRPOLYLINETO16, cpts, 4)
1853     TEST_FIELD_OFFSET(EMRPOLYLINETO16, cpts, 24)
1854     TEST_FIELD_SIZE  (EMRPOLYLINETO16, apts, 4)
1855     TEST_FIELD_ALIGN (EMRPOLYLINETO16, apts, 2)
1856     TEST_FIELD_OFFSET(EMRPOLYLINETO16, apts, 28)
1857 }
1858
1859 static void test_pack_EMRPOLYPOLYGON(void)
1860 {
1861     /* EMRPOLYPOLYGON */
1862     TEST_TYPE_SIZE   (EMRPOLYPOLYGON, 44)
1863     TEST_TYPE_ALIGN  (EMRPOLYPOLYGON, 4)
1864     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, emr, 8)
1865     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, emr, 4)
1866     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, emr, 0)
1867     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, rclBounds, 16)
1868     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, rclBounds, 4)
1869     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, rclBounds, 8)
1870     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, nPolys, 4)
1871     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, nPolys, 4)
1872     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, nPolys, 24)
1873     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, cptl, 4)
1874     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, cptl, 4)
1875     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, cptl, 28)
1876     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, aPolyCounts, 4)
1877     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, aPolyCounts, 4)
1878     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, aPolyCounts, 32)
1879     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, aptl, 8)
1880     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, aptl, 4)
1881     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, aptl, 36)
1882 }
1883
1884 static void test_pack_EMRPOLYPOLYGON16(void)
1885 {
1886     /* EMRPOLYPOLYGON16 */
1887     TEST_TYPE_SIZE   (EMRPOLYPOLYGON16, 40)
1888     TEST_TYPE_ALIGN  (EMRPOLYPOLYGON16, 4)
1889     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, emr, 8)
1890     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, emr, 4)
1891     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, emr, 0)
1892     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, rclBounds, 16)
1893     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, rclBounds, 4)
1894     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, rclBounds, 8)
1895     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, nPolys, 4)
1896     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, nPolys, 4)
1897     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, nPolys, 24)
1898     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, cpts, 4)
1899     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, cpts, 4)
1900     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, cpts, 28)
1901     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, aPolyCounts, 4)
1902     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, aPolyCounts, 4)
1903     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, aPolyCounts, 32)
1904     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, apts, 4)
1905     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, apts, 2)
1906     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, apts, 36)
1907 }
1908
1909 static void test_pack_EMRPOLYPOLYLINE(void)
1910 {
1911     /* EMRPOLYPOLYLINE */
1912     TEST_TYPE_SIZE   (EMRPOLYPOLYLINE, 44)
1913     TEST_TYPE_ALIGN  (EMRPOLYPOLYLINE, 4)
1914     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, emr, 8)
1915     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, emr, 4)
1916     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, emr, 0)
1917     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, rclBounds, 16)
1918     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, rclBounds, 4)
1919     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, rclBounds, 8)
1920     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, nPolys, 4)
1921     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, nPolys, 4)
1922     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, nPolys, 24)
1923     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, cptl, 4)
1924     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, cptl, 4)
1925     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, cptl, 28)
1926     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, aPolyCounts, 4)
1927     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, aPolyCounts, 4)
1928     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, aPolyCounts, 32)
1929     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, aptl, 8)
1930     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, aptl, 4)
1931     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, aptl, 36)
1932 }
1933
1934 static void test_pack_EMRPOLYPOLYLINE16(void)
1935 {
1936     /* EMRPOLYPOLYLINE16 */
1937     TEST_TYPE_SIZE   (EMRPOLYPOLYLINE16, 40)
1938     TEST_TYPE_ALIGN  (EMRPOLYPOLYLINE16, 4)
1939     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, emr, 8)
1940     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, emr, 4)
1941     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, emr, 0)
1942     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, rclBounds, 16)
1943     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, rclBounds, 4)
1944     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, rclBounds, 8)
1945     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, nPolys, 4)
1946     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, nPolys, 4)
1947     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, nPolys, 24)
1948     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, cpts, 4)
1949     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, cpts, 4)
1950     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, cpts, 28)
1951     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, aPolyCounts, 4)
1952     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, aPolyCounts, 4)
1953     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, aPolyCounts, 32)
1954     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, apts, 4)
1955     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, apts, 2)
1956     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, apts, 36)
1957 }
1958
1959 static void test_pack_EMRPOLYTEXTOUTA(void)
1960 {
1961     /* EMRPOLYTEXTOUTA */
1962     TEST_TYPE_SIZE   (EMRPOLYTEXTOUTA, 80)
1963     TEST_TYPE_ALIGN  (EMRPOLYTEXTOUTA, 4)
1964     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, emr, 8)
1965     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, emr, 4)
1966     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, emr, 0)
1967     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, rclBounds, 16)
1968     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, rclBounds, 4)
1969     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, rclBounds, 8)
1970     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, iGraphicsMode, 4)
1971     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, iGraphicsMode, 4)
1972     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, iGraphicsMode, 24)
1973     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, exScale, 4)
1974     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, exScale, 4)
1975     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, exScale, 28)
1976     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, eyScale, 4)
1977     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, eyScale, 4)
1978     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, eyScale, 32)
1979     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, cStrings, 4)
1980     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, cStrings, 4)
1981     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, cStrings, 36)
1982     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, aemrtext, 40)
1983     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, aemrtext, 4)
1984     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, aemrtext, 40)
1985 }
1986
1987 static void test_pack_EMRPOLYTEXTOUTW(void)
1988 {
1989     /* EMRPOLYTEXTOUTW */
1990     TEST_TYPE_SIZE   (EMRPOLYTEXTOUTW, 80)
1991     TEST_TYPE_ALIGN  (EMRPOLYTEXTOUTW, 4)
1992     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, emr, 8)
1993     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, emr, 4)
1994     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, emr, 0)
1995     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, rclBounds, 16)
1996     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, rclBounds, 4)
1997     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, rclBounds, 8)
1998     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, iGraphicsMode, 4)
1999     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, iGraphicsMode, 4)
2000     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, iGraphicsMode, 24)
2001     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, exScale, 4)
2002     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, exScale, 4)
2003     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, exScale, 28)
2004     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, eyScale, 4)
2005     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, eyScale, 4)
2006     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, eyScale, 32)
2007     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, cStrings, 4)
2008     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, cStrings, 4)
2009     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, cStrings, 36)
2010     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, aemrtext, 40)
2011     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, aemrtext, 4)
2012     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, aemrtext, 40)
2013 }
2014
2015 static void test_pack_EMRREALIZEPALETTE(void)
2016 {
2017     /* EMRREALIZEPALETTE */
2018     TEST_TYPE_SIZE   (EMRREALIZEPALETTE, 8)
2019     TEST_TYPE_ALIGN  (EMRREALIZEPALETTE, 4)
2020     TEST_FIELD_SIZE  (EMRREALIZEPALETTE, emr, 8)
2021     TEST_FIELD_ALIGN (EMRREALIZEPALETTE, emr, 4)
2022     TEST_FIELD_OFFSET(EMRREALIZEPALETTE, emr, 0)
2023 }
2024
2025 static void test_pack_EMRRECTANGLE(void)
2026 {
2027     /* EMRRECTANGLE */
2028     TEST_TYPE_SIZE   (EMRRECTANGLE, 24)
2029     TEST_TYPE_ALIGN  (EMRRECTANGLE, 4)
2030     TEST_FIELD_SIZE  (EMRRECTANGLE, emr, 8)
2031     TEST_FIELD_ALIGN (EMRRECTANGLE, emr, 4)
2032     TEST_FIELD_OFFSET(EMRRECTANGLE, emr, 0)
2033     TEST_FIELD_SIZE  (EMRRECTANGLE, rclBox, 16)
2034     TEST_FIELD_ALIGN (EMRRECTANGLE, rclBox, 4)
2035     TEST_FIELD_OFFSET(EMRRECTANGLE, rclBox, 8)
2036 }
2037
2038 static void test_pack_EMRRESIZEPALETTE(void)
2039 {
2040     /* EMRRESIZEPALETTE */
2041     TEST_TYPE_SIZE   (EMRRESIZEPALETTE, 16)
2042     TEST_TYPE_ALIGN  (EMRRESIZEPALETTE, 4)
2043     TEST_FIELD_SIZE  (EMRRESIZEPALETTE, emr, 8)
2044     TEST_FIELD_ALIGN (EMRRESIZEPALETTE, emr, 4)
2045     TEST_FIELD_OFFSET(EMRRESIZEPALETTE, emr, 0)
2046     TEST_FIELD_SIZE  (EMRRESIZEPALETTE, ihPal, 4)
2047     TEST_FIELD_ALIGN (EMRRESIZEPALETTE, ihPal, 4)
2048     TEST_FIELD_OFFSET(EMRRESIZEPALETTE, ihPal, 8)
2049     TEST_FIELD_SIZE  (EMRRESIZEPALETTE, cEntries, 4)
2050     TEST_FIELD_ALIGN (EMRRESIZEPALETTE, cEntries, 4)
2051     TEST_FIELD_OFFSET(EMRRESIZEPALETTE, cEntries, 12)
2052 }
2053
2054 static void test_pack_EMRRESTOREDC(void)
2055 {
2056     /* EMRRESTOREDC */
2057     TEST_TYPE_SIZE   (EMRRESTOREDC, 12)
2058     TEST_TYPE_ALIGN  (EMRRESTOREDC, 4)
2059     TEST_FIELD_SIZE  (EMRRESTOREDC, emr, 8)
2060     TEST_FIELD_ALIGN (EMRRESTOREDC, emr, 4)
2061     TEST_FIELD_OFFSET(EMRRESTOREDC, emr, 0)
2062     TEST_FIELD_SIZE  (EMRRESTOREDC, iRelative, 4)
2063     TEST_FIELD_ALIGN (EMRRESTOREDC, iRelative, 4)
2064     TEST_FIELD_OFFSET(EMRRESTOREDC, iRelative, 8)
2065 }
2066
2067 static void test_pack_EMRROUNDRECT(void)
2068 {
2069     /* EMRROUNDRECT */
2070     TEST_TYPE_SIZE   (EMRROUNDRECT, 32)
2071     TEST_TYPE_ALIGN  (EMRROUNDRECT, 4)
2072     TEST_FIELD_SIZE  (EMRROUNDRECT, emr, 8)
2073     TEST_FIELD_ALIGN (EMRROUNDRECT, emr, 4)
2074     TEST_FIELD_OFFSET(EMRROUNDRECT, emr, 0)
2075     TEST_FIELD_SIZE  (EMRROUNDRECT, rclBox, 16)
2076     TEST_FIELD_ALIGN (EMRROUNDRECT, rclBox, 4)
2077     TEST_FIELD_OFFSET(EMRROUNDRECT, rclBox, 8)
2078     TEST_FIELD_SIZE  (EMRROUNDRECT, szlCorner, 8)
2079     TEST_FIELD_ALIGN (EMRROUNDRECT, szlCorner, 4)
2080     TEST_FIELD_OFFSET(EMRROUNDRECT, szlCorner, 24)
2081 }
2082
2083 static void test_pack_EMRSAVEDC(void)
2084 {
2085     /* EMRSAVEDC */
2086     TEST_TYPE_SIZE   (EMRSAVEDC, 8)
2087     TEST_TYPE_ALIGN  (EMRSAVEDC, 4)
2088     TEST_FIELD_SIZE  (EMRSAVEDC, emr, 8)
2089     TEST_FIELD_ALIGN (EMRSAVEDC, emr, 4)
2090     TEST_FIELD_OFFSET(EMRSAVEDC, emr, 0)
2091 }
2092
2093 static void test_pack_EMRSCALEVIEWPORTEXTEX(void)
2094 {
2095     /* EMRSCALEVIEWPORTEXTEX */
2096     TEST_TYPE_SIZE   (EMRSCALEVIEWPORTEXTEX, 24)
2097     TEST_TYPE_ALIGN  (EMRSCALEVIEWPORTEXTEX, 4)
2098     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, emr, 8)
2099     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, emr, 4)
2100     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, emr, 0)
2101     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, xNum, 4)
2102     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, xNum, 4)
2103     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xNum, 8)
2104     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, xDenom, 4)
2105     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, xDenom, 4)
2106     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xDenom, 12)
2107     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, yNum, 4)
2108     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, yNum, 4)
2109     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yNum, 16)
2110     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, yDenom, 4)
2111     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, yDenom, 4)
2112     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yDenom, 20)
2113 }
2114
2115 static void test_pack_EMRSCALEWINDOWEXTEX(void)
2116 {
2117     /* EMRSCALEWINDOWEXTEX */
2118     TEST_TYPE_SIZE   (EMRSCALEWINDOWEXTEX, 24)
2119     TEST_TYPE_ALIGN  (EMRSCALEWINDOWEXTEX, 4)
2120     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, emr, 8)
2121     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, emr, 4)
2122     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, emr, 0)
2123     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, xNum, 4)
2124     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, xNum, 4)
2125     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, xNum, 8)
2126     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, xDenom, 4)
2127     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, xDenom, 4)
2128     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, xDenom, 12)
2129     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, yNum, 4)
2130     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, yNum, 4)
2131     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, yNum, 16)
2132     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, yDenom, 4)
2133     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, yDenom, 4)
2134     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, yDenom, 20)
2135 }
2136
2137 static void test_pack_EMRSELECTCLIPPATH(void)
2138 {
2139     /* EMRSELECTCLIPPATH */
2140     TEST_TYPE_SIZE   (EMRSELECTCLIPPATH, 12)
2141     TEST_TYPE_ALIGN  (EMRSELECTCLIPPATH, 4)
2142     TEST_FIELD_SIZE  (EMRSELECTCLIPPATH, emr, 8)
2143     TEST_FIELD_ALIGN (EMRSELECTCLIPPATH, emr, 4)
2144     TEST_FIELD_OFFSET(EMRSELECTCLIPPATH, emr, 0)
2145     TEST_FIELD_SIZE  (EMRSELECTCLIPPATH, iMode, 4)
2146     TEST_FIELD_ALIGN (EMRSELECTCLIPPATH, iMode, 4)
2147     TEST_FIELD_OFFSET(EMRSELECTCLIPPATH, iMode, 8)
2148 }
2149
2150 static void test_pack_EMRSELECTCOLORSPACE(void)
2151 {
2152     /* EMRSELECTCOLORSPACE */
2153     TEST_TYPE_SIZE   (EMRSELECTCOLORSPACE, 12)
2154     TEST_TYPE_ALIGN  (EMRSELECTCOLORSPACE, 4)
2155     TEST_FIELD_SIZE  (EMRSELECTCOLORSPACE, emr, 8)
2156     TEST_FIELD_ALIGN (EMRSELECTCOLORSPACE, emr, 4)
2157     TEST_FIELD_OFFSET(EMRSELECTCOLORSPACE, emr, 0)
2158     TEST_FIELD_SIZE  (EMRSELECTCOLORSPACE, ihCS, 4)
2159     TEST_FIELD_ALIGN (EMRSELECTCOLORSPACE, ihCS, 4)
2160     TEST_FIELD_OFFSET(EMRSELECTCOLORSPACE, ihCS, 8)
2161 }
2162
2163 static void test_pack_EMRSELECTOBJECT(void)
2164 {
2165     /* EMRSELECTOBJECT */
2166     TEST_TYPE_SIZE   (EMRSELECTOBJECT, 12)
2167     TEST_TYPE_ALIGN  (EMRSELECTOBJECT, 4)
2168     TEST_FIELD_SIZE  (EMRSELECTOBJECT, emr, 8)
2169     TEST_FIELD_ALIGN (EMRSELECTOBJECT, emr, 4)
2170     TEST_FIELD_OFFSET(EMRSELECTOBJECT, emr, 0)
2171     TEST_FIELD_SIZE  (EMRSELECTOBJECT, ihObject, 4)
2172     TEST_FIELD_ALIGN (EMRSELECTOBJECT, ihObject, 4)
2173     TEST_FIELD_OFFSET(EMRSELECTOBJECT, ihObject, 8)
2174 }
2175
2176 static void test_pack_EMRSELECTPALETTE(void)
2177 {
2178     /* EMRSELECTPALETTE */
2179     TEST_TYPE_SIZE   (EMRSELECTPALETTE, 12)
2180     TEST_TYPE_ALIGN  (EMRSELECTPALETTE, 4)
2181     TEST_FIELD_SIZE  (EMRSELECTPALETTE, emr, 8)
2182     TEST_FIELD_ALIGN (EMRSELECTPALETTE, emr, 4)
2183     TEST_FIELD_OFFSET(EMRSELECTPALETTE, emr, 0)
2184     TEST_FIELD_SIZE  (EMRSELECTPALETTE, ihPal, 4)
2185     TEST_FIELD_ALIGN (EMRSELECTPALETTE, ihPal, 4)
2186     TEST_FIELD_OFFSET(EMRSELECTPALETTE, ihPal, 8)
2187 }
2188
2189 static void test_pack_EMRSETARCDIRECTION(void)
2190 {
2191     /* EMRSETARCDIRECTION */
2192     TEST_TYPE_SIZE   (EMRSETARCDIRECTION, 12)
2193     TEST_TYPE_ALIGN  (EMRSETARCDIRECTION, 4)
2194     TEST_FIELD_SIZE  (EMRSETARCDIRECTION, emr, 8)
2195     TEST_FIELD_ALIGN (EMRSETARCDIRECTION, emr, 4)
2196     TEST_FIELD_OFFSET(EMRSETARCDIRECTION, emr, 0)
2197     TEST_FIELD_SIZE  (EMRSETARCDIRECTION, iArcDirection, 4)
2198     TEST_FIELD_ALIGN (EMRSETARCDIRECTION, iArcDirection, 4)
2199     TEST_FIELD_OFFSET(EMRSETARCDIRECTION, iArcDirection, 8)
2200 }
2201
2202 static void test_pack_EMRSETBKCOLOR(void)
2203 {
2204     /* EMRSETBKCOLOR */
2205     TEST_TYPE_SIZE   (EMRSETBKCOLOR, 12)
2206     TEST_TYPE_ALIGN  (EMRSETBKCOLOR, 4)
2207     TEST_FIELD_SIZE  (EMRSETBKCOLOR, emr, 8)
2208     TEST_FIELD_ALIGN (EMRSETBKCOLOR, emr, 4)
2209     TEST_FIELD_OFFSET(EMRSETBKCOLOR, emr, 0)
2210     TEST_FIELD_SIZE  (EMRSETBKCOLOR, crColor, 4)
2211     TEST_FIELD_ALIGN (EMRSETBKCOLOR, crColor, 4)
2212     TEST_FIELD_OFFSET(EMRSETBKCOLOR, crColor, 8)
2213 }
2214
2215 static void test_pack_EMRSETBKMODE(void)
2216 {
2217     /* EMRSETBKMODE */
2218     TEST_TYPE_SIZE   (EMRSETBKMODE, 12)
2219     TEST_TYPE_ALIGN  (EMRSETBKMODE, 4)
2220     TEST_FIELD_SIZE  (EMRSETBKMODE, emr, 8)
2221     TEST_FIELD_ALIGN (EMRSETBKMODE, emr, 4)
2222     TEST_FIELD_OFFSET(EMRSETBKMODE, emr, 0)
2223     TEST_FIELD_SIZE  (EMRSETBKMODE, iMode, 4)
2224     TEST_FIELD_ALIGN (EMRSETBKMODE, iMode, 4)
2225     TEST_FIELD_OFFSET(EMRSETBKMODE, iMode, 8)
2226 }
2227
2228 static void test_pack_EMRSETBRUSHORGEX(void)
2229 {
2230     /* EMRSETBRUSHORGEX */
2231     TEST_TYPE_SIZE   (EMRSETBRUSHORGEX, 16)
2232     TEST_TYPE_ALIGN  (EMRSETBRUSHORGEX, 4)
2233     TEST_FIELD_SIZE  (EMRSETBRUSHORGEX, emr, 8)
2234     TEST_FIELD_ALIGN (EMRSETBRUSHORGEX, emr, 4)
2235     TEST_FIELD_OFFSET(EMRSETBRUSHORGEX, emr, 0)
2236     TEST_FIELD_SIZE  (EMRSETBRUSHORGEX, ptlOrigin, 8)
2237     TEST_FIELD_ALIGN (EMRSETBRUSHORGEX, ptlOrigin, 4)
2238     TEST_FIELD_OFFSET(EMRSETBRUSHORGEX, ptlOrigin, 8)
2239 }
2240
2241 static void test_pack_EMRSETCOLORADJUSTMENT(void)
2242 {
2243     /* EMRSETCOLORADJUSTMENT */
2244     TEST_TYPE_SIZE   (EMRSETCOLORADJUSTMENT, 32)
2245     TEST_TYPE_ALIGN  (EMRSETCOLORADJUSTMENT, 4)
2246     TEST_FIELD_SIZE  (EMRSETCOLORADJUSTMENT, emr, 8)
2247     TEST_FIELD_ALIGN (EMRSETCOLORADJUSTMENT, emr, 4)
2248     TEST_FIELD_OFFSET(EMRSETCOLORADJUSTMENT, emr, 0)
2249     TEST_FIELD_SIZE  (EMRSETCOLORADJUSTMENT, ColorAdjustment, 24)
2250     TEST_FIELD_ALIGN (EMRSETCOLORADJUSTMENT, ColorAdjustment, 2)
2251     TEST_FIELD_OFFSET(EMRSETCOLORADJUSTMENT, ColorAdjustment, 8)
2252 }
2253
2254 static void test_pack_EMRSETCOLORSPACE(void)
2255 {
2256     /* EMRSETCOLORSPACE */
2257     TEST_TYPE_SIZE   (EMRSETCOLORSPACE, 12)
2258     TEST_TYPE_ALIGN  (EMRSETCOLORSPACE, 4)
2259     TEST_FIELD_SIZE  (EMRSETCOLORSPACE, emr, 8)
2260     TEST_FIELD_ALIGN (EMRSETCOLORSPACE, emr, 4)
2261     TEST_FIELD_OFFSET(EMRSETCOLORSPACE, emr, 0)
2262     TEST_FIELD_SIZE  (EMRSETCOLORSPACE, ihCS, 4)
2263     TEST_FIELD_ALIGN (EMRSETCOLORSPACE, ihCS, 4)
2264     TEST_FIELD_OFFSET(EMRSETCOLORSPACE, ihCS, 8)
2265 }
2266
2267 static void test_pack_EMRSETDIBITSTODEVICE(void)
2268 {
2269     /* EMRSETDIBITSTODEVICE */
2270     TEST_TYPE_SIZE   (EMRSETDIBITSTODEVICE, 76)
2271     TEST_TYPE_ALIGN  (EMRSETDIBITSTODEVICE, 4)
2272     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, emr, 8)
2273     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, emr, 4)
2274     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, emr, 0)
2275     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, rclBounds, 16)
2276     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, rclBounds, 4)
2277     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, rclBounds, 8)
2278     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, xDest, 4)
2279     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, xDest, 4)
2280     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, xDest, 24)
2281     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, yDest, 4)
2282     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, yDest, 4)
2283     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, yDest, 28)
2284     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, xSrc, 4)
2285     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, xSrc, 4)
2286     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, xSrc, 32)
2287     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, ySrc, 4)
2288     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, ySrc, 4)
2289     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, ySrc, 36)
2290     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cxSrc, 4)
2291     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cxSrc, 4)
2292     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cxSrc, 40)
2293     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cySrc, 4)
2294     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cySrc, 4)
2295     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cySrc, 44)
2296     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, offBmiSrc, 4)
2297     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, offBmiSrc, 4)
2298     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, offBmiSrc, 48)
2299     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cbBmiSrc, 4)
2300     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cbBmiSrc, 4)
2301     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cbBmiSrc, 52)
2302     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, offBitsSrc, 4)
2303     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, offBitsSrc, 4)
2304     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, offBitsSrc, 56)
2305     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cbBitsSrc, 4)
2306     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cbBitsSrc, 4)
2307     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cbBitsSrc, 60)
2308     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, iUsageSrc, 4)
2309     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, iUsageSrc, 4)
2310     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, iUsageSrc, 64)
2311     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, iStartScan, 4)
2312     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, iStartScan, 4)
2313     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, iStartScan, 68)
2314     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cScans, 4)
2315     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cScans, 4)
2316     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cScans, 72)
2317 }
2318
2319 static void test_pack_EMRSETICMMODE(void)
2320 {
2321     /* EMRSETICMMODE */
2322     TEST_TYPE_SIZE   (EMRSETICMMODE, 12)
2323     TEST_TYPE_ALIGN  (EMRSETICMMODE, 4)
2324     TEST_FIELD_SIZE  (EMRSETICMMODE, emr, 8)
2325     TEST_FIELD_ALIGN (EMRSETICMMODE, emr, 4)
2326     TEST_FIELD_OFFSET(EMRSETICMMODE, emr, 0)
2327     TEST_FIELD_SIZE  (EMRSETICMMODE, iMode, 4)
2328     TEST_FIELD_ALIGN (EMRSETICMMODE, iMode, 4)
2329     TEST_FIELD_OFFSET(EMRSETICMMODE, iMode, 8)
2330 }
2331
2332 static void test_pack_EMRSETLAYOUT(void)
2333 {
2334     /* EMRSETLAYOUT */
2335     TEST_TYPE_SIZE   (EMRSETLAYOUT, 12)
2336     TEST_TYPE_ALIGN  (EMRSETLAYOUT, 4)
2337     TEST_FIELD_SIZE  (EMRSETLAYOUT, emr, 8)
2338     TEST_FIELD_ALIGN (EMRSETLAYOUT, emr, 4)
2339     TEST_FIELD_OFFSET(EMRSETLAYOUT, emr, 0)
2340     TEST_FIELD_SIZE  (EMRSETLAYOUT, iMode, 4)
2341     TEST_FIELD_ALIGN (EMRSETLAYOUT, iMode, 4)
2342     TEST_FIELD_OFFSET(EMRSETLAYOUT, iMode, 8)
2343 }
2344
2345 static void test_pack_EMRSETMAPMODE(void)
2346 {
2347     /* EMRSETMAPMODE */
2348     TEST_TYPE_SIZE   (EMRSETMAPMODE, 12)
2349     TEST_TYPE_ALIGN  (EMRSETMAPMODE, 4)
2350     TEST_FIELD_SIZE  (EMRSETMAPMODE, emr, 8)
2351     TEST_FIELD_ALIGN (EMRSETMAPMODE, emr, 4)
2352     TEST_FIELD_OFFSET(EMRSETMAPMODE, emr, 0)
2353     TEST_FIELD_SIZE  (EMRSETMAPMODE, iMode, 4)
2354     TEST_FIELD_ALIGN (EMRSETMAPMODE, iMode, 4)
2355     TEST_FIELD_OFFSET(EMRSETMAPMODE, iMode, 8)
2356 }
2357
2358 static void test_pack_EMRSETMAPPERFLAGS(void)
2359 {
2360     /* EMRSETMAPPERFLAGS */
2361     TEST_TYPE_SIZE   (EMRSETMAPPERFLAGS, 12)
2362     TEST_TYPE_ALIGN  (EMRSETMAPPERFLAGS, 4)
2363     TEST_FIELD_SIZE  (EMRSETMAPPERFLAGS, emr, 8)
2364     TEST_FIELD_ALIGN (EMRSETMAPPERFLAGS, emr, 4)
2365     TEST_FIELD_OFFSET(EMRSETMAPPERFLAGS, emr, 0)
2366     TEST_FIELD_SIZE  (EMRSETMAPPERFLAGS, dwFlags, 4)
2367     TEST_FIELD_ALIGN (EMRSETMAPPERFLAGS, dwFlags, 4)
2368     TEST_FIELD_OFFSET(EMRSETMAPPERFLAGS, dwFlags, 8)
2369 }
2370
2371 static void test_pack_EMRSETMETARGN(void)
2372 {
2373     /* EMRSETMETARGN */
2374     TEST_TYPE_SIZE   (EMRSETMETARGN, 8)
2375     TEST_TYPE_ALIGN  (EMRSETMETARGN, 4)
2376     TEST_FIELD_SIZE  (EMRSETMETARGN, emr, 8)
2377     TEST_FIELD_ALIGN (EMRSETMETARGN, emr, 4)
2378     TEST_FIELD_OFFSET(EMRSETMETARGN, emr, 0)
2379 }
2380
2381 static void test_pack_EMRSETMITERLIMIT(void)
2382 {
2383     /* EMRSETMITERLIMIT */
2384     TEST_TYPE_SIZE   (EMRSETMITERLIMIT, 12)
2385     TEST_TYPE_ALIGN  (EMRSETMITERLIMIT, 4)
2386     TEST_FIELD_SIZE  (EMRSETMITERLIMIT, emr, 8)
2387     TEST_FIELD_ALIGN (EMRSETMITERLIMIT, emr, 4)
2388     TEST_FIELD_OFFSET(EMRSETMITERLIMIT, emr, 0)
2389     TEST_FIELD_SIZE  (EMRSETMITERLIMIT, eMiterLimit, 4)
2390     TEST_FIELD_ALIGN (EMRSETMITERLIMIT, eMiterLimit, 4)
2391     TEST_FIELD_OFFSET(EMRSETMITERLIMIT, eMiterLimit, 8)
2392 }
2393
2394 static void test_pack_EMRSETPIXELV(void)
2395 {
2396     /* EMRSETPIXELV */
2397     TEST_TYPE_SIZE   (EMRSETPIXELV, 20)
2398     TEST_TYPE_ALIGN  (EMRSETPIXELV, 4)
2399     TEST_FIELD_SIZE  (EMRSETPIXELV, emr, 8)
2400     TEST_FIELD_ALIGN (EMRSETPIXELV, emr, 4)
2401     TEST_FIELD_OFFSET(EMRSETPIXELV, emr, 0)
2402     TEST_FIELD_SIZE  (EMRSETPIXELV, ptlPixel, 8)
2403     TEST_FIELD_ALIGN (EMRSETPIXELV, ptlPixel, 4)
2404     TEST_FIELD_OFFSET(EMRSETPIXELV, ptlPixel, 8)
2405     TEST_FIELD_SIZE  (EMRSETPIXELV, crColor, 4)
2406     TEST_FIELD_ALIGN (EMRSETPIXELV, crColor, 4)
2407     TEST_FIELD_OFFSET(EMRSETPIXELV, crColor, 16)
2408 }
2409
2410 static void test_pack_EMRSETPOLYFILLMODE(void)
2411 {
2412     /* EMRSETPOLYFILLMODE */
2413     TEST_TYPE_SIZE   (EMRSETPOLYFILLMODE, 12)
2414     TEST_TYPE_ALIGN  (EMRSETPOLYFILLMODE, 4)
2415     TEST_FIELD_SIZE  (EMRSETPOLYFILLMODE, emr, 8)
2416     TEST_FIELD_ALIGN (EMRSETPOLYFILLMODE, emr, 4)
2417     TEST_FIELD_OFFSET(EMRSETPOLYFILLMODE, emr, 0)
2418     TEST_FIELD_SIZE  (EMRSETPOLYFILLMODE, iMode, 4)
2419     TEST_FIELD_ALIGN (EMRSETPOLYFILLMODE, iMode, 4)
2420     TEST_FIELD_OFFSET(EMRSETPOLYFILLMODE, iMode, 8)
2421 }
2422
2423 static void test_pack_EMRSETROP2(void)
2424 {
2425     /* EMRSETROP2 */
2426     TEST_TYPE_SIZE   (EMRSETROP2, 12)
2427     TEST_TYPE_ALIGN  (EMRSETROP2, 4)
2428     TEST_FIELD_SIZE  (EMRSETROP2, emr, 8)
2429     TEST_FIELD_ALIGN (EMRSETROP2, emr, 4)
2430     TEST_FIELD_OFFSET(EMRSETROP2, emr, 0)
2431     TEST_FIELD_SIZE  (EMRSETROP2, iMode, 4)
2432     TEST_FIELD_ALIGN (EMRSETROP2, iMode, 4)
2433     TEST_FIELD_OFFSET(EMRSETROP2, iMode, 8)
2434 }
2435
2436 static void test_pack_EMRSETSTRETCHBLTMODE(void)
2437 {
2438     /* EMRSETSTRETCHBLTMODE */
2439     TEST_TYPE_SIZE   (EMRSETSTRETCHBLTMODE, 12)
2440     TEST_TYPE_ALIGN  (EMRSETSTRETCHBLTMODE, 4)
2441     TEST_FIELD_SIZE  (EMRSETSTRETCHBLTMODE, emr, 8)
2442     TEST_FIELD_ALIGN (EMRSETSTRETCHBLTMODE, emr, 4)
2443     TEST_FIELD_OFFSET(EMRSETSTRETCHBLTMODE, emr, 0)
2444     TEST_FIELD_SIZE  (EMRSETSTRETCHBLTMODE, iMode, 4)
2445     TEST_FIELD_ALIGN (EMRSETSTRETCHBLTMODE, iMode, 4)
2446     TEST_FIELD_OFFSET(EMRSETSTRETCHBLTMODE, iMode, 8)
2447 }
2448
2449 static void test_pack_EMRSETTEXTALIGN(void)
2450 {
2451     /* EMRSETTEXTALIGN */
2452     TEST_TYPE_SIZE   (EMRSETTEXTALIGN, 12)
2453     TEST_TYPE_ALIGN  (EMRSETTEXTALIGN, 4)
2454     TEST_FIELD_SIZE  (EMRSETTEXTALIGN, emr, 8)
2455     TEST_FIELD_ALIGN (EMRSETTEXTALIGN, emr, 4)
2456     TEST_FIELD_OFFSET(EMRSETTEXTALIGN, emr, 0)
2457     TEST_FIELD_SIZE  (EMRSETTEXTALIGN, iMode, 4)
2458     TEST_FIELD_ALIGN (EMRSETTEXTALIGN, iMode, 4)
2459     TEST_FIELD_OFFSET(EMRSETTEXTALIGN, iMode, 8)
2460 }
2461
2462 static void test_pack_EMRSETTEXTCOLOR(void)
2463 {
2464     /* EMRSETTEXTCOLOR */
2465     TEST_TYPE_SIZE   (EMRSETTEXTCOLOR, 12)
2466     TEST_TYPE_ALIGN  (EMRSETTEXTCOLOR, 4)
2467     TEST_FIELD_SIZE  (EMRSETTEXTCOLOR, emr, 8)
2468     TEST_FIELD_ALIGN (EMRSETTEXTCOLOR, emr, 4)
2469     TEST_FIELD_OFFSET(EMRSETTEXTCOLOR, emr, 0)
2470     TEST_FIELD_SIZE  (EMRSETTEXTCOLOR, crColor, 4)
2471     TEST_FIELD_ALIGN (EMRSETTEXTCOLOR, crColor, 4)
2472     TEST_FIELD_OFFSET(EMRSETTEXTCOLOR, crColor, 8)
2473 }
2474
2475 static void test_pack_EMRSETVIEWPORTEXTEX(void)
2476 {
2477     /* EMRSETVIEWPORTEXTEX */
2478     TEST_TYPE_SIZE   (EMRSETVIEWPORTEXTEX, 16)
2479     TEST_TYPE_ALIGN  (EMRSETVIEWPORTEXTEX, 4)
2480     TEST_FIELD_SIZE  (EMRSETVIEWPORTEXTEX, emr, 8)
2481     TEST_FIELD_ALIGN (EMRSETVIEWPORTEXTEX, emr, 4)
2482     TEST_FIELD_OFFSET(EMRSETVIEWPORTEXTEX, emr, 0)
2483     TEST_FIELD_SIZE  (EMRSETVIEWPORTEXTEX, szlExtent, 8)
2484     TEST_FIELD_ALIGN (EMRSETVIEWPORTEXTEX, szlExtent, 4)
2485     TEST_FIELD_OFFSET(EMRSETVIEWPORTEXTEX, szlExtent, 8)
2486 }
2487
2488 static void test_pack_EMRSETVIEWPORTORGEX(void)
2489 {
2490     /* EMRSETVIEWPORTORGEX */
2491     TEST_TYPE_SIZE   (EMRSETVIEWPORTORGEX, 16)
2492     TEST_TYPE_ALIGN  (EMRSETVIEWPORTORGEX, 4)
2493     TEST_FIELD_SIZE  (EMRSETVIEWPORTORGEX, emr, 8)
2494     TEST_FIELD_ALIGN (EMRSETVIEWPORTORGEX, emr, 4)
2495     TEST_FIELD_OFFSET(EMRSETVIEWPORTORGEX, emr, 0)
2496     TEST_FIELD_SIZE  (EMRSETVIEWPORTORGEX, ptlOrigin, 8)
2497     TEST_FIELD_ALIGN (EMRSETVIEWPORTORGEX, ptlOrigin, 4)
2498     TEST_FIELD_OFFSET(EMRSETVIEWPORTORGEX, ptlOrigin, 8)
2499 }
2500
2501 static void test_pack_EMRSETWINDOWEXTEX(void)
2502 {
2503     /* EMRSETWINDOWEXTEX */
2504     TEST_TYPE_SIZE   (EMRSETWINDOWEXTEX, 16)
2505     TEST_TYPE_ALIGN  (EMRSETWINDOWEXTEX, 4)
2506     TEST_FIELD_SIZE  (EMRSETWINDOWEXTEX, emr, 8)
2507     TEST_FIELD_ALIGN (EMRSETWINDOWEXTEX, emr, 4)
2508     TEST_FIELD_OFFSET(EMRSETWINDOWEXTEX, emr, 0)
2509     TEST_FIELD_SIZE  (EMRSETWINDOWEXTEX, szlExtent, 8)
2510     TEST_FIELD_ALIGN (EMRSETWINDOWEXTEX, szlExtent, 4)
2511     TEST_FIELD_OFFSET(EMRSETWINDOWEXTEX, szlExtent, 8)
2512 }
2513
2514 static void test_pack_EMRSETWINDOWORGEX(void)
2515 {
2516     /* EMRSETWINDOWORGEX */
2517     TEST_TYPE_SIZE   (EMRSETWINDOWORGEX, 16)
2518     TEST_TYPE_ALIGN  (EMRSETWINDOWORGEX, 4)
2519     TEST_FIELD_SIZE  (EMRSETWINDOWORGEX, emr, 8)
2520     TEST_FIELD_ALIGN (EMRSETWINDOWORGEX, emr, 4)
2521     TEST_FIELD_OFFSET(EMRSETWINDOWORGEX, emr, 0)
2522     TEST_FIELD_SIZE  (EMRSETWINDOWORGEX, ptlOrigin, 8)
2523     TEST_FIELD_ALIGN (EMRSETWINDOWORGEX, ptlOrigin, 4)
2524     TEST_FIELD_OFFSET(EMRSETWINDOWORGEX, ptlOrigin, 8)
2525 }
2526
2527 static void test_pack_EMRSETWORLDTRANSFORM(void)
2528 {
2529     /* EMRSETWORLDTRANSFORM */
2530     TEST_TYPE_SIZE   (EMRSETWORLDTRANSFORM, 32)
2531     TEST_TYPE_ALIGN  (EMRSETWORLDTRANSFORM, 4)
2532     TEST_FIELD_SIZE  (EMRSETWORLDTRANSFORM, emr, 8)
2533     TEST_FIELD_ALIGN (EMRSETWORLDTRANSFORM, emr, 4)
2534     TEST_FIELD_OFFSET(EMRSETWORLDTRANSFORM, emr, 0)
2535     TEST_FIELD_SIZE  (EMRSETWORLDTRANSFORM, xform, 24)
2536     TEST_FIELD_ALIGN (EMRSETWORLDTRANSFORM, xform, 4)
2537     TEST_FIELD_OFFSET(EMRSETWORLDTRANSFORM, xform, 8)
2538 }
2539
2540 static void test_pack_EMRSTRETCHBLT(void)
2541 {
2542     /* EMRSTRETCHBLT */
2543     TEST_TYPE_SIZE   (EMRSTRETCHBLT, 108)
2544     TEST_TYPE_ALIGN  (EMRSTRETCHBLT, 4)
2545     TEST_FIELD_SIZE  (EMRSTRETCHBLT, emr, 8)
2546     TEST_FIELD_ALIGN (EMRSTRETCHBLT, emr, 4)
2547     TEST_FIELD_OFFSET(EMRSTRETCHBLT, emr, 0)
2548     TEST_FIELD_SIZE  (EMRSTRETCHBLT, rclBounds, 16)
2549     TEST_FIELD_ALIGN (EMRSTRETCHBLT, rclBounds, 4)
2550     TEST_FIELD_OFFSET(EMRSTRETCHBLT, rclBounds, 8)
2551     TEST_FIELD_SIZE  (EMRSTRETCHBLT, xDest, 4)
2552     TEST_FIELD_ALIGN (EMRSTRETCHBLT, xDest, 4)
2553     TEST_FIELD_OFFSET(EMRSTRETCHBLT, xDest, 24)
2554     TEST_FIELD_SIZE  (EMRSTRETCHBLT, yDest, 4)
2555     TEST_FIELD_ALIGN (EMRSTRETCHBLT, yDest, 4)
2556     TEST_FIELD_OFFSET(EMRSTRETCHBLT, yDest, 28)
2557     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cxDest, 4)
2558     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cxDest, 4)
2559     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cxDest, 32)
2560     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cyDest, 4)
2561     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cyDest, 4)
2562     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cyDest, 36)
2563     TEST_FIELD_SIZE  (EMRSTRETCHBLT, dwRop, 4)
2564     TEST_FIELD_ALIGN (EMRSTRETCHBLT, dwRop, 4)
2565     TEST_FIELD_OFFSET(EMRSTRETCHBLT, dwRop, 40)
2566     TEST_FIELD_SIZE  (EMRSTRETCHBLT, xSrc, 4)
2567     TEST_FIELD_ALIGN (EMRSTRETCHBLT, xSrc, 4)
2568     TEST_FIELD_OFFSET(EMRSTRETCHBLT, xSrc, 44)
2569     TEST_FIELD_SIZE  (EMRSTRETCHBLT, ySrc, 4)
2570     TEST_FIELD_ALIGN (EMRSTRETCHBLT, ySrc, 4)
2571     TEST_FIELD_OFFSET(EMRSTRETCHBLT, ySrc, 48)
2572     TEST_FIELD_SIZE  (EMRSTRETCHBLT, xformSrc, 24)
2573     TEST_FIELD_ALIGN (EMRSTRETCHBLT, xformSrc, 4)
2574     TEST_FIELD_OFFSET(EMRSTRETCHBLT, xformSrc, 52)
2575     TEST_FIELD_SIZE  (EMRSTRETCHBLT, crBkColorSrc, 4)
2576     TEST_FIELD_ALIGN (EMRSTRETCHBLT, crBkColorSrc, 4)
2577     TEST_FIELD_OFFSET(EMRSTRETCHBLT, crBkColorSrc, 76)
2578     TEST_FIELD_SIZE  (EMRSTRETCHBLT, iUsageSrc, 4)
2579     TEST_FIELD_ALIGN (EMRSTRETCHBLT, iUsageSrc, 4)
2580     TEST_FIELD_OFFSET(EMRSTRETCHBLT, iUsageSrc, 80)
2581     TEST_FIELD_SIZE  (EMRSTRETCHBLT, offBmiSrc, 4)
2582     TEST_FIELD_ALIGN (EMRSTRETCHBLT, offBmiSrc, 4)
2583     TEST_FIELD_OFFSET(EMRSTRETCHBLT, offBmiSrc, 84)
2584     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cbBmiSrc, 4)
2585     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cbBmiSrc, 4)
2586     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cbBmiSrc, 88)
2587     TEST_FIELD_SIZE  (EMRSTRETCHBLT, offBitsSrc, 4)
2588     TEST_FIELD_ALIGN (EMRSTRETCHBLT, offBitsSrc, 4)
2589     TEST_FIELD_OFFSET(EMRSTRETCHBLT, offBitsSrc, 92)
2590     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cbBitsSrc, 4)
2591     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cbBitsSrc, 4)
2592     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cbBitsSrc, 96)
2593     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cxSrc, 4)
2594     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cxSrc, 4)
2595     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cxSrc, 100)
2596     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cySrc, 4)
2597     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cySrc, 4)
2598     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cySrc, 104)
2599 }
2600
2601 static void test_pack_EMRSTRETCHDIBITS(void)
2602 {
2603     /* EMRSTRETCHDIBITS */
2604     TEST_TYPE_SIZE   (EMRSTRETCHDIBITS, 80)
2605     TEST_TYPE_ALIGN  (EMRSTRETCHDIBITS, 4)
2606     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, emr, 8)
2607     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, emr, 4)
2608     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, emr, 0)
2609     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, rclBounds, 16)
2610     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, rclBounds, 4)
2611     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, rclBounds, 8)
2612     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, xDest, 4)
2613     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, xDest, 4)
2614     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, xDest, 24)
2615     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, yDest, 4)
2616     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, yDest, 4)
2617     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, yDest, 28)
2618     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, xSrc, 4)
2619     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, xSrc, 4)
2620     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, xSrc, 32)
2621     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, ySrc, 4)
2622     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, ySrc, 4)
2623     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, ySrc, 36)
2624     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cxSrc, 4)
2625     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cxSrc, 4)
2626     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cxSrc, 40)
2627     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cySrc, 4)
2628     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cySrc, 4)
2629     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cySrc, 44)
2630     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, offBmiSrc, 4)
2631     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, offBmiSrc, 4)
2632     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, offBmiSrc, 48)
2633     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cbBmiSrc, 4)
2634     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cbBmiSrc, 4)
2635     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cbBmiSrc, 52)
2636     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, offBitsSrc, 4)
2637     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, offBitsSrc, 4)
2638     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, offBitsSrc, 56)
2639     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cbBitsSrc, 4)
2640     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cbBitsSrc, 4)
2641     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cbBitsSrc, 60)
2642     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, iUsageSrc, 4)
2643     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, iUsageSrc, 4)
2644     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, iUsageSrc, 64)
2645     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, dwRop, 4)
2646     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, dwRop, 4)
2647     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, dwRop, 68)
2648     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cxDest, 4)
2649     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cxDest, 4)
2650     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cxDest, 72)
2651     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cyDest, 4)
2652     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cyDest, 4)
2653     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cyDest, 76)
2654 }
2655
2656 static void test_pack_EMRSTROKEANDFILLPATH(void)
2657 {
2658     /* EMRSTROKEANDFILLPATH */
2659     TEST_TYPE_SIZE   (EMRSTROKEANDFILLPATH, 24)
2660     TEST_TYPE_ALIGN  (EMRSTROKEANDFILLPATH, 4)
2661     TEST_FIELD_SIZE  (EMRSTROKEANDFILLPATH, emr, 8)
2662     TEST_FIELD_ALIGN (EMRSTROKEANDFILLPATH, emr, 4)
2663     TEST_FIELD_OFFSET(EMRSTROKEANDFILLPATH, emr, 0)
2664     TEST_FIELD_SIZE  (EMRSTROKEANDFILLPATH, rclBounds, 16)
2665     TEST_FIELD_ALIGN (EMRSTROKEANDFILLPATH, rclBounds, 4)
2666     TEST_FIELD_OFFSET(EMRSTROKEANDFILLPATH, rclBounds, 8)
2667 }
2668
2669 static void test_pack_EMRSTROKEPATH(void)
2670 {
2671     /* EMRSTROKEPATH */
2672     TEST_TYPE_SIZE   (EMRSTROKEPATH, 24)
2673     TEST_TYPE_ALIGN  (EMRSTROKEPATH, 4)
2674     TEST_FIELD_SIZE  (EMRSTROKEPATH, emr, 8)
2675     TEST_FIELD_ALIGN (EMRSTROKEPATH, emr, 4)
2676     TEST_FIELD_OFFSET(EMRSTROKEPATH, emr, 0)
2677     TEST_FIELD_SIZE  (EMRSTROKEPATH, rclBounds, 16)
2678     TEST_FIELD_ALIGN (EMRSTROKEPATH, rclBounds, 4)
2679     TEST_FIELD_OFFSET(EMRSTROKEPATH, rclBounds, 8)
2680 }
2681
2682 static void test_pack_EMRTEXT(void)
2683 {
2684     /* EMRTEXT */
2685     TEST_TYPE_SIZE   (EMRTEXT, 40)
2686     TEST_TYPE_ALIGN  (EMRTEXT, 4)
2687     TEST_FIELD_SIZE  (EMRTEXT, ptlReference, 8)
2688     TEST_FIELD_ALIGN (EMRTEXT, ptlReference, 4)
2689     TEST_FIELD_OFFSET(EMRTEXT, ptlReference, 0)
2690     TEST_FIELD_SIZE  (EMRTEXT, nChars, 4)
2691     TEST_FIELD_ALIGN (EMRTEXT, nChars, 4)
2692     TEST_FIELD_OFFSET(EMRTEXT, nChars, 8)
2693     TEST_FIELD_SIZE  (EMRTEXT, offString, 4)
2694     TEST_FIELD_ALIGN (EMRTEXT, offString, 4)
2695     TEST_FIELD_OFFSET(EMRTEXT, offString, 12)
2696     TEST_FIELD_SIZE  (EMRTEXT, fOptions, 4)
2697     TEST_FIELD_ALIGN (EMRTEXT, fOptions, 4)
2698     TEST_FIELD_OFFSET(EMRTEXT, fOptions, 16)
2699     TEST_FIELD_SIZE  (EMRTEXT, rcl, 16)
2700     TEST_FIELD_ALIGN (EMRTEXT, rcl, 4)
2701     TEST_FIELD_OFFSET(EMRTEXT, rcl, 20)
2702     TEST_FIELD_SIZE  (EMRTEXT, offDx, 4)
2703     TEST_FIELD_ALIGN (EMRTEXT, offDx, 4)
2704     TEST_FIELD_OFFSET(EMRTEXT, offDx, 36)
2705 }
2706
2707 static void test_pack_EMRWIDENPATH(void)
2708 {
2709     /* EMRWIDENPATH */
2710     TEST_TYPE_SIZE   (EMRWIDENPATH, 8)
2711     TEST_TYPE_ALIGN  (EMRWIDENPATH, 4)
2712     TEST_FIELD_SIZE  (EMRWIDENPATH, emr, 8)
2713     TEST_FIELD_ALIGN (EMRWIDENPATH, emr, 4)
2714     TEST_FIELD_OFFSET(EMRWIDENPATH, emr, 0)
2715 }
2716
2717 static void test_pack_ENHMETAHEADER(void)
2718 {
2719     /* ENHMETAHEADER */
2720     TEST_TYPE_SIZE   (ENHMETAHEADER, 108)
2721     TEST_TYPE_ALIGN  (ENHMETAHEADER, 4)
2722     TEST_FIELD_SIZE  (ENHMETAHEADER, iType, 4)
2723     TEST_FIELD_ALIGN (ENHMETAHEADER, iType, 4)
2724     TEST_FIELD_OFFSET(ENHMETAHEADER, iType, 0)
2725     TEST_FIELD_SIZE  (ENHMETAHEADER, nSize, 4)
2726     TEST_FIELD_ALIGN (ENHMETAHEADER, nSize, 4)
2727     TEST_FIELD_OFFSET(ENHMETAHEADER, nSize, 4)
2728     TEST_FIELD_SIZE  (ENHMETAHEADER, rclBounds, 16)
2729     TEST_FIELD_ALIGN (ENHMETAHEADER, rclBounds, 4)
2730     TEST_FIELD_OFFSET(ENHMETAHEADER, rclBounds, 8)
2731     TEST_FIELD_SIZE  (ENHMETAHEADER, rclFrame, 16)
2732     TEST_FIELD_ALIGN (ENHMETAHEADER, rclFrame, 4)
2733     TEST_FIELD_OFFSET(ENHMETAHEADER, rclFrame, 24)
2734     TEST_FIELD_SIZE  (ENHMETAHEADER, dSignature, 4)
2735     TEST_FIELD_ALIGN (ENHMETAHEADER, dSignature, 4)
2736     TEST_FIELD_OFFSET(ENHMETAHEADER, dSignature, 40)
2737     TEST_FIELD_SIZE  (ENHMETAHEADER, nVersion, 4)
2738     TEST_FIELD_ALIGN (ENHMETAHEADER, nVersion, 4)
2739     TEST_FIELD_OFFSET(ENHMETAHEADER, nVersion, 44)
2740     TEST_FIELD_SIZE  (ENHMETAHEADER, nBytes, 4)
2741     TEST_FIELD_ALIGN (ENHMETAHEADER, nBytes, 4)
2742     TEST_FIELD_OFFSET(ENHMETAHEADER, nBytes, 48)
2743     TEST_FIELD_SIZE  (ENHMETAHEADER, nRecords, 4)
2744     TEST_FIELD_ALIGN (ENHMETAHEADER, nRecords, 4)
2745     TEST_FIELD_OFFSET(ENHMETAHEADER, nRecords, 52)
2746     TEST_FIELD_SIZE  (ENHMETAHEADER, nHandles, 2)
2747     TEST_FIELD_ALIGN (ENHMETAHEADER, nHandles, 2)
2748     TEST_FIELD_OFFSET(ENHMETAHEADER, nHandles, 56)
2749     TEST_FIELD_SIZE  (ENHMETAHEADER, sReserved, 2)
2750     TEST_FIELD_ALIGN (ENHMETAHEADER, sReserved, 2)
2751     TEST_FIELD_OFFSET(ENHMETAHEADER, sReserved, 58)
2752     TEST_FIELD_SIZE  (ENHMETAHEADER, nDescription, 4)
2753     TEST_FIELD_ALIGN (ENHMETAHEADER, nDescription, 4)
2754     TEST_FIELD_OFFSET(ENHMETAHEADER, nDescription, 60)
2755     TEST_FIELD_SIZE  (ENHMETAHEADER, offDescription, 4)
2756     TEST_FIELD_ALIGN (ENHMETAHEADER, offDescription, 4)
2757     TEST_FIELD_OFFSET(ENHMETAHEADER, offDescription, 64)
2758     TEST_FIELD_SIZE  (ENHMETAHEADER, nPalEntries, 4)
2759     TEST_FIELD_ALIGN (ENHMETAHEADER, nPalEntries, 4)
2760     TEST_FIELD_OFFSET(ENHMETAHEADER, nPalEntries, 68)
2761     TEST_FIELD_SIZE  (ENHMETAHEADER, szlDevice, 8)
2762     TEST_FIELD_ALIGN (ENHMETAHEADER, szlDevice, 4)
2763     TEST_FIELD_OFFSET(ENHMETAHEADER, szlDevice, 72)
2764     TEST_FIELD_SIZE  (ENHMETAHEADER, szlMillimeters, 8)
2765     TEST_FIELD_ALIGN (ENHMETAHEADER, szlMillimeters, 4)
2766     TEST_FIELD_OFFSET(ENHMETAHEADER, szlMillimeters, 80)
2767     TEST_FIELD_SIZE  (ENHMETAHEADER, cbPixelFormat, 4)
2768     TEST_FIELD_ALIGN (ENHMETAHEADER, cbPixelFormat, 4)
2769     TEST_FIELD_OFFSET(ENHMETAHEADER, cbPixelFormat, 88)
2770     TEST_FIELD_SIZE  (ENHMETAHEADER, offPixelFormat, 4)
2771     TEST_FIELD_ALIGN (ENHMETAHEADER, offPixelFormat, 4)
2772     TEST_FIELD_OFFSET(ENHMETAHEADER, offPixelFormat, 92)
2773     TEST_FIELD_SIZE  (ENHMETAHEADER, bOpenGL, 4)
2774     TEST_FIELD_ALIGN (ENHMETAHEADER, bOpenGL, 4)
2775     TEST_FIELD_OFFSET(ENHMETAHEADER, bOpenGL, 96)
2776     TEST_FIELD_SIZE  (ENHMETAHEADER, szlMicrometers, 8)
2777     TEST_FIELD_ALIGN (ENHMETAHEADER, szlMicrometers, 4)
2778     TEST_FIELD_OFFSET(ENHMETAHEADER, szlMicrometers, 100)
2779 }
2780
2781 static void test_pack_ENHMETARECORD(void)
2782 {
2783     /* ENHMETARECORD */
2784     TEST_TYPE_SIZE   (ENHMETARECORD, 12)
2785     TEST_TYPE_ALIGN  (ENHMETARECORD, 4)
2786     TEST_FIELD_SIZE  (ENHMETARECORD, iType, 4)
2787     TEST_FIELD_ALIGN (ENHMETARECORD, iType, 4)
2788     TEST_FIELD_OFFSET(ENHMETARECORD, iType, 0)
2789     TEST_FIELD_SIZE  (ENHMETARECORD, nSize, 4)
2790     TEST_FIELD_ALIGN (ENHMETARECORD, nSize, 4)
2791     TEST_FIELD_OFFSET(ENHMETARECORD, nSize, 4)
2792     TEST_FIELD_SIZE  (ENHMETARECORD, dParm, 4)
2793     TEST_FIELD_ALIGN (ENHMETARECORD, dParm, 4)
2794     TEST_FIELD_OFFSET(ENHMETARECORD, dParm, 8)
2795 }
2796
2797 static void test_pack_ENHMFENUMPROC(void)
2798 {
2799     /* ENHMFENUMPROC */
2800     TEST_TYPE_SIZE   (ENHMFENUMPROC, 8)
2801     TEST_TYPE_ALIGN  (ENHMFENUMPROC, 8)
2802 }
2803
2804 static void test_pack_ENUMLOGFONTA(void)
2805 {
2806     /* ENUMLOGFONTA */
2807     TEST_TYPE_SIZE   (ENUMLOGFONTA, 156)
2808     TEST_TYPE_ALIGN  (ENUMLOGFONTA, 4)
2809     TEST_FIELD_SIZE  (ENUMLOGFONTA, elfLogFont, 60)
2810     TEST_FIELD_ALIGN (ENUMLOGFONTA, elfLogFont, 4)
2811     TEST_FIELD_OFFSET(ENUMLOGFONTA, elfLogFont, 0)
2812     TEST_FIELD_SIZE  (ENUMLOGFONTA, elfFullName, 64)
2813     TEST_FIELD_ALIGN (ENUMLOGFONTA, elfFullName, 1)
2814     TEST_FIELD_OFFSET(ENUMLOGFONTA, elfFullName, 60)
2815     TEST_FIELD_SIZE  (ENUMLOGFONTA, elfStyle, 32)
2816     TEST_FIELD_ALIGN (ENUMLOGFONTA, elfStyle, 1)
2817     TEST_FIELD_OFFSET(ENUMLOGFONTA, elfStyle, 124)
2818 }
2819
2820 static void test_pack_ENUMLOGFONTEXA(void)
2821 {
2822     /* ENUMLOGFONTEXA */
2823     TEST_TYPE_SIZE   (ENUMLOGFONTEXA, 188)
2824     TEST_TYPE_ALIGN  (ENUMLOGFONTEXA, 4)
2825     TEST_FIELD_SIZE  (ENUMLOGFONTEXA, elfLogFont, 60)
2826     TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfLogFont, 4)
2827     TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfLogFont, 0)
2828     TEST_FIELD_SIZE  (ENUMLOGFONTEXA, elfFullName, 64)
2829     TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfFullName, 1)
2830     TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfFullName, 60)
2831     TEST_FIELD_SIZE  (ENUMLOGFONTEXA, elfStyle, 32)
2832     TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfStyle, 1)
2833     TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfStyle, 124)
2834     TEST_FIELD_SIZE  (ENUMLOGFONTEXA, elfScript, 32)
2835     TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfScript, 1)
2836     TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfScript, 156)
2837 }
2838
2839 static void test_pack_ENUMLOGFONTEXW(void)
2840 {
2841     /* ENUMLOGFONTEXW */
2842     TEST_TYPE_SIZE   (ENUMLOGFONTEXW, 348)
2843     TEST_TYPE_ALIGN  (ENUMLOGFONTEXW, 4)
2844     TEST_FIELD_SIZE  (ENUMLOGFONTEXW, elfLogFont, 92)
2845     TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfLogFont, 4)
2846     TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfLogFont, 0)
2847     TEST_FIELD_SIZE  (ENUMLOGFONTEXW, elfFullName, 128)
2848     TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfFullName, 2)
2849     TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfFullName, 92)
2850     TEST_FIELD_SIZE  (ENUMLOGFONTEXW, elfStyle, 64)
2851     TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfStyle, 2)
2852     TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfStyle, 220)
2853     TEST_FIELD_SIZE  (ENUMLOGFONTEXW, elfScript, 64)
2854     TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfScript, 2)
2855     TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfScript, 284)
2856 }
2857
2858 static void test_pack_ENUMLOGFONTW(void)
2859 {
2860     /* ENUMLOGFONTW */
2861     TEST_TYPE_SIZE   (ENUMLOGFONTW, 284)
2862     TEST_TYPE_ALIGN  (ENUMLOGFONTW, 4)
2863     TEST_FIELD_SIZE  (ENUMLOGFONTW, elfLogFont, 92)
2864     TEST_FIELD_ALIGN (ENUMLOGFONTW, elfLogFont, 4)
2865     TEST_FIELD_OFFSET(ENUMLOGFONTW, elfLogFont, 0)
2866     TEST_FIELD_SIZE  (ENUMLOGFONTW, elfFullName, 128)
2867     TEST_FIELD_ALIGN (ENUMLOGFONTW, elfFullName, 2)
2868     TEST_FIELD_OFFSET(ENUMLOGFONTW, elfFullName, 92)
2869     TEST_FIELD_SIZE  (ENUMLOGFONTW, elfStyle, 64)
2870     TEST_FIELD_ALIGN (ENUMLOGFONTW, elfStyle, 2)
2871     TEST_FIELD_OFFSET(ENUMLOGFONTW, elfStyle, 220)
2872 }
2873
2874 static void test_pack_EXTLOGFONTA(void)
2875 {
2876     /* EXTLOGFONTA */
2877     TEST_TYPE_SIZE   (EXTLOGFONTA, 192)
2878     TEST_TYPE_ALIGN  (EXTLOGFONTA, 4)
2879     TEST_FIELD_SIZE  (EXTLOGFONTA, elfLogFont, 60)
2880     TEST_FIELD_ALIGN (EXTLOGFONTA, elfLogFont, 4)
2881     TEST_FIELD_OFFSET(EXTLOGFONTA, elfLogFont, 0)
2882     TEST_FIELD_SIZE  (EXTLOGFONTA, elfFullName, 64)
2883     TEST_FIELD_ALIGN (EXTLOGFONTA, elfFullName, 1)
2884     TEST_FIELD_OFFSET(EXTLOGFONTA, elfFullName, 60)
2885     TEST_FIELD_SIZE  (EXTLOGFONTA, elfStyle, 32)
2886     TEST_FIELD_ALIGN (EXTLOGFONTA, elfStyle, 1)
2887     TEST_FIELD_OFFSET(EXTLOGFONTA, elfStyle, 124)
2888     TEST_FIELD_SIZE  (EXTLOGFONTA, elfVersion, 4)
2889     TEST_FIELD_ALIGN (EXTLOGFONTA, elfVersion, 4)
2890     TEST_FIELD_OFFSET(EXTLOGFONTA, elfVersion, 156)
2891     TEST_FIELD_SIZE  (EXTLOGFONTA, elfStyleSize, 4)
2892     TEST_FIELD_ALIGN (EXTLOGFONTA, elfStyleSize, 4)
2893     TEST_FIELD_OFFSET(EXTLOGFONTA, elfStyleSize, 160)
2894     TEST_FIELD_SIZE  (EXTLOGFONTA, elfMatch, 4)
2895     TEST_FIELD_ALIGN (EXTLOGFONTA, elfMatch, 4)
2896     TEST_FIELD_OFFSET(EXTLOGFONTA, elfMatch, 164)
2897     TEST_FIELD_SIZE  (EXTLOGFONTA, elfReserved, 4)
2898     TEST_FIELD_ALIGN (EXTLOGFONTA, elfReserved, 4)
2899     TEST_FIELD_OFFSET(EXTLOGFONTA, elfReserved, 168)
2900     TEST_FIELD_SIZE  (EXTLOGFONTA, elfVendorId, 4)
2901     TEST_FIELD_ALIGN (EXTLOGFONTA, elfVendorId, 1)
2902     TEST_FIELD_OFFSET(EXTLOGFONTA, elfVendorId, 172)
2903     TEST_FIELD_SIZE  (EXTLOGFONTA, elfCulture, 4)
2904     TEST_FIELD_ALIGN (EXTLOGFONTA, elfCulture, 4)
2905     TEST_FIELD_OFFSET(EXTLOGFONTA, elfCulture, 176)
2906     TEST_FIELD_SIZE  (EXTLOGFONTA, elfPanose, 10)
2907     TEST_FIELD_ALIGN (EXTLOGFONTA, elfPanose, 1)
2908     TEST_FIELD_OFFSET(EXTLOGFONTA, elfPanose, 180)
2909 }
2910
2911 static void test_pack_EXTLOGFONTW(void)
2912 {
2913     /* EXTLOGFONTW */
2914     TEST_TYPE_SIZE   (EXTLOGFONTW, 320)
2915     TEST_TYPE_ALIGN  (EXTLOGFONTW, 4)
2916     TEST_FIELD_SIZE  (EXTLOGFONTW, elfLogFont, 92)
2917     TEST_FIELD_ALIGN (EXTLOGFONTW, elfLogFont, 4)
2918     TEST_FIELD_OFFSET(EXTLOGFONTW, elfLogFont, 0)
2919     TEST_FIELD_SIZE  (EXTLOGFONTW, elfFullName, 128)
2920     TEST_FIELD_ALIGN (EXTLOGFONTW, elfFullName, 2)
2921     TEST_FIELD_OFFSET(EXTLOGFONTW, elfFullName, 92)
2922     TEST_FIELD_SIZE  (EXTLOGFONTW, elfStyle, 64)
2923     TEST_FIELD_ALIGN (EXTLOGFONTW, elfStyle, 2)
2924     TEST_FIELD_OFFSET(EXTLOGFONTW, elfStyle, 220)
2925     TEST_FIELD_SIZE  (EXTLOGFONTW, elfVersion, 4)
2926     TEST_FIELD_ALIGN (EXTLOGFONTW, elfVersion, 4)
2927     TEST_FIELD_OFFSET(EXTLOGFONTW, elfVersion, 284)
2928     TEST_FIELD_SIZE  (EXTLOGFONTW, elfStyleSize, 4)
2929     TEST_FIELD_ALIGN (EXTLOGFONTW, elfStyleSize, 4)
2930     TEST_FIELD_OFFSET(EXTLOGFONTW, elfStyleSize, 288)
2931     TEST_FIELD_SIZE  (EXTLOGFONTW, elfMatch, 4)
2932     TEST_FIELD_ALIGN (EXTLOGFONTW, elfMatch, 4)
2933     TEST_FIELD_OFFSET(EXTLOGFONTW, elfMatch, 292)
2934     TEST_FIELD_SIZE  (EXTLOGFONTW, elfReserved, 4)
2935     TEST_FIELD_ALIGN (EXTLOGFONTW, elfReserved, 4)
2936     TEST_FIELD_OFFSET(EXTLOGFONTW, elfReserved, 296)
2937     TEST_FIELD_SIZE  (EXTLOGFONTW, elfVendorId, 4)
2938     TEST_FIELD_ALIGN (EXTLOGFONTW, elfVendorId, 1)
2939     TEST_FIELD_OFFSET(EXTLOGFONTW, elfVendorId, 300)
2940     TEST_FIELD_SIZE  (EXTLOGFONTW, elfCulture, 4)
2941     TEST_FIELD_ALIGN (EXTLOGFONTW, elfCulture, 4)
2942     TEST_FIELD_OFFSET(EXTLOGFONTW, elfCulture, 304)
2943     TEST_FIELD_SIZE  (EXTLOGFONTW, elfPanose, 10)
2944     TEST_FIELD_ALIGN (EXTLOGFONTW, elfPanose, 1)
2945     TEST_FIELD_OFFSET(EXTLOGFONTW, elfPanose, 308)
2946 }
2947
2948 static void test_pack_EXTLOGPEN(void)
2949 {
2950     /* EXTLOGPEN */
2951     TEST_TYPE_SIZE   (EXTLOGPEN, 32)
2952     TEST_TYPE_ALIGN  (EXTLOGPEN, 8)
2953     TEST_FIELD_SIZE  (EXTLOGPEN, elpPenStyle, 4)
2954     TEST_FIELD_ALIGN (EXTLOGPEN, elpPenStyle, 4)
2955     TEST_FIELD_OFFSET(EXTLOGPEN, elpPenStyle, 0)
2956     TEST_FIELD_SIZE  (EXTLOGPEN, elpWidth, 4)
2957     TEST_FIELD_ALIGN (EXTLOGPEN, elpWidth, 4)
2958     TEST_FIELD_OFFSET(EXTLOGPEN, elpWidth, 4)
2959     TEST_FIELD_SIZE  (EXTLOGPEN, elpBrushStyle, 4)
2960     TEST_FIELD_ALIGN (EXTLOGPEN, elpBrushStyle, 4)
2961     TEST_FIELD_OFFSET(EXTLOGPEN, elpBrushStyle, 8)
2962     TEST_FIELD_SIZE  (EXTLOGPEN, elpColor, 4)
2963     TEST_FIELD_ALIGN (EXTLOGPEN, elpColor, 4)
2964     TEST_FIELD_OFFSET(EXTLOGPEN, elpColor, 12)
2965     TEST_FIELD_SIZE  (EXTLOGPEN, elpHatch, 8)
2966     TEST_FIELD_ALIGN (EXTLOGPEN, elpHatch, 8)
2967     TEST_FIELD_OFFSET(EXTLOGPEN, elpHatch, 16)
2968     TEST_FIELD_SIZE  (EXTLOGPEN, elpNumEntries, 4)
2969     TEST_FIELD_ALIGN (EXTLOGPEN, elpNumEntries, 4)
2970     TEST_FIELD_OFFSET(EXTLOGPEN, elpNumEntries, 24)
2971     TEST_FIELD_SIZE  (EXTLOGPEN, elpStyleEntry, 4)
2972     TEST_FIELD_ALIGN (EXTLOGPEN, elpStyleEntry, 4)
2973     TEST_FIELD_OFFSET(EXTLOGPEN, elpStyleEntry, 28)
2974 }
2975
2976 static void test_pack_FIXED(void)
2977 {
2978     /* FIXED */
2979     TEST_TYPE_SIZE   (FIXED, 4)
2980     TEST_TYPE_ALIGN  (FIXED, 2)
2981     TEST_FIELD_SIZE  (FIXED, fract, 2)
2982     TEST_FIELD_ALIGN (FIXED, fract, 2)
2983     TEST_FIELD_OFFSET(FIXED, fract, 0)
2984     TEST_FIELD_SIZE  (FIXED, value, 2)
2985     TEST_FIELD_ALIGN (FIXED, value, 2)
2986     TEST_FIELD_OFFSET(FIXED, value, 2)
2987 }
2988
2989 static void test_pack_FONTENUMPROCA(void)
2990 {
2991     /* FONTENUMPROCA */
2992     TEST_TYPE_SIZE   (FONTENUMPROCA, 8)
2993     TEST_TYPE_ALIGN  (FONTENUMPROCA, 8)
2994 }
2995
2996 static void test_pack_FONTENUMPROCW(void)
2997 {
2998     /* FONTENUMPROCW */
2999     TEST_TYPE_SIZE   (FONTENUMPROCW, 8)
3000     TEST_TYPE_ALIGN  (FONTENUMPROCW, 8)
3001 }
3002
3003 static void test_pack_FONTSIGNATURE(void)
3004 {
3005     /* FONTSIGNATURE */
3006     TEST_TYPE_SIZE   (FONTSIGNATURE, 24)
3007     TEST_TYPE_ALIGN  (FONTSIGNATURE, 4)
3008     TEST_FIELD_SIZE  (FONTSIGNATURE, fsUsb, 16)
3009     TEST_FIELD_ALIGN (FONTSIGNATURE, fsUsb, 4)
3010     TEST_FIELD_OFFSET(FONTSIGNATURE, fsUsb, 0)
3011     TEST_FIELD_SIZE  (FONTSIGNATURE, fsCsb, 8)
3012     TEST_FIELD_ALIGN (FONTSIGNATURE, fsCsb, 4)
3013     TEST_FIELD_OFFSET(FONTSIGNATURE, fsCsb, 16)
3014 }
3015
3016 static void test_pack_FXPT16DOT16(void)
3017 {
3018     /* FXPT16DOT16 */
3019     TEST_TYPE_SIZE   (FXPT16DOT16, 4)
3020     TEST_TYPE_ALIGN  (FXPT16DOT16, 4)
3021 }
3022
3023 static void test_pack_FXPT2DOT30(void)
3024 {
3025     /* FXPT2DOT30 */
3026     TEST_TYPE_SIZE   (FXPT2DOT30, 4)
3027     TEST_TYPE_ALIGN  (FXPT2DOT30, 4)
3028 }
3029
3030 static void test_pack_GCP_RESULTSA(void)
3031 {
3032     /* GCP_RESULTSA */
3033     TEST_TYPE_SIZE   (GCP_RESULTSA, 64)
3034     TEST_TYPE_ALIGN  (GCP_RESULTSA, 8)
3035     TEST_FIELD_SIZE  (GCP_RESULTSA, lStructSize, 4)
3036     TEST_FIELD_ALIGN (GCP_RESULTSA, lStructSize, 4)
3037     TEST_FIELD_OFFSET(GCP_RESULTSA, lStructSize, 0)
3038     TEST_FIELD_SIZE  (GCP_RESULTSA, lpOutString, 8)
3039     TEST_FIELD_ALIGN (GCP_RESULTSA, lpOutString, 8)
3040     TEST_FIELD_OFFSET(GCP_RESULTSA, lpOutString, 8)
3041     TEST_FIELD_SIZE  (GCP_RESULTSA, lpOrder, 8)
3042     TEST_FIELD_ALIGN (GCP_RESULTSA, lpOrder, 8)
3043     TEST_FIELD_OFFSET(GCP_RESULTSA, lpOrder, 16)
3044     TEST_FIELD_SIZE  (GCP_RESULTSA, lpDx, 8)
3045     TEST_FIELD_ALIGN (GCP_RESULTSA, lpDx, 8)
3046     TEST_FIELD_OFFSET(GCP_RESULTSA, lpDx, 24)
3047     TEST_FIELD_SIZE  (GCP_RESULTSA, lpCaretPos, 8)
3048     TEST_FIELD_ALIGN (GCP_RESULTSA, lpCaretPos, 8)
3049     TEST_FIELD_OFFSET(GCP_RESULTSA, lpCaretPos, 32)
3050     TEST_FIELD_SIZE  (GCP_RESULTSA, lpClass, 8)
3051     TEST_FIELD_ALIGN (GCP_RESULTSA, lpClass, 8)
3052     TEST_FIELD_OFFSET(GCP_RESULTSA, lpClass, 40)
3053     TEST_FIELD_SIZE  (GCP_RESULTSA, lpGlyphs, 8)
3054     TEST_FIELD_ALIGN (GCP_RESULTSA, lpGlyphs, 8)
3055     TEST_FIELD_OFFSET(GCP_RESULTSA, lpGlyphs, 48)
3056     TEST_FIELD_SIZE  (GCP_RESULTSA, nGlyphs, 4)
3057     TEST_FIELD_ALIGN (GCP_RESULTSA, nGlyphs, 4)
3058     TEST_FIELD_OFFSET(GCP_RESULTSA, nGlyphs, 56)
3059     TEST_FIELD_SIZE  (GCP_RESULTSA, nMaxFit, 4)
3060     TEST_FIELD_ALIGN (GCP_RESULTSA, nMaxFit, 4)
3061     TEST_FIELD_OFFSET(GCP_RESULTSA, nMaxFit, 60)
3062 }
3063
3064 static void test_pack_GCP_RESULTSW(void)
3065 {
3066     /* GCP_RESULTSW */
3067     TEST_TYPE_SIZE   (GCP_RESULTSW, 64)
3068     TEST_TYPE_ALIGN  (GCP_RESULTSW, 8)
3069     TEST_FIELD_SIZE  (GCP_RESULTSW, lStructSize, 4)
3070     TEST_FIELD_ALIGN (GCP_RESULTSW, lStructSize, 4)
3071     TEST_FIELD_OFFSET(GCP_RESULTSW, lStructSize, 0)
3072     TEST_FIELD_SIZE  (GCP_RESULTSW, lpOutString, 8)
3073     TEST_FIELD_ALIGN (GCP_RESULTSW, lpOutString, 8)
3074     TEST_FIELD_OFFSET(GCP_RESULTSW, lpOutString, 8)
3075     TEST_FIELD_SIZE  (GCP_RESULTSW, lpOrder, 8)
3076     TEST_FIELD_ALIGN (GCP_RESULTSW, lpOrder, 8)
3077     TEST_FIELD_OFFSET(GCP_RESULTSW, lpOrder, 16)
3078     TEST_FIELD_SIZE  (GCP_RESULTSW, lpDx, 8)
3079     TEST_FIELD_ALIGN (GCP_RESULTSW, lpDx, 8)
3080     TEST_FIELD_OFFSET(GCP_RESULTSW, lpDx, 24)
3081     TEST_FIELD_SIZE  (GCP_RESULTSW, lpCaretPos, 8)
3082     TEST_FIELD_ALIGN (GCP_RESULTSW, lpCaretPos, 8)
3083     TEST_FIELD_OFFSET(GCP_RESULTSW, lpCaretPos, 32)
3084     TEST_FIELD_SIZE  (GCP_RESULTSW, lpClass, 8)
3085     TEST_FIELD_ALIGN (GCP_RESULTSW, lpClass, 8)
3086     TEST_FIELD_OFFSET(GCP_RESULTSW, lpClass, 40)
3087     TEST_FIELD_SIZE  (GCP_RESULTSW, lpGlyphs, 8)
3088     TEST_FIELD_ALIGN (GCP_RESULTSW, lpGlyphs, 8)
3089     TEST_FIELD_OFFSET(GCP_RESULTSW, lpGlyphs, 48)
3090     TEST_FIELD_SIZE  (GCP_RESULTSW, nGlyphs, 4)
3091     TEST_FIELD_ALIGN (GCP_RESULTSW, nGlyphs, 4)
3092     TEST_FIELD_OFFSET(GCP_RESULTSW, nGlyphs, 56)
3093     TEST_FIELD_SIZE  (GCP_RESULTSW, nMaxFit, 4)
3094     TEST_FIELD_ALIGN (GCP_RESULTSW, nMaxFit, 4)
3095     TEST_FIELD_OFFSET(GCP_RESULTSW, nMaxFit, 60)
3096 }
3097
3098 static void test_pack_GLYPHMETRICS(void)
3099 {
3100     /* GLYPHMETRICS */
3101     TEST_TYPE_SIZE   (GLYPHMETRICS, 20)
3102     TEST_TYPE_ALIGN  (GLYPHMETRICS, 4)
3103     TEST_FIELD_SIZE  (GLYPHMETRICS, gmBlackBoxX, 4)
3104     TEST_FIELD_ALIGN (GLYPHMETRICS, gmBlackBoxX, 4)
3105     TEST_FIELD_OFFSET(GLYPHMETRICS, gmBlackBoxX, 0)
3106     TEST_FIELD_SIZE  (GLYPHMETRICS, gmBlackBoxY, 4)
3107     TEST_FIELD_ALIGN (GLYPHMETRICS, gmBlackBoxY, 4)
3108     TEST_FIELD_OFFSET(GLYPHMETRICS, gmBlackBoxY, 4)
3109     TEST_FIELD_SIZE  (GLYPHMETRICS, gmptGlyphOrigin, 8)
3110     TEST_FIELD_ALIGN (GLYPHMETRICS, gmptGlyphOrigin, 4)
3111     TEST_FIELD_OFFSET(GLYPHMETRICS, gmptGlyphOrigin, 8)
3112     TEST_FIELD_SIZE  (GLYPHMETRICS, gmCellIncX, 2)
3113     TEST_FIELD_ALIGN (GLYPHMETRICS, gmCellIncX, 2)
3114     TEST_FIELD_OFFSET(GLYPHMETRICS, gmCellIncX, 16)
3115     TEST_FIELD_SIZE  (GLYPHMETRICS, gmCellIncY, 2)
3116     TEST_FIELD_ALIGN (GLYPHMETRICS, gmCellIncY, 2)
3117     TEST_FIELD_OFFSET(GLYPHMETRICS, gmCellIncY, 18)
3118 }
3119
3120 static void test_pack_GLYPHMETRICSFLOAT(void)
3121 {
3122     /* GLYPHMETRICSFLOAT */
3123     TEST_TYPE_SIZE   (GLYPHMETRICSFLOAT, 24)
3124     TEST_TYPE_ALIGN  (GLYPHMETRICSFLOAT, 4)
3125     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfBlackBoxX, 4)
3126     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfBlackBoxX, 4)
3127     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfBlackBoxX, 0)
3128     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfBlackBoxY, 4)
3129     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfBlackBoxY, 4)
3130     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfBlackBoxY, 4)
3131     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfptGlyphOrigin, 8)
3132     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfptGlyphOrigin, 4)
3133     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfptGlyphOrigin, 8)
3134     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfCellIncX, 4)
3135     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfCellIncX, 4)
3136     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfCellIncX, 16)
3137     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfCellIncY, 4)
3138     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfCellIncY, 4)
3139     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfCellIncY, 20)
3140 }
3141
3142 static void test_pack_GOBJENUMPROC(void)
3143 {
3144     /* GOBJENUMPROC */
3145     TEST_TYPE_SIZE   (GOBJENUMPROC, 8)
3146     TEST_TYPE_ALIGN  (GOBJENUMPROC, 8)
3147 }
3148
3149 static void test_pack_GRADIENT_RECT(void)
3150 {
3151     /* GRADIENT_RECT */
3152     TEST_TYPE_SIZE   (GRADIENT_RECT, 8)
3153     TEST_TYPE_ALIGN  (GRADIENT_RECT, 4)
3154     TEST_FIELD_SIZE  (GRADIENT_RECT, UpperLeft, 4)
3155     TEST_FIELD_ALIGN (GRADIENT_RECT, UpperLeft, 4)
3156     TEST_FIELD_OFFSET(GRADIENT_RECT, UpperLeft, 0)
3157     TEST_FIELD_SIZE  (GRADIENT_RECT, LowerRight, 4)
3158     TEST_FIELD_ALIGN (GRADIENT_RECT, LowerRight, 4)
3159     TEST_FIELD_OFFSET(GRADIENT_RECT, LowerRight, 4)
3160 }
3161
3162 static void test_pack_GRADIENT_TRIANGLE(void)
3163 {
3164     /* GRADIENT_TRIANGLE */
3165     TEST_TYPE_SIZE   (GRADIENT_TRIANGLE, 12)
3166     TEST_TYPE_ALIGN  (GRADIENT_TRIANGLE, 4)
3167     TEST_FIELD_SIZE  (GRADIENT_TRIANGLE, Vertex1, 4)
3168     TEST_FIELD_ALIGN (GRADIENT_TRIANGLE, Vertex1, 4)
3169     TEST_FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex1, 0)
3170     TEST_FIELD_SIZE  (GRADIENT_TRIANGLE, Vertex2, 4)
3171     TEST_FIELD_ALIGN (GRADIENT_TRIANGLE, Vertex2, 4)
3172     TEST_FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex2, 4)
3173     TEST_FIELD_SIZE  (GRADIENT_TRIANGLE, Vertex3, 4)
3174     TEST_FIELD_ALIGN (GRADIENT_TRIANGLE, Vertex3, 4)
3175     TEST_FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex3, 8)
3176 }
3177
3178 static void test_pack_HANDLETABLE(void)
3179 {
3180     /* HANDLETABLE */
3181     TEST_TYPE_SIZE   (HANDLETABLE, 8)
3182     TEST_TYPE_ALIGN  (HANDLETABLE, 8)
3183     TEST_FIELD_SIZE  (HANDLETABLE, objectHandle, 8)
3184     TEST_FIELD_ALIGN (HANDLETABLE, objectHandle, 8)
3185     TEST_FIELD_OFFSET(HANDLETABLE, objectHandle, 0)
3186 }
3187
3188 static void test_pack_ICMENUMPROCA(void)
3189 {
3190     /* ICMENUMPROCA */
3191     TEST_TYPE_SIZE   (ICMENUMPROCA, 8)
3192     TEST_TYPE_ALIGN  (ICMENUMPROCA, 8)
3193 }
3194
3195 static void test_pack_ICMENUMPROCW(void)
3196 {
3197     /* ICMENUMPROCW */
3198     TEST_TYPE_SIZE   (ICMENUMPROCW, 8)
3199     TEST_TYPE_ALIGN  (ICMENUMPROCW, 8)
3200 }
3201
3202 static void test_pack_KERNINGPAIR(void)
3203 {
3204     /* KERNINGPAIR */
3205     TEST_TYPE_SIZE   (KERNINGPAIR, 8)
3206     TEST_TYPE_ALIGN  (KERNINGPAIR, 4)
3207     TEST_FIELD_SIZE  (KERNINGPAIR, wFirst, 2)
3208     TEST_FIELD_ALIGN (KERNINGPAIR, wFirst, 2)
3209     TEST_FIELD_OFFSET(KERNINGPAIR, wFirst, 0)
3210     TEST_FIELD_SIZE  (KERNINGPAIR, wSecond, 2)
3211     TEST_FIELD_ALIGN (KERNINGPAIR, wSecond, 2)
3212     TEST_FIELD_OFFSET(KERNINGPAIR, wSecond, 2)
3213     TEST_FIELD_SIZE  (KERNINGPAIR, iKernAmount, 4)
3214     TEST_FIELD_ALIGN (KERNINGPAIR, iKernAmount, 4)
3215     TEST_FIELD_OFFSET(KERNINGPAIR, iKernAmount, 4)
3216 }
3217
3218 static void test_pack_LAYERPLANEDESCRIPTOR(void)
3219 {
3220     /* LAYERPLANEDESCRIPTOR */
3221     TEST_TYPE_SIZE   (LAYERPLANEDESCRIPTOR, 32)
3222     TEST_TYPE_ALIGN  (LAYERPLANEDESCRIPTOR, 4)
3223     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, nSize, 2)
3224     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, nSize, 2)
3225     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, nSize, 0)
3226     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, nVersion, 2)
3227     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, nVersion, 2)
3228     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, nVersion, 2)
3229     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, dwFlags, 4)
3230     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, dwFlags, 4)
3231     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, dwFlags, 4)
3232     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, iPixelType, 1)
3233     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, iPixelType, 1)
3234     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, iPixelType, 8)
3235     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cColorBits, 1)
3236     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cColorBits, 1)
3237     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cColorBits, 9)
3238     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cRedBits, 1)
3239     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cRedBits, 1)
3240     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cRedBits, 10)
3241     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cRedShift, 1)
3242     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cRedShift, 1)
3243     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cRedShift, 11)
3244     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cGreenBits, 1)
3245     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cGreenBits, 1)
3246     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cGreenBits, 12)
3247     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cGreenShift, 1)
3248     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cGreenShift, 1)
3249     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cGreenShift, 13)
3250     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cBlueBits, 1)
3251     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cBlueBits, 1)
3252     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cBlueBits, 14)
3253     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cBlueShift, 1)
3254     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cBlueShift, 1)
3255     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cBlueShift, 15)
3256     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAlphaBits, 1)
3257     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAlphaBits, 1)
3258     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAlphaBits, 16)
3259     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAlphaShift, 1)
3260     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAlphaShift, 1)
3261     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAlphaShift, 17)
3262     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumBits, 1)
3263     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumBits, 1)
3264     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumBits, 18)
3265     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumRedBits, 1)
3266     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumRedBits, 1)
3267     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumRedBits, 19)
3268     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumGreenBits, 1)
3269     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumGreenBits, 1)
3270     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumGreenBits, 20)
3271     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumBlueBits, 1)
3272     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumBlueBits, 1)
3273     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumBlueBits, 21)
3274     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumAlphaBits, 1)
3275     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumAlphaBits, 1)
3276     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumAlphaBits, 22)
3277     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cDepthBits, 1)
3278     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cDepthBits, 1)
3279     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cDepthBits, 23)
3280     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cStencilBits, 1)
3281     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cStencilBits, 1)
3282     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cStencilBits, 24)
3283     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAuxBuffers, 1)
3284     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAuxBuffers, 1)
3285     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAuxBuffers, 25)
3286     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, iLayerPlane, 1)
3287     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, iLayerPlane, 1)
3288     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, iLayerPlane, 26)
3289     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, bReserved, 1)
3290     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, bReserved, 1)
3291     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, bReserved, 27)
3292     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, crTransparent, 4)
3293     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, crTransparent, 4)
3294     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, crTransparent, 28)
3295 }
3296
3297 static void test_pack_LCSCSTYPE(void)
3298 {
3299     /* LCSCSTYPE */
3300     TEST_TYPE_SIZE   (LCSCSTYPE, 4)
3301     TEST_TYPE_ALIGN  (LCSCSTYPE, 4)
3302 }
3303
3304 static void test_pack_LCSGAMUTMATCH(void)
3305 {
3306     /* LCSGAMUTMATCH */
3307     TEST_TYPE_SIZE   (LCSGAMUTMATCH, 4)
3308     TEST_TYPE_ALIGN  (LCSGAMUTMATCH, 4)
3309 }
3310
3311 static void test_pack_LINEDDAPROC(void)
3312 {
3313     /* LINEDDAPROC */
3314     TEST_TYPE_SIZE   (LINEDDAPROC, 8)
3315     TEST_TYPE_ALIGN  (LINEDDAPROC, 8)
3316 }
3317
3318 static void test_pack_LOCALESIGNATURE(void)
3319 {
3320     /* LOCALESIGNATURE */
3321     TEST_TYPE_SIZE   (LOCALESIGNATURE, 32)
3322     TEST_TYPE_ALIGN  (LOCALESIGNATURE, 4)
3323     TEST_FIELD_SIZE  (LOCALESIGNATURE, lsUsb, 16)
3324     TEST_FIELD_ALIGN (LOCALESIGNATURE, lsUsb, 4)
3325     TEST_FIELD_OFFSET(LOCALESIGNATURE, lsUsb, 0)
3326     TEST_FIELD_SIZE  (LOCALESIGNATURE, lsCsbDefault, 8)
3327     TEST_FIELD_ALIGN (LOCALESIGNATURE, lsCsbDefault, 4)
3328     TEST_FIELD_OFFSET(LOCALESIGNATURE, lsCsbDefault, 16)
3329     TEST_FIELD_SIZE  (LOCALESIGNATURE, lsCsbSupported, 8)
3330     TEST_FIELD_ALIGN (LOCALESIGNATURE, lsCsbSupported, 4)
3331     TEST_FIELD_OFFSET(LOCALESIGNATURE, lsCsbSupported, 24)
3332 }
3333
3334 static void test_pack_LOGBRUSH(void)
3335 {
3336     /* LOGBRUSH */
3337     TEST_TYPE_SIZE   (LOGBRUSH, 16)
3338     TEST_TYPE_ALIGN  (LOGBRUSH, 8)
3339     TEST_FIELD_SIZE  (LOGBRUSH, lbStyle, 4)
3340     TEST_FIELD_ALIGN (LOGBRUSH, lbStyle, 4)
3341     TEST_FIELD_OFFSET(LOGBRUSH, lbStyle, 0)
3342     TEST_FIELD_SIZE  (LOGBRUSH, lbColor, 4)
3343     TEST_FIELD_ALIGN (LOGBRUSH, lbColor, 4)
3344     TEST_FIELD_OFFSET(LOGBRUSH, lbColor, 4)
3345     TEST_FIELD_SIZE  (LOGBRUSH, lbHatch, 8)
3346     TEST_FIELD_ALIGN (LOGBRUSH, lbHatch, 8)
3347     TEST_FIELD_OFFSET(LOGBRUSH, lbHatch, 8)
3348 }
3349
3350 static void test_pack_LOGCOLORSPACEA(void)
3351 {
3352     /* LOGCOLORSPACEA */
3353     TEST_TYPE_SIZE   (LOGCOLORSPACEA, 328)
3354     TEST_TYPE_ALIGN  (LOGCOLORSPACEA, 4)
3355     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsSignature, 4)
3356     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsSignature, 4)
3357     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsSignature, 0)
3358     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsVersion, 4)
3359     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsVersion, 4)
3360     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsVersion, 4)
3361     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsSize, 4)
3362     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsSize, 4)
3363     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsSize, 8)
3364     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsCSType, 4)
3365     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsCSType, 4)
3366     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsCSType, 12)
3367     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsIntent, 4)
3368     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsIntent, 4)
3369     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsIntent, 16)
3370     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsEndpoints, 36)
3371     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsEndpoints, 4)
3372     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsEndpoints, 20)
3373     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsGammaRed, 4)
3374     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsGammaRed, 4)
3375     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsGammaRed, 56)
3376     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsGammaGreen, 4)
3377     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsGammaGreen, 4)
3378     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsGammaGreen, 60)
3379     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsGammaBlue, 4)
3380     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsGammaBlue, 4)
3381     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsGammaBlue, 64)
3382     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsFilename, 260)
3383     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsFilename, 1)
3384     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsFilename, 68)
3385 }
3386
3387 static void test_pack_LOGCOLORSPACEW(void)
3388 {
3389     /* LOGCOLORSPACEW */
3390     TEST_TYPE_SIZE   (LOGCOLORSPACEW, 588)
3391     TEST_TYPE_ALIGN  (LOGCOLORSPACEW, 4)
3392     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsSignature, 4)
3393     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsSignature, 4)
3394     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsSignature, 0)
3395     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsVersion, 4)
3396     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsVersion, 4)
3397     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsVersion, 4)
3398     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsSize, 4)
3399     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsSize, 4)
3400     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsSize, 8)
3401     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsCSType, 4)
3402     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsCSType, 4)
3403     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsCSType, 12)
3404     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsIntent, 4)
3405     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsIntent, 4)
3406     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsIntent, 16)
3407     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsEndpoints, 36)
3408     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsEndpoints, 4)
3409     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsEndpoints, 20)
3410     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsGammaRed, 4)
3411     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsGammaRed, 4)
3412     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsGammaRed, 56)
3413     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsGammaGreen, 4)
3414     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsGammaGreen, 4)
3415     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsGammaGreen, 60)
3416     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsGammaBlue, 4)
3417     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsGammaBlue, 4)
3418     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsGammaBlue, 64)
3419     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsFilename, 520)
3420     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsFilename, 2)
3421     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsFilename, 68)
3422 }
3423
3424 static void test_pack_LOGFONTA(void)
3425 {
3426     /* LOGFONTA */
3427     TEST_TYPE_SIZE   (LOGFONTA, 60)
3428     TEST_TYPE_ALIGN  (LOGFONTA, 4)
3429     TEST_FIELD_SIZE  (LOGFONTA, lfHeight, 4)
3430     TEST_FIELD_ALIGN (LOGFONTA, lfHeight, 4)
3431     TEST_FIELD_OFFSET(LOGFONTA, lfHeight, 0)
3432     TEST_FIELD_SIZE  (LOGFONTA, lfWidth, 4)
3433     TEST_FIELD_ALIGN (LOGFONTA, lfWidth, 4)
3434     TEST_FIELD_OFFSET(LOGFONTA, lfWidth, 4)
3435     TEST_FIELD_SIZE  (LOGFONTA, lfEscapement, 4)
3436     TEST_FIELD_ALIGN (LOGFONTA, lfEscapement, 4)
3437     TEST_FIELD_OFFSET(LOGFONTA, lfEscapement, 8)
3438     TEST_FIELD_SIZE  (LOGFONTA, lfOrientation, 4)
3439     TEST_FIELD_ALIGN (LOGFONTA, lfOrientation, 4)
3440     TEST_FIELD_OFFSET(LOGFONTA, lfOrientation, 12)
3441     TEST_FIELD_SIZE  (LOGFONTA, lfWeight, 4)
3442     TEST_FIELD_ALIGN (LOGFONTA, lfWeight, 4)
3443     TEST_FIELD_OFFSET(LOGFONTA, lfWeight, 16)
3444     TEST_FIELD_SIZE  (LOGFONTA, lfItalic, 1)
3445     TEST_FIELD_ALIGN (LOGFONTA, lfItalic, 1)
3446     TEST_FIELD_OFFSET(LOGFONTA, lfItalic, 20)
3447     TEST_FIELD_SIZE  (LOGFONTA, lfUnderline, 1)
3448     TEST_FIELD_ALIGN (LOGFONTA, lfUnderline, 1)
3449     TEST_FIELD_OFFSET(LOGFONTA, lfUnderline, 21)
3450     TEST_FIELD_SIZE  (LOGFONTA, lfStrikeOut, 1)
3451     TEST_FIELD_ALIGN (LOGFONTA, lfStrikeOut, 1)
3452     TEST_FIELD_OFFSET(LOGFONTA, lfStrikeOut, 22)
3453     TEST_FIELD_SIZE  (LOGFONTA, lfCharSet, 1)
3454     TEST_FIELD_ALIGN (LOGFONTA, lfCharSet, 1)
3455     TEST_FIELD_OFFSET(LOGFONTA, lfCharSet, 23)
3456     TEST_FIELD_SIZE  (LOGFONTA, lfOutPrecision, 1)
3457     TEST_FIELD_ALIGN (LOGFONTA, lfOutPrecision, 1)
3458     TEST_FIELD_OFFSET(LOGFONTA, lfOutPrecision, 24)
3459     TEST_FIELD_SIZE  (LOGFONTA, lfClipPrecision, 1)
3460     TEST_FIELD_ALIGN (LOGFONTA, lfClipPrecision, 1)
3461     TEST_FIELD_OFFSET(LOGFONTA, lfClipPrecision, 25)
3462     TEST_FIELD_SIZE  (LOGFONTA, lfQuality, 1)
3463     TEST_FIELD_ALIGN (LOGFONTA, lfQuality, 1)
3464     TEST_FIELD_OFFSET(LOGFONTA, lfQuality, 26)
3465     TEST_FIELD_SIZE  (LOGFONTA, lfPitchAndFamily, 1)
3466     TEST_FIELD_ALIGN (LOGFONTA, lfPitchAndFamily, 1)
3467     TEST_FIELD_OFFSET(LOGFONTA, lfPitchAndFamily, 27)
3468     TEST_FIELD_SIZE  (LOGFONTA, lfFaceName, 32)
3469     TEST_FIELD_ALIGN (LOGFONTA, lfFaceName, 1)
3470     TEST_FIELD_OFFSET(LOGFONTA, lfFaceName, 28)
3471 }
3472
3473 static void test_pack_LOGFONTW(void)
3474 {
3475     /* LOGFONTW */
3476     TEST_TYPE_SIZE   (LOGFONTW, 92)
3477     TEST_TYPE_ALIGN  (LOGFONTW, 4)
3478     TEST_FIELD_SIZE  (LOGFONTW, lfHeight, 4)
3479     TEST_FIELD_ALIGN (LOGFONTW, lfHeight, 4)
3480     TEST_FIELD_OFFSET(LOGFONTW, lfHeight, 0)
3481     TEST_FIELD_SIZE  (LOGFONTW, lfWidth, 4)
3482     TEST_FIELD_ALIGN (LOGFONTW, lfWidth, 4)
3483     TEST_FIELD_OFFSET(LOGFONTW, lfWidth, 4)
3484     TEST_FIELD_SIZE  (LOGFONTW, lfEscapement, 4)
3485     TEST_FIELD_ALIGN (LOGFONTW, lfEscapement, 4)
3486     TEST_FIELD_OFFSET(LOGFONTW, lfEscapement, 8)
3487     TEST_FIELD_SIZE  (LOGFONTW, lfOrientation, 4)
3488     TEST_FIELD_ALIGN (LOGFONTW, lfOrientation, 4)
3489     TEST_FIELD_OFFSET(LOGFONTW, lfOrientation, 12)
3490     TEST_FIELD_SIZE  (LOGFONTW, lfWeight, 4)
3491     TEST_FIELD_ALIGN (LOGFONTW, lfWeight, 4)
3492     TEST_FIELD_OFFSET(LOGFONTW, lfWeight, 16)
3493     TEST_FIELD_SIZE  (LOGFONTW, lfItalic, 1)
3494     TEST_FIELD_ALIGN (LOGFONTW, lfItalic, 1)
3495     TEST_FIELD_OFFSET(LOGFONTW, lfItalic, 20)
3496     TEST_FIELD_SIZE  (LOGFONTW, lfUnderline, 1)
3497     TEST_FIELD_ALIGN (LOGFONTW, lfUnderline, 1)
3498     TEST_FIELD_OFFSET(LOGFONTW, lfUnderline, 21)
3499     TEST_FIELD_SIZE  (LOGFONTW, lfStrikeOut, 1)
3500     TEST_FIELD_ALIGN (LOGFONTW, lfStrikeOut, 1)
3501     TEST_FIELD_OFFSET(LOGFONTW, lfStrikeOut, 22)
3502     TEST_FIELD_SIZE  (LOGFONTW, lfCharSet, 1)
3503     TEST_FIELD_ALIGN (LOGFONTW, lfCharSet, 1)
3504     TEST_FIELD_OFFSET(LOGFONTW, lfCharSet, 23)
3505     TEST_FIELD_SIZE  (LOGFONTW, lfOutPrecision, 1)
3506     TEST_FIELD_ALIGN (LOGFONTW, lfOutPrecision, 1)
3507     TEST_FIELD_OFFSET(LOGFONTW, lfOutPrecision, 24)
3508     TEST_FIELD_SIZE  (LOGFONTW, lfClipPrecision, 1)
3509     TEST_FIELD_ALIGN (LOGFONTW, lfClipPrecision, 1)
3510     TEST_FIELD_OFFSET(LOGFONTW, lfClipPrecision, 25)
3511     TEST_FIELD_SIZE  (LOGFONTW, lfQuality, 1)
3512     TEST_FIELD_ALIGN (LOGFONTW, lfQuality, 1)
3513     TEST_FIELD_OFFSET(LOGFONTW, lfQuality, 26)
3514     TEST_FIELD_SIZE  (LOGFONTW, lfPitchAndFamily, 1)
3515     TEST_FIELD_ALIGN (LOGFONTW, lfPitchAndFamily, 1)
3516     TEST_FIELD_OFFSET(LOGFONTW, lfPitchAndFamily, 27)
3517     TEST_FIELD_SIZE  (LOGFONTW, lfFaceName, 64)
3518     TEST_FIELD_ALIGN (LOGFONTW, lfFaceName, 2)
3519     TEST_FIELD_OFFSET(LOGFONTW, lfFaceName, 28)
3520 }
3521
3522 static void test_pack_LOGPEN(void)
3523 {
3524     /* LOGPEN */
3525     TEST_TYPE_SIZE   (LOGPEN, 16)
3526     TEST_TYPE_ALIGN  (LOGPEN, 4)
3527     TEST_FIELD_SIZE  (LOGPEN, lopnStyle, 4)
3528     TEST_FIELD_ALIGN (LOGPEN, lopnStyle, 4)
3529     TEST_FIELD_OFFSET(LOGPEN, lopnStyle, 0)
3530     TEST_FIELD_SIZE  (LOGPEN, lopnWidth, 8)
3531     TEST_FIELD_ALIGN (LOGPEN, lopnWidth, 4)
3532     TEST_FIELD_OFFSET(LOGPEN, lopnWidth, 4)
3533     TEST_FIELD_SIZE  (LOGPEN, lopnColor, 4)
3534     TEST_FIELD_ALIGN (LOGPEN, lopnColor, 4)
3535     TEST_FIELD_OFFSET(LOGPEN, lopnColor, 12)
3536 }
3537
3538 static void test_pack_LPABC(void)
3539 {
3540     /* LPABC */
3541     TEST_TYPE_SIZE   (LPABC, 8)
3542     TEST_TYPE_ALIGN  (LPABC, 8)
3543     TEST_TARGET_SIZE (LPABC, 12)
3544     TEST_TARGET_ALIGN(LPABC, 4)
3545 }
3546
3547 static void test_pack_LPABCFLOAT(void)
3548 {
3549     /* LPABCFLOAT */
3550     TEST_TYPE_SIZE   (LPABCFLOAT, 8)
3551     TEST_TYPE_ALIGN  (LPABCFLOAT, 8)
3552     TEST_TARGET_SIZE (LPABCFLOAT, 12)
3553     TEST_TARGET_ALIGN(LPABCFLOAT, 4)
3554 }
3555
3556 static void test_pack_LPBITMAP(void)
3557 {
3558     /* LPBITMAP */
3559     TEST_TYPE_SIZE   (LPBITMAP, 8)
3560     TEST_TYPE_ALIGN  (LPBITMAP, 8)
3561     TEST_TARGET_SIZE (LPBITMAP, 32)
3562     TEST_TARGET_ALIGN(LPBITMAP, 8)
3563 }
3564
3565 static void test_pack_LPBITMAPCOREHEADER(void)
3566 {
3567     /* LPBITMAPCOREHEADER */
3568     TEST_TYPE_SIZE   (LPBITMAPCOREHEADER, 8)
3569     TEST_TYPE_ALIGN  (LPBITMAPCOREHEADER, 8)
3570     TEST_TARGET_SIZE (LPBITMAPCOREHEADER, 12)
3571     TEST_TARGET_ALIGN(LPBITMAPCOREHEADER, 4)
3572 }
3573
3574 static void test_pack_LPBITMAPCOREINFO(void)
3575 {
3576     /* LPBITMAPCOREINFO */
3577     TEST_TYPE_SIZE   (LPBITMAPCOREINFO, 8)
3578     TEST_TYPE_ALIGN  (LPBITMAPCOREINFO, 8)
3579     TEST_TARGET_SIZE (LPBITMAPCOREINFO, 16)
3580     TEST_TARGET_ALIGN(LPBITMAPCOREINFO, 4)
3581 }
3582
3583 static void test_pack_LPBITMAPFILEHEADER(void)
3584 {
3585     /* LPBITMAPFILEHEADER */
3586     TEST_TYPE_SIZE   (LPBITMAPFILEHEADER, 8)
3587     TEST_TYPE_ALIGN  (LPBITMAPFILEHEADER, 8)
3588     TEST_TARGET_SIZE (LPBITMAPFILEHEADER, 14)
3589     TEST_TARGET_ALIGN(LPBITMAPFILEHEADER, 2)
3590 }
3591
3592 static void test_pack_LPBITMAPINFO(void)
3593 {
3594     /* LPBITMAPINFO */
3595     TEST_TYPE_SIZE   (LPBITMAPINFO, 8)
3596     TEST_TYPE_ALIGN  (LPBITMAPINFO, 8)
3597     TEST_TARGET_SIZE (LPBITMAPINFO, 44)
3598     TEST_TARGET_ALIGN(LPBITMAPINFO, 4)
3599 }
3600
3601 static void test_pack_LPBITMAPINFOHEADER(void)
3602 {
3603     /* LPBITMAPINFOHEADER */
3604     TEST_TYPE_SIZE   (LPBITMAPINFOHEADER, 8)
3605     TEST_TYPE_ALIGN  (LPBITMAPINFOHEADER, 8)
3606     TEST_TARGET_SIZE (LPBITMAPINFOHEADER, 40)
3607     TEST_TARGET_ALIGN(LPBITMAPINFOHEADER, 4)
3608 }
3609
3610 static void test_pack_LPBITMAPV5HEADER(void)
3611 {
3612     /* LPBITMAPV5HEADER */
3613     TEST_TYPE_SIZE   (LPBITMAPV5HEADER, 8)
3614     TEST_TYPE_ALIGN  (LPBITMAPV5HEADER, 8)
3615     TEST_TARGET_SIZE (LPBITMAPV5HEADER, 124)
3616     TEST_TARGET_ALIGN(LPBITMAPV5HEADER, 4)
3617 }
3618
3619 static void test_pack_LPCHARSETINFO(void)
3620 {
3621     /* LPCHARSETINFO */
3622     TEST_TYPE_SIZE   (LPCHARSETINFO, 8)
3623     TEST_TYPE_ALIGN  (LPCHARSETINFO, 8)
3624     TEST_TARGET_SIZE (LPCHARSETINFO, 32)
3625     TEST_TARGET_ALIGN(LPCHARSETINFO, 4)
3626 }
3627
3628 static void test_pack_LPCIEXYZ(void)
3629 {
3630     /* LPCIEXYZ */
3631     TEST_TYPE_SIZE   (LPCIEXYZ, 8)
3632     TEST_TYPE_ALIGN  (LPCIEXYZ, 8)
3633     TEST_TARGET_SIZE (LPCIEXYZ, 12)
3634     TEST_TARGET_ALIGN(LPCIEXYZ, 4)
3635 }
3636
3637 static void test_pack_LPCIEXYZTRIPLE(void)
3638 {
3639     /* LPCIEXYZTRIPLE */
3640     TEST_TYPE_SIZE   (LPCIEXYZTRIPLE, 8)
3641     TEST_TYPE_ALIGN  (LPCIEXYZTRIPLE, 8)
3642     TEST_TARGET_SIZE (LPCIEXYZTRIPLE, 36)
3643     TEST_TARGET_ALIGN(LPCIEXYZTRIPLE, 4)
3644 }
3645
3646 static void test_pack_LPCOLORADJUSTMENT(void)
3647 {
3648     /* LPCOLORADJUSTMENT */
3649     TEST_TYPE_SIZE   (LPCOLORADJUSTMENT, 8)
3650     TEST_TYPE_ALIGN  (LPCOLORADJUSTMENT, 8)
3651     TEST_TARGET_SIZE (LPCOLORADJUSTMENT, 24)
3652     TEST_TARGET_ALIGN(LPCOLORADJUSTMENT, 2)
3653 }
3654
3655 static void test_pack_LPDEVMODEA(void)
3656 {
3657     /* LPDEVMODEA */
3658     TEST_TYPE_SIZE   (LPDEVMODEA, 8)
3659     TEST_TYPE_ALIGN  (LPDEVMODEA, 8)
3660 }
3661
3662 static void test_pack_LPDEVMODEW(void)
3663 {
3664     /* LPDEVMODEW */
3665     TEST_TYPE_SIZE   (LPDEVMODEW, 8)
3666     TEST_TYPE_ALIGN  (LPDEVMODEW, 8)
3667 }
3668
3669 static void test_pack_LPDIBSECTION(void)
3670 {
3671     /* LPDIBSECTION */
3672     TEST_TYPE_SIZE   (LPDIBSECTION, 8)
3673     TEST_TYPE_ALIGN  (LPDIBSECTION, 8)
3674     TEST_TARGET_SIZE (LPDIBSECTION, 104)
3675     TEST_TARGET_ALIGN(LPDIBSECTION, 8)
3676 }
3677
3678 static void test_pack_LPDISPLAY_DEVICEA(void)
3679 {
3680     /* LPDISPLAY_DEVICEA */
3681     TEST_TYPE_SIZE   (LPDISPLAY_DEVICEA, 8)
3682     TEST_TYPE_ALIGN  (LPDISPLAY_DEVICEA, 8)
3683     TEST_TARGET_SIZE (LPDISPLAY_DEVICEA, 424)
3684     TEST_TARGET_ALIGN(LPDISPLAY_DEVICEA, 4)
3685 }
3686
3687 static void test_pack_LPDISPLAY_DEVICEW(void)
3688 {
3689     /* LPDISPLAY_DEVICEW */
3690     TEST_TYPE_SIZE   (LPDISPLAY_DEVICEW, 8)
3691     TEST_TYPE_ALIGN  (LPDISPLAY_DEVICEW, 8)
3692     TEST_TARGET_SIZE (LPDISPLAY_DEVICEW, 840)
3693     TEST_TARGET_ALIGN(LPDISPLAY_DEVICEW, 4)
3694 }
3695
3696 static void test_pack_LPDOCINFOA(void)
3697 {
3698     /* LPDOCINFOA */
3699     TEST_TYPE_SIZE   (LPDOCINFOA, 8)
3700     TEST_TYPE_ALIGN  (LPDOCINFOA, 8)
3701     TEST_TARGET_SIZE (LPDOCINFOA, 40)
3702     TEST_TARGET_ALIGN(LPDOCINFOA, 8)
3703 }
3704
3705 static void test_pack_LPDOCINFOW(void)
3706 {
3707     /* LPDOCINFOW */
3708     TEST_TYPE_SIZE   (LPDOCINFOW, 8)
3709     TEST_TYPE_ALIGN  (LPDOCINFOW, 8)
3710     TEST_TARGET_SIZE (LPDOCINFOW, 40)
3711     TEST_TARGET_ALIGN(LPDOCINFOW, 8)
3712 }
3713
3714 static void test_pack_LPENHMETAHEADER(void)
3715 {
3716     /* LPENHMETAHEADER */
3717     TEST_TYPE_SIZE   (LPENHMETAHEADER, 8)
3718     TEST_TYPE_ALIGN  (LPENHMETAHEADER, 8)
3719     TEST_TARGET_SIZE (LPENHMETAHEADER, 108)
3720     TEST_TARGET_ALIGN(LPENHMETAHEADER, 4)
3721 }
3722
3723 static void test_pack_LPENHMETARECORD(void)
3724 {
3725     /* LPENHMETARECORD */
3726     TEST_TYPE_SIZE   (LPENHMETARECORD, 8)
3727     TEST_TYPE_ALIGN  (LPENHMETARECORD, 8)
3728     TEST_TARGET_SIZE (LPENHMETARECORD, 12)
3729     TEST_TARGET_ALIGN(LPENHMETARECORD, 4)
3730 }
3731
3732 static void test_pack_LPENUMLOGFONTA(void)
3733 {
3734     /* LPENUMLOGFONTA */
3735     TEST_TYPE_SIZE   (LPENUMLOGFONTA, 8)
3736     TEST_TYPE_ALIGN  (LPENUMLOGFONTA, 8)
3737     TEST_TARGET_SIZE (LPENUMLOGFONTA, 156)
3738     TEST_TARGET_ALIGN(LPENUMLOGFONTA, 4)
3739 }
3740
3741 static void test_pack_LPENUMLOGFONTEXA(void)
3742 {
3743     /* LPENUMLOGFONTEXA */
3744     TEST_TYPE_SIZE   (LPENUMLOGFONTEXA, 8)
3745     TEST_TYPE_ALIGN  (LPENUMLOGFONTEXA, 8)
3746     TEST_TARGET_SIZE (LPENUMLOGFONTEXA, 188)
3747     TEST_TARGET_ALIGN(LPENUMLOGFONTEXA, 4)
3748 }
3749
3750 static void test_pack_LPENUMLOGFONTEXW(void)
3751 {
3752     /* LPENUMLOGFONTEXW */
3753     TEST_TYPE_SIZE   (LPENUMLOGFONTEXW, 8)
3754     TEST_TYPE_ALIGN  (LPENUMLOGFONTEXW, 8)
3755     TEST_TARGET_SIZE (LPENUMLOGFONTEXW, 348)
3756     TEST_TARGET_ALIGN(LPENUMLOGFONTEXW, 4)
3757 }
3758
3759 static void test_pack_LPENUMLOGFONTW(void)
3760 {
3761     /* LPENUMLOGFONTW */
3762     TEST_TYPE_SIZE   (LPENUMLOGFONTW, 8)
3763     TEST_TYPE_ALIGN  (LPENUMLOGFONTW, 8)
3764     TEST_TARGET_SIZE (LPENUMLOGFONTW, 284)
3765     TEST_TARGET_ALIGN(LPENUMLOGFONTW, 4)
3766 }
3767
3768 static void test_pack_LPEXTLOGFONTA(void)
3769 {
3770     /* LPEXTLOGFONTA */
3771     TEST_TYPE_SIZE   (LPEXTLOGFONTA, 8)
3772     TEST_TYPE_ALIGN  (LPEXTLOGFONTA, 8)
3773     TEST_TARGET_SIZE (LPEXTLOGFONTA, 192)
3774     TEST_TARGET_ALIGN(LPEXTLOGFONTA, 4)
3775 }
3776
3777 static void test_pack_LPEXTLOGFONTW(void)
3778 {
3779     /* LPEXTLOGFONTW */
3780     TEST_TYPE_SIZE   (LPEXTLOGFONTW, 8)
3781     TEST_TYPE_ALIGN  (LPEXTLOGFONTW, 8)
3782     TEST_TARGET_SIZE (LPEXTLOGFONTW, 320)
3783     TEST_TARGET_ALIGN(LPEXTLOGFONTW, 4)
3784 }
3785
3786 static void test_pack_LPEXTLOGPEN(void)
3787 {
3788     /* LPEXTLOGPEN */
3789     TEST_TYPE_SIZE   (LPEXTLOGPEN, 8)
3790     TEST_TYPE_ALIGN  (LPEXTLOGPEN, 8)
3791     TEST_TARGET_SIZE (LPEXTLOGPEN, 32)
3792     TEST_TARGET_ALIGN(LPEXTLOGPEN, 8)
3793 }
3794
3795 static void test_pack_LPFONTSIGNATURE(void)
3796 {
3797     /* LPFONTSIGNATURE */
3798     TEST_TYPE_SIZE   (LPFONTSIGNATURE, 8)
3799     TEST_TYPE_ALIGN  (LPFONTSIGNATURE, 8)
3800     TEST_TARGET_SIZE (LPFONTSIGNATURE, 24)
3801     TEST_TARGET_ALIGN(LPFONTSIGNATURE, 4)
3802 }
3803
3804 static void test_pack_LPGCP_RESULTSA(void)
3805 {
3806     /* LPGCP_RESULTSA */
3807     TEST_TYPE_SIZE   (LPGCP_RESULTSA, 8)
3808     TEST_TYPE_ALIGN  (LPGCP_RESULTSA, 8)
3809     TEST_TARGET_SIZE (LPGCP_RESULTSA, 64)
3810     TEST_TARGET_ALIGN(LPGCP_RESULTSA, 8)
3811 }
3812
3813 static void test_pack_LPGCP_RESULTSW(void)
3814 {
3815     /* LPGCP_RESULTSW */
3816     TEST_TYPE_SIZE   (LPGCP_RESULTSW, 8)
3817     TEST_TYPE_ALIGN  (LPGCP_RESULTSW, 8)
3818     TEST_TARGET_SIZE (LPGCP_RESULTSW, 64)
3819     TEST_TARGET_ALIGN(LPGCP_RESULTSW, 8)
3820 }
3821
3822 static void test_pack_LPGLYPHMETRICS(void)
3823 {
3824     /* LPGLYPHMETRICS */
3825     TEST_TYPE_SIZE   (LPGLYPHMETRICS, 8)
3826     TEST_TYPE_ALIGN  (LPGLYPHMETRICS, 8)
3827     TEST_TARGET_SIZE (LPGLYPHMETRICS, 20)
3828     TEST_TARGET_ALIGN(LPGLYPHMETRICS, 4)
3829 }
3830
3831 static void test_pack_LPGLYPHMETRICSFLOAT(void)
3832 {
3833     /* LPGLYPHMETRICSFLOAT */
3834     TEST_TYPE_SIZE   (LPGLYPHMETRICSFLOAT, 8)
3835     TEST_TYPE_ALIGN  (LPGLYPHMETRICSFLOAT, 8)
3836     TEST_TARGET_SIZE (LPGLYPHMETRICSFLOAT, 24)
3837     TEST_TARGET_ALIGN(LPGLYPHMETRICSFLOAT, 4)
3838 }
3839
3840 static void test_pack_LPGRADIENT_RECT(void)
3841 {
3842     /* LPGRADIENT_RECT */
3843     TEST_TYPE_SIZE   (LPGRADIENT_RECT, 8)
3844     TEST_TYPE_ALIGN  (LPGRADIENT_RECT, 8)
3845     TEST_TARGET_SIZE (LPGRADIENT_RECT, 8)
3846     TEST_TARGET_ALIGN(LPGRADIENT_RECT, 4)
3847 }
3848
3849 static void test_pack_LPGRADIENT_TRIANGLE(void)
3850 {
3851     /* LPGRADIENT_TRIANGLE */
3852     TEST_TYPE_SIZE   (LPGRADIENT_TRIANGLE, 8)
3853     TEST_TYPE_ALIGN  (LPGRADIENT_TRIANGLE, 8)
3854     TEST_TARGET_SIZE (LPGRADIENT_TRIANGLE, 12)
3855     TEST_TARGET_ALIGN(LPGRADIENT_TRIANGLE, 4)
3856 }
3857
3858 static void test_pack_LPHANDLETABLE(void)
3859 {
3860     /* LPHANDLETABLE */
3861     TEST_TYPE_SIZE   (LPHANDLETABLE, 8)
3862     TEST_TYPE_ALIGN  (LPHANDLETABLE, 8)
3863     TEST_TARGET_SIZE (LPHANDLETABLE, 8)
3864     TEST_TARGET_ALIGN(LPHANDLETABLE, 8)
3865 }
3866
3867 static void test_pack_LPKERNINGPAIR(void)
3868 {
3869     /* LPKERNINGPAIR */
3870     TEST_TYPE_SIZE   (LPKERNINGPAIR, 8)
3871     TEST_TYPE_ALIGN  (LPKERNINGPAIR, 8)
3872     TEST_TARGET_SIZE (LPKERNINGPAIR, 8)
3873     TEST_TARGET_ALIGN(LPKERNINGPAIR, 4)
3874 }
3875
3876 static void test_pack_LPLAYERPLANEDESCRIPTOR(void)
3877 {
3878     /* LPLAYERPLANEDESCRIPTOR */
3879     TEST_TYPE_SIZE   (LPLAYERPLANEDESCRIPTOR, 8)
3880     TEST_TYPE_ALIGN  (LPLAYERPLANEDESCRIPTOR, 8)
3881     TEST_TARGET_SIZE (LPLAYERPLANEDESCRIPTOR, 32)
3882     TEST_TARGET_ALIGN(LPLAYERPLANEDESCRIPTOR, 4)
3883 }
3884
3885 static void test_pack_LPLOCALESIGNATURE(void)
3886 {
3887     /* LPLOCALESIGNATURE */
3888     TEST_TYPE_SIZE   (LPLOCALESIGNATURE, 8)
3889     TEST_TYPE_ALIGN  (LPLOCALESIGNATURE, 8)
3890     TEST_TARGET_SIZE (LPLOCALESIGNATURE, 32)
3891     TEST_TARGET_ALIGN(LPLOCALESIGNATURE, 4)
3892 }
3893
3894 static void test_pack_LPLOGBRUSH(void)
3895 {
3896     /* LPLOGBRUSH */
3897     TEST_TYPE_SIZE   (LPLOGBRUSH, 8)
3898     TEST_TYPE_ALIGN  (LPLOGBRUSH, 8)
3899     TEST_TARGET_SIZE (LPLOGBRUSH, 16)
3900     TEST_TARGET_ALIGN(LPLOGBRUSH, 8)
3901 }
3902
3903 static void test_pack_LPLOGCOLORSPACEA(void)
3904 {
3905     /* LPLOGCOLORSPACEA */
3906     TEST_TYPE_SIZE   (LPLOGCOLORSPACEA, 8)
3907     TEST_TYPE_ALIGN  (LPLOGCOLORSPACEA, 8)
3908     TEST_TARGET_SIZE (LPLOGCOLORSPACEA, 328)
3909     TEST_TARGET_ALIGN(LPLOGCOLORSPACEA, 4)
3910 }
3911
3912 static void test_pack_LPLOGCOLORSPACEW(void)
3913 {
3914     /* LPLOGCOLORSPACEW */
3915     TEST_TYPE_SIZE   (LPLOGCOLORSPACEW, 8)
3916     TEST_TYPE_ALIGN  (LPLOGCOLORSPACEW, 8)
3917     TEST_TARGET_SIZE (LPLOGCOLORSPACEW, 588)
3918     TEST_TARGET_ALIGN(LPLOGCOLORSPACEW, 4)
3919 }
3920
3921 static void test_pack_LPLOGFONTA(void)
3922 {
3923     /* LPLOGFONTA */
3924     TEST_TYPE_SIZE   (LPLOGFONTA, 8)
3925     TEST_TYPE_ALIGN  (LPLOGFONTA, 8)
3926     TEST_TARGET_SIZE (LPLOGFONTA, 60)
3927     TEST_TARGET_ALIGN(LPLOGFONTA, 4)
3928 }
3929
3930 static void test_pack_LPLOGFONTW(void)
3931 {
3932     /* LPLOGFONTW */
3933     TEST_TYPE_SIZE   (LPLOGFONTW, 8)
3934     TEST_TYPE_ALIGN  (LPLOGFONTW, 8)
3935     TEST_TARGET_SIZE (LPLOGFONTW, 92)
3936     TEST_TARGET_ALIGN(LPLOGFONTW, 4)
3937 }
3938
3939 static void test_pack_LPLOGPEN(void)
3940 {
3941     /* LPLOGPEN */
3942     TEST_TYPE_SIZE   (LPLOGPEN, 8)
3943     TEST_TYPE_ALIGN  (LPLOGPEN, 8)
3944     TEST_TARGET_SIZE (LPLOGPEN, 16)
3945     TEST_TARGET_ALIGN(LPLOGPEN, 4)
3946 }
3947
3948 static void test_pack_LPMAT2(void)
3949 {
3950     /* LPMAT2 */
3951     TEST_TYPE_SIZE   (LPMAT2, 8)
3952     TEST_TYPE_ALIGN  (LPMAT2, 8)
3953     TEST_TARGET_SIZE (LPMAT2, 16)
3954     TEST_TARGET_ALIGN(LPMAT2, 2)
3955 }
3956
3957 static void test_pack_LPMETAFILEPICT(void)
3958 {
3959     /* LPMETAFILEPICT */
3960     TEST_TYPE_SIZE   (LPMETAFILEPICT, 8)
3961     TEST_TYPE_ALIGN  (LPMETAFILEPICT, 8)
3962     TEST_TARGET_SIZE (LPMETAFILEPICT, 24)
3963     TEST_TARGET_ALIGN(LPMETAFILEPICT, 8)
3964 }
3965
3966 static void test_pack_LPMETAHEADER(void)
3967 {
3968     /* LPMETAHEADER */
3969     TEST_TYPE_SIZE   (LPMETAHEADER, 8)
3970     TEST_TYPE_ALIGN  (LPMETAHEADER, 8)
3971     TEST_TARGET_SIZE (LPMETAHEADER, 18)
3972     TEST_TARGET_ALIGN(LPMETAHEADER, 2)
3973 }
3974
3975 static void test_pack_LPMETARECORD(void)
3976 {
3977     /* LPMETARECORD */
3978     TEST_TYPE_SIZE   (LPMETARECORD, 8)
3979     TEST_TYPE_ALIGN  (LPMETARECORD, 8)
3980     TEST_TARGET_SIZE (LPMETARECORD, 8)
3981     TEST_TARGET_ALIGN(LPMETARECORD, 4)
3982 }
3983
3984 static void test_pack_LPNEWTEXTMETRICA(void)
3985 {
3986     /* LPNEWTEXTMETRICA */
3987     TEST_TYPE_SIZE   (LPNEWTEXTMETRICA, 8)
3988     TEST_TYPE_ALIGN  (LPNEWTEXTMETRICA, 8)
3989     TEST_TARGET_SIZE (LPNEWTEXTMETRICA, 72)
3990     TEST_TARGET_ALIGN(LPNEWTEXTMETRICA, 4)
3991 }
3992
3993 static void test_pack_LPNEWTEXTMETRICW(void)
3994 {
3995     /* LPNEWTEXTMETRICW */
3996     TEST_TYPE_SIZE   (LPNEWTEXTMETRICW, 8)
3997     TEST_TYPE_ALIGN  (LPNEWTEXTMETRICW, 8)
3998     TEST_TARGET_SIZE (LPNEWTEXTMETRICW, 76)
3999     TEST_TARGET_ALIGN(LPNEWTEXTMETRICW, 4)
4000 }
4001
4002 static void test_pack_LPOUTLINETEXTMETRICA(void)
4003 {
4004     /* LPOUTLINETEXTMETRICA */
4005     TEST_TYPE_SIZE   (LPOUTLINETEXTMETRICA, 8)
4006     TEST_TYPE_ALIGN  (LPOUTLINETEXTMETRICA, 8)
4007     TEST_TARGET_SIZE (LPOUTLINETEXTMETRICA, 232)
4008     TEST_TARGET_ALIGN(LPOUTLINETEXTMETRICA, 8)
4009 }
4010
4011 static void test_pack_LPOUTLINETEXTMETRICW(void)
4012 {
4013     /* LPOUTLINETEXTMETRICW */
4014     TEST_TYPE_SIZE   (LPOUTLINETEXTMETRICW, 8)
4015     TEST_TYPE_ALIGN  (LPOUTLINETEXTMETRICW, 8)
4016     TEST_TARGET_SIZE (LPOUTLINETEXTMETRICW, 232)
4017     TEST_TARGET_ALIGN(LPOUTLINETEXTMETRICW, 8)
4018 }
4019
4020 static void test_pack_LPPANOSE(void)
4021 {
4022     /* LPPANOSE */
4023     TEST_TYPE_SIZE   (LPPANOSE, 8)
4024     TEST_TYPE_ALIGN  (LPPANOSE, 8)
4025     TEST_TARGET_SIZE (LPPANOSE, 10)
4026     TEST_TARGET_ALIGN(LPPANOSE, 1)
4027 }
4028
4029 static void test_pack_LPPELARRAY(void)
4030 {
4031     /* LPPELARRAY */
4032     TEST_TYPE_SIZE   (LPPELARRAY, 8)
4033     TEST_TYPE_ALIGN  (LPPELARRAY, 8)
4034     TEST_TARGET_SIZE (LPPELARRAY, 20)
4035     TEST_TARGET_ALIGN(LPPELARRAY, 4)
4036 }
4037
4038 static void test_pack_LPPIXELFORMATDESCRIPTOR(void)
4039 {
4040     /* LPPIXELFORMATDESCRIPTOR */
4041     TEST_TYPE_SIZE   (LPPIXELFORMATDESCRIPTOR, 8)
4042     TEST_TYPE_ALIGN  (LPPIXELFORMATDESCRIPTOR, 8)
4043     TEST_TARGET_SIZE (LPPIXELFORMATDESCRIPTOR, 40)
4044     TEST_TARGET_ALIGN(LPPIXELFORMATDESCRIPTOR, 4)
4045 }
4046
4047 static void test_pack_LPPOINTFX(void)
4048 {
4049     /* LPPOINTFX */
4050     TEST_TYPE_SIZE   (LPPOINTFX, 8)
4051     TEST_TYPE_ALIGN  (LPPOINTFX, 8)
4052     TEST_TARGET_SIZE (LPPOINTFX, 8)
4053     TEST_TARGET_ALIGN(LPPOINTFX, 2)
4054 }
4055
4056 static void test_pack_LPPOLYTEXTA(void)
4057 {
4058     /* LPPOLYTEXTA */
4059     TEST_TYPE_SIZE   (LPPOLYTEXTA, 8)
4060     TEST_TYPE_ALIGN  (LPPOLYTEXTA, 8)
4061     TEST_TARGET_SIZE (LPPOLYTEXTA, 56)
4062     TEST_TARGET_ALIGN(LPPOLYTEXTA, 8)
4063 }
4064
4065 static void test_pack_LPPOLYTEXTW(void)
4066 {
4067     /* LPPOLYTEXTW */
4068     TEST_TYPE_SIZE   (LPPOLYTEXTW, 8)
4069     TEST_TYPE_ALIGN  (LPPOLYTEXTW, 8)
4070     TEST_TARGET_SIZE (LPPOLYTEXTW, 56)
4071     TEST_TARGET_ALIGN(LPPOLYTEXTW, 8)
4072 }
4073
4074 static void test_pack_LPRASTERIZER_STATUS(void)
4075 {
4076     /* LPRASTERIZER_STATUS */
4077     TEST_TYPE_SIZE   (LPRASTERIZER_STATUS, 8)
4078     TEST_TYPE_ALIGN  (LPRASTERIZER_STATUS, 8)
4079     TEST_TARGET_SIZE (LPRASTERIZER_STATUS, 6)
4080     TEST_TARGET_ALIGN(LPRASTERIZER_STATUS, 2)
4081 }
4082
4083 static void test_pack_LPRGBQUAD(void)
4084 {
4085     /* LPRGBQUAD */
4086     TEST_TYPE_SIZE   (LPRGBQUAD, 8)
4087     TEST_TYPE_ALIGN  (LPRGBQUAD, 8)
4088     TEST_TARGET_SIZE (LPRGBQUAD, 4)
4089     TEST_TARGET_ALIGN(LPRGBQUAD, 1)
4090 }
4091
4092 static void test_pack_LPRGNDATA(void)
4093 {
4094     /* LPRGNDATA */
4095     TEST_TYPE_SIZE   (LPRGNDATA, 8)
4096     TEST_TYPE_ALIGN  (LPRGNDATA, 8)
4097     TEST_TARGET_SIZE (LPRGNDATA, 36)
4098     TEST_TARGET_ALIGN(LPRGNDATA, 4)
4099 }
4100
4101 static void test_pack_LPTEXTMETRICA(void)
4102 {
4103     /* LPTEXTMETRICA */
4104     TEST_TYPE_SIZE   (LPTEXTMETRICA, 8)
4105     TEST_TYPE_ALIGN  (LPTEXTMETRICA, 8)
4106     TEST_TARGET_SIZE (LPTEXTMETRICA, 56)
4107     TEST_TARGET_ALIGN(LPTEXTMETRICA, 4)
4108 }
4109
4110 static void test_pack_LPTEXTMETRICW(void)
4111 {
4112     /* LPTEXTMETRICW */
4113     TEST_TYPE_SIZE   (LPTEXTMETRICW, 8)
4114     TEST_TYPE_ALIGN  (LPTEXTMETRICW, 8)
4115     TEST_TARGET_SIZE (LPTEXTMETRICW, 60)
4116     TEST_TARGET_ALIGN(LPTEXTMETRICW, 4)
4117 }
4118
4119 static void test_pack_LPTRIVERTEX(void)
4120 {
4121     /* LPTRIVERTEX */
4122     TEST_TYPE_SIZE   (LPTRIVERTEX, 8)
4123     TEST_TYPE_ALIGN  (LPTRIVERTEX, 8)
4124     TEST_TARGET_SIZE (LPTRIVERTEX, 16)
4125     TEST_TARGET_ALIGN(LPTRIVERTEX, 4)
4126 }
4127
4128 static void test_pack_LPTTPOLYCURVE(void)
4129 {
4130     /* LPTTPOLYCURVE */
4131     TEST_TYPE_SIZE   (LPTTPOLYCURVE, 8)
4132     TEST_TYPE_ALIGN  (LPTTPOLYCURVE, 8)
4133     TEST_TARGET_SIZE (LPTTPOLYCURVE, 12)
4134     TEST_TARGET_ALIGN(LPTTPOLYCURVE, 2)
4135 }
4136
4137 static void test_pack_LPTTPOLYGONHEADER(void)
4138 {
4139     /* LPTTPOLYGONHEADER */
4140     TEST_TYPE_SIZE   (LPTTPOLYGONHEADER, 8)
4141     TEST_TYPE_ALIGN  (LPTTPOLYGONHEADER, 8)
4142     TEST_TARGET_SIZE (LPTTPOLYGONHEADER, 16)
4143     TEST_TARGET_ALIGN(LPTTPOLYGONHEADER, 4)
4144 }
4145
4146 static void test_pack_LPXFORM(void)
4147 {
4148     /* LPXFORM */
4149     TEST_TYPE_SIZE   (LPXFORM, 8)
4150     TEST_TYPE_ALIGN  (LPXFORM, 8)
4151     TEST_TARGET_SIZE (LPXFORM, 24)
4152     TEST_TARGET_ALIGN(LPXFORM, 4)
4153 }
4154
4155 static void test_pack_MAT2(void)
4156 {
4157     /* MAT2 */
4158     TEST_TYPE_SIZE   (MAT2, 16)
4159     TEST_TYPE_ALIGN  (MAT2, 2)
4160     TEST_FIELD_SIZE  (MAT2, eM11, 4)
4161     TEST_FIELD_ALIGN (MAT2, eM11, 2)
4162     TEST_FIELD_OFFSET(MAT2, eM11, 0)
4163     TEST_FIELD_SIZE  (MAT2, eM12, 4)
4164     TEST_FIELD_ALIGN (MAT2, eM12, 2)
4165     TEST_FIELD_OFFSET(MAT2, eM12, 4)
4166     TEST_FIELD_SIZE  (MAT2, eM21, 4)
4167     TEST_FIELD_ALIGN (MAT2, eM21, 2)
4168     TEST_FIELD_OFFSET(MAT2, eM21, 8)
4169     TEST_FIELD_SIZE  (MAT2, eM22, 4)
4170     TEST_FIELD_ALIGN (MAT2, eM22, 2)
4171     TEST_FIELD_OFFSET(MAT2, eM22, 12)
4172 }
4173
4174 static void test_pack_METAFILEPICT(void)
4175 {
4176     /* METAFILEPICT */
4177     TEST_TYPE_SIZE   (METAFILEPICT, 24)
4178     TEST_TYPE_ALIGN  (METAFILEPICT, 8)
4179     TEST_FIELD_SIZE  (METAFILEPICT, mm, 4)
4180     TEST_FIELD_ALIGN (METAFILEPICT, mm, 4)
4181     TEST_FIELD_OFFSET(METAFILEPICT, mm, 0)
4182     TEST_FIELD_SIZE  (METAFILEPICT, xExt, 4)
4183     TEST_FIELD_ALIGN (METAFILEPICT, xExt, 4)
4184     TEST_FIELD_OFFSET(METAFILEPICT, xExt, 4)
4185     TEST_FIELD_SIZE  (METAFILEPICT, yExt, 4)
4186     TEST_FIELD_ALIGN (METAFILEPICT, yExt, 4)
4187     TEST_FIELD_OFFSET(METAFILEPICT, yExt, 8)
4188     TEST_FIELD_SIZE  (METAFILEPICT, hMF, 8)
4189     TEST_FIELD_ALIGN (METAFILEPICT, hMF, 8)
4190     TEST_FIELD_OFFSET(METAFILEPICT, hMF, 16)
4191 }
4192
4193 static void test_pack_METAHEADER(void)
4194 {
4195     /* METAHEADER (pack 2) */
4196     TEST_TYPE_SIZE   (METAHEADER, 18)
4197     TEST_TYPE_ALIGN  (METAHEADER, 2)
4198     TEST_FIELD_SIZE  (METAHEADER, mtType, 2)
4199     TEST_FIELD_ALIGN (METAHEADER, mtType, 2)
4200     TEST_FIELD_OFFSET(METAHEADER, mtType, 0)
4201     TEST_FIELD_SIZE  (METAHEADER, mtHeaderSize, 2)
4202     TEST_FIELD_ALIGN (METAHEADER, mtHeaderSize, 2)
4203     TEST_FIELD_OFFSET(METAHEADER, mtHeaderSize, 2)
4204     TEST_FIELD_SIZE  (METAHEADER, mtVersion, 2)
4205     TEST_FIELD_ALIGN (METAHEADER, mtVersion, 2)
4206     TEST_FIELD_OFFSET(METAHEADER, mtVersion, 4)
4207     TEST_FIELD_SIZE  (METAHEADER, mtSize, 4)
4208     TEST_FIELD_ALIGN (METAHEADER, mtSize, 2)
4209     TEST_FIELD_OFFSET(METAHEADER, mtSize, 6)
4210     TEST_FIELD_SIZE  (METAHEADER, mtNoObjects, 2)
4211     TEST_FIELD_ALIGN (METAHEADER, mtNoObjects, 2)
4212     TEST_FIELD_OFFSET(METAHEADER, mtNoObjects, 10)
4213     TEST_FIELD_SIZE  (METAHEADER, mtMaxRecord, 4)
4214     TEST_FIELD_ALIGN (METAHEADER, mtMaxRecord, 2)
4215     TEST_FIELD_OFFSET(METAHEADER, mtMaxRecord, 12)
4216     TEST_FIELD_SIZE  (METAHEADER, mtNoParameters, 2)
4217     TEST_FIELD_ALIGN (METAHEADER, mtNoParameters, 2)
4218     TEST_FIELD_OFFSET(METAHEADER, mtNoParameters, 16)
4219 }
4220
4221 static void test_pack_METARECORD(void)
4222 {
4223     /* METARECORD */
4224     TEST_TYPE_SIZE   (METARECORD, 8)
4225     TEST_TYPE_ALIGN  (METARECORD, 4)
4226     TEST_FIELD_SIZE  (METARECORD, rdSize, 4)
4227     TEST_FIELD_ALIGN (METARECORD, rdSize, 4)
4228     TEST_FIELD_OFFSET(METARECORD, rdSize, 0)
4229     TEST_FIELD_SIZE  (METARECORD, rdFunction, 2)
4230     TEST_FIELD_ALIGN (METARECORD, rdFunction, 2)
4231     TEST_FIELD_OFFSET(METARECORD, rdFunction, 4)
4232     TEST_FIELD_SIZE  (METARECORD, rdParm, 2)
4233     TEST_FIELD_ALIGN (METARECORD, rdParm, 2)
4234     TEST_FIELD_OFFSET(METARECORD, rdParm, 6)
4235 }
4236
4237 static void test_pack_MFENUMPROC(void)
4238 {
4239     /* MFENUMPROC */
4240     TEST_TYPE_SIZE   (MFENUMPROC, 8)
4241     TEST_TYPE_ALIGN  (MFENUMPROC, 8)
4242 }
4243
4244 static void test_pack_NEWTEXTMETRICA(void)
4245 {
4246     /* NEWTEXTMETRICA */
4247     TEST_TYPE_SIZE   (NEWTEXTMETRICA, 72)
4248     TEST_TYPE_ALIGN  (NEWTEXTMETRICA, 4)
4249     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmHeight, 4)
4250     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmHeight, 4)
4251     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmHeight, 0)
4252     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmAscent, 4)
4253     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmAscent, 4)
4254     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmAscent, 4)
4255     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmDescent, 4)
4256     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmDescent, 4)
4257     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmDescent, 8)
4258     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmInternalLeading, 4)
4259     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmInternalLeading, 4)
4260     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmInternalLeading, 12)
4261     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmExternalLeading, 4)
4262     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmExternalLeading, 4)
4263     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmExternalLeading, 16)
4264     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmAveCharWidth, 4)
4265     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmAveCharWidth, 4)
4266     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmAveCharWidth, 20)
4267     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmMaxCharWidth, 4)
4268     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmMaxCharWidth, 4)
4269     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmMaxCharWidth, 24)
4270     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmWeight, 4)
4271     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmWeight, 4)
4272     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmWeight, 28)
4273     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmOverhang, 4)
4274     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmOverhang, 4)
4275     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmOverhang, 32)
4276     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmDigitizedAspectX, 4)
4277     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmDigitizedAspectX, 4)
4278     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmDigitizedAspectX, 36)
4279     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmDigitizedAspectY, 4)
4280     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmDigitizedAspectY, 4)
4281     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmDigitizedAspectY, 40)
4282     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmFirstChar, 1)
4283     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmFirstChar, 1)
4284     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmFirstChar, 44)
4285     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmLastChar, 1)
4286     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmLastChar, 1)
4287     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmLastChar, 45)
4288     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmDefaultChar, 1)
4289     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmDefaultChar, 1)
4290     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmDefaultChar, 46)
4291     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmBreakChar, 1)
4292     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmBreakChar, 1)
4293     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmBreakChar, 47)
4294     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmItalic, 1)
4295     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmItalic, 1)
4296     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmItalic, 48)
4297     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmUnderlined, 1)
4298     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmUnderlined, 1)
4299     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmUnderlined, 49)
4300     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmStruckOut, 1)
4301     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmStruckOut, 1)
4302     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmStruckOut, 50)
4303     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmPitchAndFamily, 1)
4304     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmPitchAndFamily, 1)
4305     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmPitchAndFamily, 51)
4306     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmCharSet, 1)
4307     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmCharSet, 1)
4308     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmCharSet, 52)
4309     TEST_FIELD_SIZE  (NEWTEXTMETRICA, ntmFlags, 4)
4310     TEST_FIELD_ALIGN (NEWTEXTMETRICA, ntmFlags, 4)
4311     TEST_FIELD_OFFSET(NEWTEXTMETRICA, ntmFlags, 56)
4312     TEST_FIELD_SIZE  (NEWTEXTMETRICA, ntmSizeEM, 4)
4313     TEST_FIELD_ALIGN (NEWTEXTMETRICA, ntmSizeEM, 4)
4314     TEST_FIELD_OFFSET(NEWTEXTMETRICA, ntmSizeEM, 60)
4315     TEST_FIELD_SIZE  (NEWTEXTMETRICA, ntmCellHeight, 4)
4316     TEST_FIELD_ALIGN (NEWTEXTMETRICA, ntmCellHeight, 4)
4317     TEST_FIELD_OFFSET(NEWTEXTMETRICA, ntmCellHeight, 64)
4318     TEST_FIELD_SIZE  (NEWTEXTMETRICA, ntmAvgWidth, 4)
4319     TEST_FIELD_ALIGN (NEWTEXTMETRICA, ntmAvgWidth, 4)
4320     TEST_FIELD_OFFSET(NEWTEXTMETRICA, ntmAvgWidth, 68)
4321 }
4322
4323 static void test_pack_NEWTEXTMETRICEXA(void)
4324 {
4325     /* NEWTEXTMETRICEXA */
4326     TEST_TYPE_SIZE   (NEWTEXTMETRICEXA, 96)
4327     TEST_TYPE_ALIGN  (NEWTEXTMETRICEXA, 4)
4328     TEST_FIELD_SIZE  (NEWTEXTMETRICEXA, ntmTm, 72)
4329     TEST_FIELD_ALIGN (NEWTEXTMETRICEXA, ntmTm, 4)
4330     TEST_FIELD_OFFSET(NEWTEXTMETRICEXA, ntmTm, 0)
4331     TEST_FIELD_SIZE  (NEWTEXTMETRICEXA, ntmFontSig, 24)
4332     TEST_FIELD_ALIGN (NEWTEXTMETRICEXA, ntmFontSig, 4)
4333     TEST_FIELD_OFFSET(NEWTEXTMETRICEXA, ntmFontSig, 72)
4334 }
4335
4336 static void test_pack_NEWTEXTMETRICEXW(void)
4337 {
4338     /* NEWTEXTMETRICEXW */
4339     TEST_TYPE_SIZE   (NEWTEXTMETRICEXW, 100)
4340     TEST_TYPE_ALIGN  (NEWTEXTMETRICEXW, 4)
4341     TEST_FIELD_SIZE  (NEWTEXTMETRICEXW, ntmTm, 76)
4342     TEST_FIELD_ALIGN (NEWTEXTMETRICEXW, ntmTm, 4)
4343     TEST_FIELD_OFFSET(NEWTEXTMETRICEXW, ntmTm, 0)
4344     TEST_FIELD_SIZE  (NEWTEXTMETRICEXW, ntmFontSig, 24)
4345     TEST_FIELD_ALIGN (NEWTEXTMETRICEXW, ntmFontSig, 4)
4346     TEST_FIELD_OFFSET(NEWTEXTMETRICEXW, ntmFontSig, 76)
4347 }
4348
4349 static void test_pack_NEWTEXTMETRICW(void)
4350 {
4351     /* NEWTEXTMETRICW */
4352     TEST_TYPE_SIZE   (NEWTEXTMETRICW, 76)
4353     TEST_TYPE_ALIGN  (NEWTEXTMETRICW, 4)
4354     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmHeight, 4)
4355     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmHeight, 4)
4356     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmHeight, 0)
4357     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmAscent, 4)
4358     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmAscent, 4)
4359     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmAscent, 4)
4360     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmDescent, 4)
4361     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmDescent, 4)
4362     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmDescent, 8)
4363     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmInternalLeading, 4)
4364     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmInternalLeading, 4)
4365     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmInternalLeading, 12)
4366     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmExternalLeading, 4)
4367     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmExternalLeading, 4)
4368     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmExternalLeading, 16)
4369     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmAveCharWidth, 4)
4370     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmAveCharWidth, 4)
4371     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmAveCharWidth, 20)
4372     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmMaxCharWidth, 4)
4373     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmMaxCharWidth, 4)
4374     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmMaxCharWidth, 24)
4375     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmWeight, 4)
4376     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmWeight, 4)
4377     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmWeight, 28)
4378     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmOverhang, 4)
4379     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmOverhang, 4)
4380     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmOverhang, 32)
4381     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmDigitizedAspectX, 4)
4382     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmDigitizedAspectX, 4)
4383     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmDigitizedAspectX, 36)
4384     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmDigitizedAspectY, 4)
4385     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmDigitizedAspectY, 4)
4386     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmDigitizedAspectY, 40)
4387     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmFirstChar, 2)
4388     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmFirstChar, 2)
4389     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmFirstChar, 44)
4390     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmLastChar, 2)
4391     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmLastChar, 2)
4392     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmLastChar, 46)
4393     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmDefaultChar, 2)
4394     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmDefaultChar, 2)
4395     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmDefaultChar, 48)
4396     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmBreakChar, 2)
4397     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmBreakChar, 2)
4398     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmBreakChar, 50)
4399     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmItalic, 1)
4400     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmItalic, 1)
4401     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmItalic, 52)
4402     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmUnderlined, 1)
4403     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmUnderlined, 1)
4404     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmUnderlined, 53)
4405     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmStruckOut, 1)
4406     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmStruckOut, 1)
4407     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmStruckOut, 54)
4408     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmPitchAndFamily, 1)
4409     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmPitchAndFamily, 1)
4410     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmPitchAndFamily, 55)
4411     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmCharSet, 1)
4412     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmCharSet, 1)
4413     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmCharSet, 56)
4414     TEST_FIELD_SIZE  (NEWTEXTMETRICW, ntmFlags, 4)
4415     TEST_FIELD_ALIGN (NEWTEXTMETRICW, ntmFlags, 4)
4416     TEST_FIELD_OFFSET(NEWTEXTMETRICW, ntmFlags, 60)
4417     TEST_FIELD_SIZE  (NEWTEXTMETRICW, ntmSizeEM, 4)
4418     TEST_FIELD_ALIGN (NEWTEXTMETRICW, ntmSizeEM, 4)
4419     TEST_FIELD_OFFSET(NEWTEXTMETRICW, ntmSizeEM, 64)
4420     TEST_FIELD_SIZE  (NEWTEXTMETRICW, ntmCellHeight, 4)
4421     TEST_FIELD_ALIGN (NEWTEXTMETRICW, ntmCellHeight, 4)
4422     TEST_FIELD_OFFSET(NEWTEXTMETRICW, ntmCellHeight, 68)
4423     TEST_FIELD_SIZE  (NEWTEXTMETRICW, ntmAvgWidth, 4)
4424     TEST_FIELD_ALIGN (NEWTEXTMETRICW, ntmAvgWidth, 4)
4425     TEST_FIELD_OFFSET(NEWTEXTMETRICW, ntmAvgWidth, 72)
4426 }
4427
4428 static void test_pack_NPEXTLOGPEN(void)
4429 {
4430     /* NPEXTLOGPEN */
4431     TEST_TYPE_SIZE   (NPEXTLOGPEN, 8)
4432     TEST_TYPE_ALIGN  (NPEXTLOGPEN, 8)
4433     TEST_TARGET_SIZE (NPEXTLOGPEN, 32)
4434     TEST_TARGET_ALIGN(NPEXTLOGPEN, 8)
4435 }
4436
4437 static void test_pack_OLDFONTENUMPROC(void)
4438 {
4439     /* OLDFONTENUMPROC */
4440     TEST_TYPE_SIZE   (OLDFONTENUMPROC, 8)
4441     TEST_TYPE_ALIGN  (OLDFONTENUMPROC, 8)
4442 }
4443
4444 static void test_pack_OLDFONTENUMPROCA(void)
4445 {
4446     /* OLDFONTENUMPROCA */
4447     TEST_TYPE_SIZE   (OLDFONTENUMPROCA, 8)
4448     TEST_TYPE_ALIGN  (OLDFONTENUMPROCA, 8)
4449 }
4450
4451 static void test_pack_OLDFONTENUMPROCW(void)
4452 {
4453     /* OLDFONTENUMPROCW */
4454     TEST_TYPE_SIZE   (OLDFONTENUMPROCW, 8)
4455     TEST_TYPE_ALIGN  (OLDFONTENUMPROCW, 8)
4456 }
4457
4458 static void test_pack_OUTLINETEXTMETRICA(void)
4459 {
4460     /* OUTLINETEXTMETRICA */
4461     TEST_TYPE_SIZE   (OUTLINETEXTMETRICA, 232)
4462     TEST_TYPE_ALIGN  (OUTLINETEXTMETRICA, 8)
4463     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmSize, 4)
4464     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmSize, 4)
4465     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmSize, 0)
4466     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmTextMetrics, 56)
4467     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmTextMetrics, 4)
4468     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmTextMetrics, 4)
4469     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmFiller, 1)
4470     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmFiller, 1)
4471     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmFiller, 60)
4472     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmPanoseNumber, 10)
4473     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmPanoseNumber, 1)
4474     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmPanoseNumber, 61)
4475     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmfsSelection, 4)
4476     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmfsSelection, 4)
4477     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmfsSelection, 72)
4478     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmfsType, 4)
4479     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmfsType, 4)
4480     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmfsType, 76)
4481     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsCharSlopeRise, 4)
4482     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsCharSlopeRise, 4)
4483     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsCharSlopeRise, 80)
4484     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsCharSlopeRun, 4)
4485     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsCharSlopeRun, 4)
4486     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsCharSlopeRun, 84)
4487     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmItalicAngle, 4)
4488     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmItalicAngle, 4)
4489     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmItalicAngle, 88)
4490     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmEMSquare, 4)
4491     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmEMSquare, 4)
4492     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmEMSquare, 92)
4493     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmAscent, 4)
4494     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmAscent, 4)
4495     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmAscent, 96)
4496     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmDescent, 4)
4497     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmDescent, 4)
4498     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmDescent, 100)
4499     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmLineGap, 4)
4500     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmLineGap, 4)
4501     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmLineGap, 104)
4502     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsCapEmHeight, 4)
4503     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsCapEmHeight, 4)
4504     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsCapEmHeight, 108)
4505     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsXHeight, 4)
4506     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsXHeight, 4)
4507     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsXHeight, 112)
4508     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmrcFontBox, 16)
4509     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmrcFontBox, 4)
4510     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmrcFontBox, 116)
4511     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmMacAscent, 4)
4512     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmMacAscent, 4)
4513     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmMacAscent, 132)
4514     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmMacDescent, 4)
4515     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmMacDescent, 4)
4516     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmMacDescent, 136)
4517     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmMacLineGap, 4)
4518     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmMacLineGap, 4)
4519     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmMacLineGap, 140)
4520     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmusMinimumPPEM, 4)
4521     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmusMinimumPPEM, 4)
4522     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmusMinimumPPEM, 144)
4523     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmptSubscriptSize, 8)
4524     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmptSubscriptSize, 4)
4525     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmptSubscriptSize, 148)
4526     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmptSubscriptOffset, 8)
4527     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmptSubscriptOffset, 4)
4528     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmptSubscriptOffset, 156)
4529     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmptSuperscriptSize, 8)
4530     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmptSuperscriptSize, 4)
4531     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmptSuperscriptSize, 164)
4532     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmptSuperscriptOffset, 8)
4533     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmptSuperscriptOffset, 4)
4534     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmptSuperscriptOffset, 172)
4535     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsStrikeoutSize, 4)
4536     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsStrikeoutSize, 4)
4537     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsStrikeoutSize, 180)
4538     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsStrikeoutPosition, 4)
4539     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsStrikeoutPosition, 4)
4540     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsStrikeoutPosition, 184)
4541     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsUnderscoreSize, 4)
4542     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsUnderscoreSize, 4)
4543     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsUnderscoreSize, 188)
4544     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsUnderscorePosition, 4)
4545     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsUnderscorePosition, 4)
4546     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsUnderscorePosition, 192)
4547     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmpFamilyName, 8)
4548     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmpFamilyName, 8)
4549     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmpFamilyName, 200)
4550     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmpFaceName, 8)
4551     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmpFaceName, 8)
4552     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmpFaceName, 208)
4553     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmpStyleName, 8)
4554     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmpStyleName, 8)
4555     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmpStyleName, 216)
4556     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmpFullName, 8)
4557     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmpFullName, 8)
4558     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmpFullName, 224)
4559 }
4560
4561 static void test_pack_OUTLINETEXTMETRICW(void)
4562 {
4563     /* OUTLINETEXTMETRICW */
4564     TEST_TYPE_SIZE   (OUTLINETEXTMETRICW, 232)
4565     TEST_TYPE_ALIGN  (OUTLINETEXTMETRICW, 8)
4566     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmSize, 4)
4567     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmSize, 4)
4568     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmSize, 0)
4569     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmTextMetrics, 60)
4570     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmTextMetrics, 4)
4571     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmTextMetrics, 4)
4572     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmFiller, 1)
4573     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmFiller, 1)
4574     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmFiller, 64)
4575     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmPanoseNumber, 10)
4576     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmPanoseNumber, 1)
4577     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmPanoseNumber, 65)
4578     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmfsSelection, 4)
4579     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmfsSelection, 4)
4580     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmfsSelection, 76)
4581     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmfsType, 4)
4582     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmfsType, 4)
4583     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmfsType, 80)
4584     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsCharSlopeRise, 4)
4585     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsCharSlopeRise, 4)
4586     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsCharSlopeRise, 84)
4587     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsCharSlopeRun, 4)
4588     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsCharSlopeRun, 4)
4589     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsCharSlopeRun, 88)
4590     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmItalicAngle, 4)
4591     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmItalicAngle, 4)
4592     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmItalicAngle, 92)
4593     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmEMSquare, 4)
4594     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmEMSquare, 4)
4595     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmEMSquare, 96)
4596     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmAscent, 4)
4597     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmAscent, 4)
4598     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmAscent, 100)
4599     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmDescent, 4)
4600     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmDescent, 4)
4601     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmDescent, 104)
4602     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmLineGap, 4)
4603     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmLineGap, 4)
4604     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmLineGap, 108)
4605     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsCapEmHeight, 4)
4606     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsCapEmHeight, 4)
4607     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsCapEmHeight, 112)
4608     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsXHeight, 4)
4609     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsXHeight, 4)
4610     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsXHeight, 116)
4611     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmrcFontBox, 16)
4612     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmrcFontBox, 4)
4613     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmrcFontBox, 120)
4614     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmMacAscent, 4)
4615     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmMacAscent, 4)
4616     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmMacAscent, 136)
4617     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmMacDescent, 4)
4618     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmMacDescent, 4)
4619     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmMacDescent, 140)
4620     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmMacLineGap, 4)
4621     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmMacLineGap, 4)
4622     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmMacLineGap, 144)
4623     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmusMinimumPPEM, 4)
4624     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmusMinimumPPEM, 4)
4625     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmusMinimumPPEM, 148)
4626     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmptSubscriptSize, 8)
4627     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmptSubscriptSize, 4)
4628     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmptSubscriptSize, 152)
4629     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmptSubscriptOffset, 8)
4630     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmptSubscriptOffset, 4)
4631     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmptSubscriptOffset, 160)
4632     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmptSuperscriptSize, 8)
4633     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmptSuperscriptSize, 4)
4634     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmptSuperscriptSize, 168)
4635     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmptSuperscriptOffset, 8)
4636     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmptSuperscriptOffset, 4)
4637     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmptSuperscriptOffset, 176)
4638     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsStrikeoutSize, 4)
4639     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsStrikeoutSize, 4)
4640     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsStrikeoutSize, 184)
4641     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsStrikeoutPosition, 4)
4642     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsStrikeoutPosition, 4)
4643     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsStrikeoutPosition, 188)
4644     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsUnderscoreSize, 4)
4645     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsUnderscoreSize, 4)
4646     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsUnderscoreSize, 192)
4647     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsUnderscorePosition, 4)
4648     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsUnderscorePosition, 4)
4649     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsUnderscorePosition, 196)
4650     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmpFamilyName, 8)
4651     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmpFamilyName, 8)
4652     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmpFamilyName, 200)
4653     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmpFaceName, 8)
4654     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmpFaceName, 8)
4655     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmpFaceName, 208)
4656     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmpStyleName, 8)
4657     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmpStyleName, 8)
4658     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmpStyleName, 216)
4659     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmpFullName, 8)
4660     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmpFullName, 8)
4661     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmpFullName, 224)
4662 }
4663
4664 static void test_pack_PABC(void)
4665 {
4666     /* PABC */
4667     TEST_TYPE_SIZE   (PABC, 8)
4668     TEST_TYPE_ALIGN  (PABC, 8)
4669     TEST_TARGET_SIZE (PABC, 12)
4670     TEST_TARGET_ALIGN(PABC, 4)
4671 }
4672
4673 static void test_pack_PABCFLOAT(void)
4674 {
4675     /* PABCFLOAT */
4676     TEST_TYPE_SIZE   (PABCFLOAT, 8)
4677     TEST_TYPE_ALIGN  (PABCFLOAT, 8)
4678     TEST_TARGET_SIZE (PABCFLOAT, 12)
4679     TEST_TARGET_ALIGN(PABCFLOAT, 4)
4680 }
4681
4682 static void test_pack_PANOSE(void)
4683 {
4684     /* PANOSE */
4685     TEST_TYPE_SIZE   (PANOSE, 10)
4686     TEST_TYPE_ALIGN  (PANOSE, 1)
4687     TEST_FIELD_SIZE  (PANOSE, bFamilyType, 1)
4688     TEST_FIELD_ALIGN (PANOSE, bFamilyType, 1)
4689     TEST_FIELD_OFFSET(PANOSE, bFamilyType, 0)
4690     TEST_FIELD_SIZE  (PANOSE, bSerifStyle, 1)
4691     TEST_FIELD_ALIGN (PANOSE, bSerifStyle, 1)
4692     TEST_FIELD_OFFSET(PANOSE, bSerifStyle, 1)
4693     TEST_FIELD_SIZE  (PANOSE, bWeight, 1)
4694     TEST_FIELD_ALIGN (PANOSE, bWeight, 1)
4695     TEST_FIELD_OFFSET(PANOSE, bWeight, 2)
4696     TEST_FIELD_SIZE  (PANOSE, bProportion, 1)
4697     TEST_FIELD_ALIGN (PANOSE, bProportion, 1)
4698     TEST_FIELD_OFFSET(PANOSE, bProportion, 3)
4699     TEST_FIELD_SIZE  (PANOSE, bContrast, 1)
4700     TEST_FIELD_ALIGN (PANOSE, bContrast, 1)
4701     TEST_FIELD_OFFSET(PANOSE, bContrast, 4)
4702     TEST_FIELD_SIZE  (PANOSE, bStrokeVariation, 1)
4703     TEST_FIELD_ALIGN (PANOSE, bStrokeVariation, 1)
4704     TEST_FIELD_OFFSET(PANOSE, bStrokeVariation, 5)
4705     TEST_FIELD_SIZE  (PANOSE, bArmStyle, 1)
4706     TEST_FIELD_ALIGN (PANOSE, bArmStyle, 1)
4707     TEST_FIELD_OFFSET(PANOSE, bArmStyle, 6)
4708     TEST_FIELD_SIZE  (PANOSE, bLetterform, 1)
4709     TEST_FIELD_ALIGN (PANOSE, bLetterform, 1)
4710     TEST_FIELD_OFFSET(PANOSE, bLetterform, 7)
4711     TEST_FIELD_SIZE  (PANOSE, bMidline, 1)
4712     TEST_FIELD_ALIGN (PANOSE, bMidline, 1)
4713     TEST_FIELD_OFFSET(PANOSE, bMidline, 8)
4714     TEST_FIELD_SIZE  (PANOSE, bXHeight, 1)
4715     TEST_FIELD_ALIGN (PANOSE, bXHeight, 1)
4716     TEST_FIELD_OFFSET(PANOSE, bXHeight, 9)
4717 }
4718
4719 static void test_pack_PATTERN(void)
4720 {
4721     /* PATTERN */
4722     TEST_TYPE_SIZE   (PATTERN, 16)
4723     TEST_TYPE_ALIGN  (PATTERN, 8)
4724 }
4725
4726 static void test_pack_PBITMAP(void)
4727 {
4728     /* PBITMAP */
4729     TEST_TYPE_SIZE   (PBITMAP, 8)
4730     TEST_TYPE_ALIGN  (PBITMAP, 8)
4731     TEST_TARGET_SIZE (PBITMAP, 32)
4732     TEST_TARGET_ALIGN(PBITMAP, 8)
4733 }
4734
4735 static void test_pack_PBITMAPCOREHEADER(void)
4736 {
4737     /* PBITMAPCOREHEADER */
4738     TEST_TYPE_SIZE   (PBITMAPCOREHEADER, 8)
4739     TEST_TYPE_ALIGN  (PBITMAPCOREHEADER, 8)
4740     TEST_TARGET_SIZE (PBITMAPCOREHEADER, 12)
4741     TEST_TARGET_ALIGN(PBITMAPCOREHEADER, 4)
4742 }
4743
4744 static void test_pack_PBITMAPCOREINFO(void)
4745 {
4746     /* PBITMAPCOREINFO */
4747     TEST_TYPE_SIZE   (PBITMAPCOREINFO, 8)
4748     TEST_TYPE_ALIGN  (PBITMAPCOREINFO, 8)
4749     TEST_TARGET_SIZE (PBITMAPCOREINFO, 16)
4750     TEST_TARGET_ALIGN(PBITMAPCOREINFO, 4)
4751 }
4752
4753 static void test_pack_PBITMAPFILEHEADER(void)
4754 {
4755     /* PBITMAPFILEHEADER */
4756     TEST_TYPE_SIZE   (PBITMAPFILEHEADER, 8)
4757     TEST_TYPE_ALIGN  (PBITMAPFILEHEADER, 8)
4758     TEST_TARGET_SIZE (PBITMAPFILEHEADER, 14)
4759     TEST_TARGET_ALIGN(PBITMAPFILEHEADER, 2)
4760 }
4761
4762 static void test_pack_PBITMAPINFO(void)
4763 {
4764     /* PBITMAPINFO */
4765     TEST_TYPE_SIZE   (PBITMAPINFO, 8)
4766     TEST_TYPE_ALIGN  (PBITMAPINFO, 8)
4767     TEST_TARGET_SIZE (PBITMAPINFO, 44)
4768     TEST_TARGET_ALIGN(PBITMAPINFO, 4)
4769 }
4770
4771 static void test_pack_PBITMAPINFOHEADER(void)
4772 {
4773     /* PBITMAPINFOHEADER */
4774     TEST_TYPE_SIZE   (PBITMAPINFOHEADER, 8)
4775     TEST_TYPE_ALIGN  (PBITMAPINFOHEADER, 8)
4776     TEST_TARGET_SIZE (PBITMAPINFOHEADER, 40)
4777     TEST_TARGET_ALIGN(PBITMAPINFOHEADER, 4)
4778 }
4779
4780 static void test_pack_PBITMAPV4HEADER(void)
4781 {
4782     /* PBITMAPV4HEADER */
4783     TEST_TYPE_SIZE   (PBITMAPV4HEADER, 8)
4784     TEST_TYPE_ALIGN  (PBITMAPV4HEADER, 8)
4785     TEST_TARGET_SIZE (PBITMAPV4HEADER, 108)
4786     TEST_TARGET_ALIGN(PBITMAPV4HEADER, 4)
4787 }
4788
4789 static void test_pack_PBITMAPV5HEADER(void)
4790 {
4791     /* PBITMAPV5HEADER */
4792     TEST_TYPE_SIZE   (PBITMAPV5HEADER, 8)
4793     TEST_TYPE_ALIGN  (PBITMAPV5HEADER, 8)
4794     TEST_TARGET_SIZE (PBITMAPV5HEADER, 124)
4795     TEST_TARGET_ALIGN(PBITMAPV5HEADER, 4)
4796 }
4797
4798 static void test_pack_PBLENDFUNCTION(void)
4799 {
4800     /* PBLENDFUNCTION */
4801     TEST_TYPE_SIZE   (PBLENDFUNCTION, 8)
4802     TEST_TYPE_ALIGN  (PBLENDFUNCTION, 8)
4803     TEST_TARGET_SIZE (PBLENDFUNCTION, 4)
4804     TEST_TARGET_ALIGN(PBLENDFUNCTION, 1)
4805 }
4806
4807 static void test_pack_PCHARSETINFO(void)
4808 {
4809     /* PCHARSETINFO */
4810     TEST_TYPE_SIZE   (PCHARSETINFO, 8)
4811     TEST_TYPE_ALIGN  (PCHARSETINFO, 8)
4812     TEST_TARGET_SIZE (PCHARSETINFO, 32)
4813     TEST_TARGET_ALIGN(PCHARSETINFO, 4)
4814 }
4815
4816 static void test_pack_PCOLORADJUSTMENT(void)
4817 {
4818     /* PCOLORADJUSTMENT */
4819     TEST_TYPE_SIZE   (PCOLORADJUSTMENT, 8)
4820     TEST_TYPE_ALIGN  (PCOLORADJUSTMENT, 8)
4821     TEST_TARGET_SIZE (PCOLORADJUSTMENT, 24)
4822     TEST_TARGET_ALIGN(PCOLORADJUSTMENT, 2)
4823 }
4824
4825 static void test_pack_PDEVMODEA(void)
4826 {
4827     /* PDEVMODEA */
4828     TEST_TYPE_SIZE   (PDEVMODEA, 8)
4829     TEST_TYPE_ALIGN  (PDEVMODEA, 8)
4830 }
4831
4832 static void test_pack_PDEVMODEW(void)
4833 {
4834     /* PDEVMODEW */
4835     TEST_TYPE_SIZE   (PDEVMODEW, 8)
4836     TEST_TYPE_ALIGN  (PDEVMODEW, 8)
4837 }
4838
4839 static void test_pack_PDIBSECTION(void)
4840 {
4841     /* PDIBSECTION */
4842     TEST_TYPE_SIZE   (PDIBSECTION, 8)
4843     TEST_TYPE_ALIGN  (PDIBSECTION, 8)
4844     TEST_TARGET_SIZE (PDIBSECTION, 104)
4845     TEST_TARGET_ALIGN(PDIBSECTION, 8)
4846 }
4847
4848 static void test_pack_PDISPLAY_DEVICEA(void)
4849 {
4850     /* PDISPLAY_DEVICEA */
4851     TEST_TYPE_SIZE   (PDISPLAY_DEVICEA, 8)
4852     TEST_TYPE_ALIGN  (PDISPLAY_DEVICEA, 8)
4853     TEST_TARGET_SIZE (PDISPLAY_DEVICEA, 424)
4854     TEST_TARGET_ALIGN(PDISPLAY_DEVICEA, 4)
4855 }
4856
4857 static void test_pack_PDISPLAY_DEVICEW(void)
4858 {
4859     /* PDISPLAY_DEVICEW */
4860     TEST_TYPE_SIZE   (PDISPLAY_DEVICEW, 8)
4861     TEST_TYPE_ALIGN  (PDISPLAY_DEVICEW, 8)
4862     TEST_TARGET_SIZE (PDISPLAY_DEVICEW, 840)
4863     TEST_TARGET_ALIGN(PDISPLAY_DEVICEW, 4)
4864 }
4865
4866 static void test_pack_PELARRAY(void)
4867 {
4868     /* PELARRAY */
4869     TEST_TYPE_SIZE   (PELARRAY, 20)
4870     TEST_TYPE_ALIGN  (PELARRAY, 4)
4871     TEST_FIELD_SIZE  (PELARRAY, paXCount, 4)
4872     TEST_FIELD_ALIGN (PELARRAY, paXCount, 4)
4873     TEST_FIELD_OFFSET(PELARRAY, paXCount, 0)
4874     TEST_FIELD_SIZE  (PELARRAY, paYCount, 4)
4875     TEST_FIELD_ALIGN (PELARRAY, paYCount, 4)
4876     TEST_FIELD_OFFSET(PELARRAY, paYCount, 4)
4877     TEST_FIELD_SIZE  (PELARRAY, paXExt, 4)
4878     TEST_FIELD_ALIGN (PELARRAY, paXExt, 4)
4879     TEST_FIELD_OFFSET(PELARRAY, paXExt, 8)
4880     TEST_FIELD_SIZE  (PELARRAY, paYExt, 4)
4881     TEST_FIELD_ALIGN (PELARRAY, paYExt, 4)
4882     TEST_FIELD_OFFSET(PELARRAY, paYExt, 12)
4883     TEST_FIELD_SIZE  (PELARRAY, paRGBs, 1)
4884     TEST_FIELD_ALIGN (PELARRAY, paRGBs, 1)
4885     TEST_FIELD_OFFSET(PELARRAY, paRGBs, 16)
4886 }
4887
4888 static void test_pack_PEMR(void)
4889 {
4890     /* PEMR */
4891     TEST_TYPE_SIZE   (PEMR, 8)
4892     TEST_TYPE_ALIGN  (PEMR, 8)
4893     TEST_TARGET_SIZE (PEMR, 8)
4894     TEST_TARGET_ALIGN(PEMR, 4)
4895 }
4896
4897 static void test_pack_PEMRABORTPATH(void)
4898 {
4899     /* PEMRABORTPATH */
4900     TEST_TYPE_SIZE   (PEMRABORTPATH, 8)
4901     TEST_TYPE_ALIGN  (PEMRABORTPATH, 8)
4902     TEST_TARGET_SIZE (PEMRABORTPATH, 8)
4903     TEST_TARGET_ALIGN(PEMRABORTPATH, 4)
4904 }
4905
4906 static void test_pack_PEMRANGLEARC(void)
4907 {
4908     /* PEMRANGLEARC */
4909     TEST_TYPE_SIZE   (PEMRANGLEARC, 8)
4910     TEST_TYPE_ALIGN  (PEMRANGLEARC, 8)
4911     TEST_TARGET_SIZE (PEMRANGLEARC, 28)
4912     TEST_TARGET_ALIGN(PEMRANGLEARC, 4)
4913 }
4914
4915 static void test_pack_PEMRARC(void)
4916 {
4917     /* PEMRARC */
4918     TEST_TYPE_SIZE   (PEMRARC, 8)
4919     TEST_TYPE_ALIGN  (PEMRARC, 8)
4920     TEST_TARGET_SIZE (PEMRARC, 40)
4921     TEST_TARGET_ALIGN(PEMRARC, 4)
4922 }
4923
4924 static void test_pack_PEMRARCTO(void)
4925 {
4926     /* PEMRARCTO */
4927     TEST_TYPE_SIZE   (PEMRARCTO, 8)
4928     TEST_TYPE_ALIGN  (PEMRARCTO, 8)
4929     TEST_TARGET_SIZE (PEMRARCTO, 40)
4930     TEST_TARGET_ALIGN(PEMRARCTO, 4)
4931 }
4932
4933 static void test_pack_PEMRBEGINPATH(void)
4934 {
4935     /* PEMRBEGINPATH */
4936     TEST_TYPE_SIZE   (PEMRBEGINPATH, 8)
4937     TEST_TYPE_ALIGN  (PEMRBEGINPATH, 8)
4938     TEST_TARGET_SIZE (PEMRBEGINPATH, 8)
4939     TEST_TARGET_ALIGN(PEMRBEGINPATH, 4)
4940 }
4941
4942 static void test_pack_PEMRBITBLT(void)
4943 {
4944     /* PEMRBITBLT */
4945     TEST_TYPE_SIZE   (PEMRBITBLT, 8)
4946     TEST_TYPE_ALIGN  (PEMRBITBLT, 8)
4947     TEST_TARGET_SIZE (PEMRBITBLT, 100)
4948     TEST_TARGET_ALIGN(PEMRBITBLT, 4)
4949 }
4950
4951 static void test_pack_PEMRCHORD(void)
4952 {
4953     /* PEMRCHORD */
4954     TEST_TYPE_SIZE   (PEMRCHORD, 8)
4955     TEST_TYPE_ALIGN  (PEMRCHORD, 8)
4956     TEST_TARGET_SIZE (PEMRCHORD, 40)
4957     TEST_TARGET_ALIGN(PEMRCHORD, 4)
4958 }
4959
4960 static void test_pack_PEMRCLOSEFIGURE(void)
4961 {
4962     /* PEMRCLOSEFIGURE */
4963     TEST_TYPE_SIZE   (PEMRCLOSEFIGURE, 8)
4964     TEST_TYPE_ALIGN  (PEMRCLOSEFIGURE, 8)
4965     TEST_TARGET_SIZE (PEMRCLOSEFIGURE, 8)
4966     TEST_TARGET_ALIGN(PEMRCLOSEFIGURE, 4)
4967 }
4968
4969 static void test_pack_PEMRCREATEBRUSHINDIRECT(void)
4970 {
4971     /* PEMRCREATEBRUSHINDIRECT */
4972     TEST_TYPE_SIZE   (PEMRCREATEBRUSHINDIRECT, 8)
4973     TEST_TYPE_ALIGN  (PEMRCREATEBRUSHINDIRECT, 8)
4974     TEST_TARGET_SIZE (PEMRCREATEBRUSHINDIRECT, 24)
4975     TEST_TARGET_ALIGN(PEMRCREATEBRUSHINDIRECT, 4)
4976 }
4977
4978 static void test_pack_PEMRCREATECOLORSPACE(void)
4979 {
4980     /* PEMRCREATECOLORSPACE */
4981     TEST_TYPE_SIZE   (PEMRCREATECOLORSPACE, 8)
4982     TEST_TYPE_ALIGN  (PEMRCREATECOLORSPACE, 8)
4983     TEST_TARGET_SIZE (PEMRCREATECOLORSPACE, 340)
4984     TEST_TARGET_ALIGN(PEMRCREATECOLORSPACE, 4)
4985 }
4986
4987 static void test_pack_PEMRCREATECOLORSPACEW(void)
4988 {
4989     /* PEMRCREATECOLORSPACEW */
4990     TEST_TYPE_SIZE   (PEMRCREATECOLORSPACEW, 8)
4991     TEST_TYPE_ALIGN  (PEMRCREATECOLORSPACEW, 8)
4992     TEST_TARGET_SIZE (PEMRCREATECOLORSPACEW, 612)
4993     TEST_TARGET_ALIGN(PEMRCREATECOLORSPACEW, 4)
4994 }
4995
4996 static void test_pack_PEMRCREATEDIBPATTERNBRUSHPT(void)
4997 {
4998     /* PEMRCREATEDIBPATTERNBRUSHPT */
4999     TEST_TYPE_SIZE   (PEMRCREATEDIBPATTERNBRUSHPT, 8)
5000     TEST_TYPE_ALIGN  (PEMRCREATEDIBPATTERNBRUSHPT, 8)
5001     TEST_TARGET_SIZE (PEMRCREATEDIBPATTERNBRUSHPT, 32)
5002     TEST_TARGET_ALIGN(PEMRCREATEDIBPATTERNBRUSHPT, 4)
5003 }
5004
5005 static void test_pack_PEMRCREATEMONOBRUSH(void)
5006 {
5007     /* PEMRCREATEMONOBRUSH */
5008     TEST_TYPE_SIZE   (PEMRCREATEMONOBRUSH, 8)
5009     TEST_TYPE_ALIGN  (PEMRCREATEMONOBRUSH, 8)
5010     TEST_TARGET_SIZE (PEMRCREATEMONOBRUSH, 32)
5011     TEST_TARGET_ALIGN(PEMRCREATEMONOBRUSH, 4)
5012 }
5013
5014 static void test_pack_PEMRCREATEPALETTE(void)
5015 {
5016     /* PEMRCREATEPALETTE */
5017     TEST_TYPE_SIZE   (PEMRCREATEPALETTE, 8)
5018     TEST_TYPE_ALIGN  (PEMRCREATEPALETTE, 8)
5019     TEST_TARGET_SIZE (PEMRCREATEPALETTE, 20)
5020     TEST_TARGET_ALIGN(PEMRCREATEPALETTE, 4)
5021 }
5022
5023 static void test_pack_PEMRCREATEPEN(void)
5024 {
5025     /* PEMRCREATEPEN */
5026     TEST_TYPE_SIZE   (PEMRCREATEPEN, 8)
5027     TEST_TYPE_ALIGN  (PEMRCREATEPEN, 8)
5028     TEST_TARGET_SIZE (PEMRCREATEPEN, 28)
5029     TEST_TARGET_ALIGN(PEMRCREATEPEN, 4)
5030 }
5031
5032 static void test_pack_PEMRDELETECOLORSPACE(void)
5033 {
5034     /* PEMRDELETECOLORSPACE */
5035     TEST_TYPE_SIZE   (PEMRDELETECOLORSPACE, 8)
5036     TEST_TYPE_ALIGN  (PEMRDELETECOLORSPACE, 8)
5037     TEST_TARGET_SIZE (PEMRDELETECOLORSPACE, 12)
5038     TEST_TARGET_ALIGN(PEMRDELETECOLORSPACE, 4)
5039 }
5040
5041 static void test_pack_PEMRDELETEOBJECT(void)
5042 {
5043     /* PEMRDELETEOBJECT */
5044     TEST_TYPE_SIZE   (PEMRDELETEOBJECT, 8)
5045     TEST_TYPE_ALIGN  (PEMRDELETEOBJECT, 8)
5046     TEST_TARGET_SIZE (PEMRDELETEOBJECT, 12)
5047     TEST_TARGET_ALIGN(PEMRDELETEOBJECT, 4)
5048 }
5049
5050 static void test_pack_PEMRELLIPSE(void)
5051 {
5052     /* PEMRELLIPSE */
5053     TEST_TYPE_SIZE   (PEMRELLIPSE, 8)
5054     TEST_TYPE_ALIGN  (PEMRELLIPSE, 8)
5055     TEST_TARGET_SIZE (PEMRELLIPSE, 24)
5056     TEST_TARGET_ALIGN(PEMRELLIPSE, 4)
5057 }
5058
5059 static void test_pack_PEMRENDPATH(void)
5060 {
5061     /* PEMRENDPATH */
5062     TEST_TYPE_SIZE   (PEMRENDPATH, 8)
5063     TEST_TYPE_ALIGN  (PEMRENDPATH, 8)
5064     TEST_TARGET_SIZE (PEMRENDPATH, 8)
5065     TEST_TARGET_ALIGN(PEMRENDPATH, 4)
5066 }
5067
5068 static void test_pack_PEMREOF(void)
5069 {
5070     /* PEMREOF */
5071     TEST_TYPE_SIZE   (PEMREOF, 8)
5072     TEST_TYPE_ALIGN  (PEMREOF, 8)
5073     TEST_TARGET_SIZE (PEMREOF, 20)
5074     TEST_TARGET_ALIGN(PEMREOF, 4)
5075 }
5076
5077 static void test_pack_PEMREXCLUDECLIPRECT(void)
5078 {
5079     /* PEMREXCLUDECLIPRECT */
5080     TEST_TYPE_SIZE   (PEMREXCLUDECLIPRECT, 8)
5081     TEST_TYPE_ALIGN  (PEMREXCLUDECLIPRECT, 8)
5082     TEST_TARGET_SIZE (PEMREXCLUDECLIPRECT, 24)
5083     TEST_TARGET_ALIGN(PEMREXCLUDECLIPRECT, 4)
5084 }
5085
5086 static void test_pack_PEMREXTCREATEFONTINDIRECTW(void)
5087 {
5088     /* PEMREXTCREATEFONTINDIRECTW */
5089     TEST_TYPE_SIZE   (PEMREXTCREATEFONTINDIRECTW, 8)
5090     TEST_TYPE_ALIGN  (PEMREXTCREATEFONTINDIRECTW, 8)
5091     TEST_TARGET_SIZE (PEMREXTCREATEFONTINDIRECTW, 332)
5092     TEST_TARGET_ALIGN(PEMREXTCREATEFONTINDIRECTW, 4)
5093 }
5094
5095 static void test_pack_PEMREXTCREATEPEN(void)
5096 {
5097     /* PEMREXTCREATEPEN */
5098     TEST_TYPE_SIZE   (PEMREXTCREATEPEN, 8)
5099     TEST_TYPE_ALIGN  (PEMREXTCREATEPEN, 8)
5100     TEST_TARGET_SIZE (PEMREXTCREATEPEN, 64)
5101     TEST_TARGET_ALIGN(PEMREXTCREATEPEN, 8)
5102 }
5103
5104 static void test_pack_PEMREXTFLOODFILL(void)
5105 {
5106     /* PEMREXTFLOODFILL */
5107     TEST_TYPE_SIZE   (PEMREXTFLOODFILL, 8)
5108     TEST_TYPE_ALIGN  (PEMREXTFLOODFILL, 8)
5109     TEST_TARGET_SIZE (PEMREXTFLOODFILL, 24)
5110     TEST_TARGET_ALIGN(PEMREXTFLOODFILL, 4)
5111 }
5112
5113 static void test_pack_PEMREXTSELECTCLIPRGN(void)
5114 {
5115     /* PEMREXTSELECTCLIPRGN */
5116     TEST_TYPE_SIZE   (PEMREXTSELECTCLIPRGN, 8)
5117     TEST_TYPE_ALIGN  (PEMREXTSELECTCLIPRGN, 8)
5118     TEST_TARGET_SIZE (PEMREXTSELECTCLIPRGN, 20)
5119     TEST_TARGET_ALIGN(PEMREXTSELECTCLIPRGN, 4)
5120 }
5121
5122 static void test_pack_PEMREXTTEXTOUTA(void)
5123 {
5124     /* PEMREXTTEXTOUTA */
5125     TEST_TYPE_SIZE   (PEMREXTTEXTOUTA, 8)
5126     TEST_TYPE_ALIGN  (PEMREXTTEXTOUTA, 8)
5127     TEST_TARGET_SIZE (PEMREXTTEXTOUTA, 76)
5128     TEST_TARGET_ALIGN(PEMREXTTEXTOUTA, 4)
5129 }
5130
5131 static void test_pack_PEMREXTTEXTOUTW(void)
5132 {
5133     /* PEMREXTTEXTOUTW */
5134     TEST_TYPE_SIZE   (PEMREXTTEXTOUTW, 8)
5135     TEST_TYPE_ALIGN  (PEMREXTTEXTOUTW, 8)
5136     TEST_TARGET_SIZE (PEMREXTTEXTOUTW, 76)
5137     TEST_TARGET_ALIGN(PEMREXTTEXTOUTW, 4)
5138 }
5139
5140 static void test_pack_PEMRFILLPATH(void)
5141 {
5142     /* PEMRFILLPATH */
5143     TEST_TYPE_SIZE   (PEMRFILLPATH, 8)
5144     TEST_TYPE_ALIGN  (PEMRFILLPATH, 8)
5145     TEST_TARGET_SIZE (PEMRFILLPATH, 24)
5146     TEST_TARGET_ALIGN(PEMRFILLPATH, 4)
5147 }
5148
5149 static void test_pack_PEMRFILLRGN(void)
5150 {
5151     /* PEMRFILLRGN */
5152     TEST_TYPE_SIZE   (PEMRFILLRGN, 8)
5153     TEST_TYPE_ALIGN  (PEMRFILLRGN, 8)
5154     TEST_TARGET_SIZE (PEMRFILLRGN, 36)
5155     TEST_TARGET_ALIGN(PEMRFILLRGN, 4)
5156 }
5157
5158 static void test_pack_PEMRFLATTENPATH(void)
5159 {
5160     /* PEMRFLATTENPATH */
5161     TEST_TYPE_SIZE   (PEMRFLATTENPATH, 8)
5162     TEST_TYPE_ALIGN  (PEMRFLATTENPATH, 8)
5163     TEST_TARGET_SIZE (PEMRFLATTENPATH, 8)
5164     TEST_TARGET_ALIGN(PEMRFLATTENPATH, 4)
5165 }
5166
5167 static void test_pack_PEMRFORMAT(void)
5168 {
5169     /* PEMRFORMAT */
5170     TEST_TYPE_SIZE   (PEMRFORMAT, 8)
5171     TEST_TYPE_ALIGN  (PEMRFORMAT, 8)
5172     TEST_TARGET_SIZE (PEMRFORMAT, 16)
5173     TEST_TARGET_ALIGN(PEMRFORMAT, 4)
5174 }
5175
5176 static void test_pack_PEMRFRAMERGN(void)
5177 {
5178     /* PEMRFRAMERGN */
5179     TEST_TYPE_SIZE   (PEMRFRAMERGN, 8)
5180     TEST_TYPE_ALIGN  (PEMRFRAMERGN, 8)
5181     TEST_TARGET_SIZE (PEMRFRAMERGN, 44)
5182     TEST_TARGET_ALIGN(PEMRFRAMERGN, 4)
5183 }
5184
5185 static void test_pack_PEMRGDICOMMENT(void)
5186 {
5187     /* PEMRGDICOMMENT */
5188     TEST_TYPE_SIZE   (PEMRGDICOMMENT, 8)
5189     TEST_TYPE_ALIGN  (PEMRGDICOMMENT, 8)
5190     TEST_TARGET_SIZE (PEMRGDICOMMENT, 16)
5191     TEST_TARGET_ALIGN(PEMRGDICOMMENT, 4)
5192 }
5193
5194 static void test_pack_PEMRGLSBOUNDEDRECORD(void)
5195 {
5196     /* PEMRGLSBOUNDEDRECORD */
5197     TEST_TYPE_SIZE   (PEMRGLSBOUNDEDRECORD, 8)
5198     TEST_TYPE_ALIGN  (PEMRGLSBOUNDEDRECORD, 8)
5199     TEST_TARGET_SIZE (PEMRGLSBOUNDEDRECORD, 32)
5200     TEST_TARGET_ALIGN(PEMRGLSBOUNDEDRECORD, 4)
5201 }
5202
5203 static void test_pack_PEMRGLSRECORD(void)
5204 {
5205     /* PEMRGLSRECORD */
5206     TEST_TYPE_SIZE   (PEMRGLSRECORD, 8)
5207     TEST_TYPE_ALIGN  (PEMRGLSRECORD, 8)
5208     TEST_TARGET_SIZE (PEMRGLSRECORD, 16)
5209     TEST_TARGET_ALIGN(PEMRGLSRECORD, 4)
5210 }
5211
5212 static void test_pack_PEMRINTERSECTCLIPRECT(void)
5213 {
5214     /* PEMRINTERSECTCLIPRECT */
5215     TEST_TYPE_SIZE   (PEMRINTERSECTCLIPRECT, 8)
5216     TEST_TYPE_ALIGN  (PEMRINTERSECTCLIPRECT, 8)
5217     TEST_TARGET_SIZE (PEMRINTERSECTCLIPRECT, 24)
5218     TEST_TARGET_ALIGN(PEMRINTERSECTCLIPRECT, 4)
5219 }
5220
5221 static void test_pack_PEMRINVERTRGN(void)
5222 {
5223     /* PEMRINVERTRGN */
5224     TEST_TYPE_SIZE   (PEMRINVERTRGN, 8)
5225     TEST_TYPE_ALIGN  (PEMRINVERTRGN, 8)
5226     TEST_TARGET_SIZE (PEMRINVERTRGN, 32)
5227     TEST_TARGET_ALIGN(PEMRINVERTRGN, 4)
5228 }
5229
5230 static void test_pack_PEMRLINETO(void)
5231 {
5232     /* PEMRLINETO */
5233     TEST_TYPE_SIZE   (PEMRLINETO, 8)
5234     TEST_TYPE_ALIGN  (PEMRLINETO, 8)
5235     TEST_TARGET_SIZE (PEMRLINETO, 16)
5236     TEST_TARGET_ALIGN(PEMRLINETO, 4)
5237 }
5238
5239 static void test_pack_PEMRMASKBLT(void)
5240 {
5241     /* PEMRMASKBLT */
5242     TEST_TYPE_SIZE   (PEMRMASKBLT, 8)
5243     TEST_TYPE_ALIGN  (PEMRMASKBLT, 8)
5244     TEST_TARGET_SIZE (PEMRMASKBLT, 128)
5245     TEST_TARGET_ALIGN(PEMRMASKBLT, 4)
5246 }
5247
5248 static void test_pack_PEMRMODIFYWORLDTRANSFORM(void)
5249 {
5250     /* PEMRMODIFYWORLDTRANSFORM */
5251     TEST_TYPE_SIZE   (PEMRMODIFYWORLDTRANSFORM, 8)
5252     TEST_TYPE_ALIGN  (PEMRMODIFYWORLDTRANSFORM, 8)
5253     TEST_TARGET_SIZE (PEMRMODIFYWORLDTRANSFORM, 36)
5254     TEST_TARGET_ALIGN(PEMRMODIFYWORLDTRANSFORM, 4)
5255 }
5256
5257 static void test_pack_PEMRMOVETOEX(void)
5258 {
5259     /* PEMRMOVETOEX */
5260     TEST_TYPE_SIZE   (PEMRMOVETOEX, 8)
5261     TEST_TYPE_ALIGN  (PEMRMOVETOEX, 8)
5262     TEST_TARGET_SIZE (PEMRMOVETOEX, 16)
5263     TEST_TARGET_ALIGN(PEMRMOVETOEX, 4)
5264 }
5265
5266 static void test_pack_PEMROFFSETCLIPRGN(void)
5267 {
5268     /* PEMROFFSETCLIPRGN */
5269     TEST_TYPE_SIZE   (PEMROFFSETCLIPRGN, 8)
5270     TEST_TYPE_ALIGN  (PEMROFFSETCLIPRGN, 8)
5271     TEST_TARGET_SIZE (PEMROFFSETCLIPRGN, 16)
5272     TEST_TARGET_ALIGN(PEMROFFSETCLIPRGN, 4)
5273 }
5274
5275 static void test_pack_PEMRPAINTRGN(void)
5276 {
5277     /* PEMRPAINTRGN */
5278     TEST_TYPE_SIZE   (PEMRPAINTRGN, 8)
5279     TEST_TYPE_ALIGN  (PEMRPAINTRGN, 8)
5280     TEST_TARGET_SIZE (PEMRPAINTRGN, 32)
5281     TEST_TARGET_ALIGN(PEMRPAINTRGN, 4)
5282 }
5283
5284 static void test_pack_PEMRPIE(void)
5285 {
5286     /* PEMRPIE */
5287     TEST_TYPE_SIZE   (PEMRPIE, 8)
5288     TEST_TYPE_ALIGN  (PEMRPIE, 8)
5289     TEST_TARGET_SIZE (PEMRPIE, 40)
5290     TEST_TARGET_ALIGN(PEMRPIE, 4)
5291 }
5292
5293 static void test_pack_PEMRPIXELFORMAT(void)
5294 {
5295     /* PEMRPIXELFORMAT */
5296     TEST_TYPE_SIZE   (PEMRPIXELFORMAT, 8)
5297     TEST_TYPE_ALIGN  (PEMRPIXELFORMAT, 8)
5298     TEST_TARGET_SIZE (PEMRPIXELFORMAT, 48)
5299     TEST_TARGET_ALIGN(PEMRPIXELFORMAT, 4)
5300 }
5301
5302 static void test_pack_PEMRPLGBLT(void)
5303 {
5304     /* PEMRPLGBLT */
5305     TEST_TYPE_SIZE   (PEMRPLGBLT, 8)
5306     TEST_TYPE_ALIGN  (PEMRPLGBLT, 8)
5307     TEST_TARGET_SIZE (PEMRPLGBLT, 140)
5308     TEST_TARGET_ALIGN(PEMRPLGBLT, 4)
5309 }
5310
5311 static void test_pack_PEMRPOLYBEZIER(void)
5312 {
5313     /* PEMRPOLYBEZIER */
5314     TEST_TYPE_SIZE   (PEMRPOLYBEZIER, 8)
5315     TEST_TYPE_ALIGN  (PEMRPOLYBEZIER, 8)
5316     TEST_TARGET_SIZE (PEMRPOLYBEZIER, 36)
5317     TEST_TARGET_ALIGN(PEMRPOLYBEZIER, 4)
5318 }
5319
5320 static void test_pack_PEMRPOLYBEZIER16(void)
5321 {
5322     /* PEMRPOLYBEZIER16 */
5323     TEST_TYPE_SIZE   (PEMRPOLYBEZIER16, 8)
5324     TEST_TYPE_ALIGN  (PEMRPOLYBEZIER16, 8)
5325     TEST_TARGET_SIZE (PEMRPOLYBEZIER16, 32)
5326     TEST_TARGET_ALIGN(PEMRPOLYBEZIER16, 4)
5327 }
5328
5329 static void test_pack_PEMRPOLYBEZIERTO(void)
5330 {
5331     /* PEMRPOLYBEZIERTO */
5332     TEST_TYPE_SIZE   (PEMRPOLYBEZIERTO, 8)
5333     TEST_TYPE_ALIGN  (PEMRPOLYBEZIERTO, 8)
5334     TEST_TARGET_SIZE (PEMRPOLYBEZIERTO, 36)
5335     TEST_TARGET_ALIGN(PEMRPOLYBEZIERTO, 4)
5336 }
5337
5338 static void test_pack_PEMRPOLYBEZIERTO16(void)
5339 {
5340     /* PEMRPOLYBEZIERTO16 */
5341     TEST_TYPE_SIZE   (PEMRPOLYBEZIERTO16, 8)
5342     TEST_TYPE_ALIGN  (PEMRPOLYBEZIERTO16, 8)
5343     TEST_TARGET_SIZE (PEMRPOLYBEZIERTO16, 32)
5344     TEST_TARGET_ALIGN(PEMRPOLYBEZIERTO16, 4)
5345 }
5346
5347 static void test_pack_PEMRPOLYDRAW(void)
5348 {
5349     /* PEMRPOLYDRAW */
5350     TEST_TYPE_SIZE   (PEMRPOLYDRAW, 8)
5351     TEST_TYPE_ALIGN  (PEMRPOLYDRAW, 8)
5352     TEST_TARGET_SIZE (PEMRPOLYDRAW, 40)
5353     TEST_TARGET_ALIGN(PEMRPOLYDRAW, 4)
5354 }
5355
5356 static void test_pack_PEMRPOLYDRAW16(void)
5357 {
5358     /* PEMRPOLYDRAW16 */
5359     TEST_TYPE_SIZE   (PEMRPOLYDRAW16, 8)
5360     TEST_TYPE_ALIGN  (PEMRPOLYDRAW16, 8)
5361     TEST_TARGET_SIZE (PEMRPOLYDRAW16, 36)
5362     TEST_TARGET_ALIGN(PEMRPOLYDRAW16, 4)
5363 }
5364
5365 static void test_pack_PEMRPOLYGON(void)
5366 {
5367     /* PEMRPOLYGON */
5368     TEST_TYPE_SIZE   (PEMRPOLYGON, 8)
5369     TEST_TYPE_ALIGN  (PEMRPOLYGON, 8)
5370     TEST_TARGET_SIZE (PEMRPOLYGON, 36)
5371     TEST_TARGET_ALIGN(PEMRPOLYGON, 4)
5372 }
5373
5374 static void test_pack_PEMRPOLYGON16(void)
5375 {
5376     /* PEMRPOLYGON16 */
5377     TEST_TYPE_SIZE   (PEMRPOLYGON16, 8)
5378     TEST_TYPE_ALIGN  (PEMRPOLYGON16, 8)
5379     TEST_TARGET_SIZE (PEMRPOLYGON16, 32)
5380     TEST_TARGET_ALIGN(PEMRPOLYGON16, 4)
5381 }
5382
5383 static void test_pack_PEMRPOLYLINE(void)
5384 {
5385     /* PEMRPOLYLINE */
5386     TEST_TYPE_SIZE   (PEMRPOLYLINE, 8)
5387     TEST_TYPE_ALIGN  (PEMRPOLYLINE, 8)
5388     TEST_TARGET_SIZE (PEMRPOLYLINE, 36)
5389     TEST_TARGET_ALIGN(PEMRPOLYLINE, 4)
5390 }
5391
5392 static void test_pack_PEMRPOLYLINE16(void)
5393 {
5394     /* PEMRPOLYLINE16 */
5395     TEST_TYPE_SIZE   (PEMRPOLYLINE16, 8)
5396     TEST_TYPE_ALIGN  (PEMRPOLYLINE16, 8)
5397     TEST_TARGET_SIZE (PEMRPOLYLINE16, 32)
5398     TEST_TARGET_ALIGN(PEMRPOLYLINE16, 4)
5399 }
5400
5401 static void test_pack_PEMRPOLYLINETO(void)
5402 {
5403     /* PEMRPOLYLINETO */
5404     TEST_TYPE_SIZE   (PEMRPOLYLINETO, 8)
5405     TEST_TYPE_ALIGN  (PEMRPOLYLINETO, 8)
5406     TEST_TARGET_SIZE (PEMRPOLYLINETO, 36)
5407     TEST_TARGET_ALIGN(PEMRPOLYLINETO, 4)
5408 }
5409
5410 static void test_pack_PEMRPOLYLINETO16(void)
5411 {
5412     /* PEMRPOLYLINETO16 */
5413     TEST_TYPE_SIZE   (PEMRPOLYLINETO16, 8)
5414     TEST_TYPE_ALIGN  (PEMRPOLYLINETO16, 8)
5415     TEST_TARGET_SIZE (PEMRPOLYLINETO16, 32)
5416     TEST_TARGET_ALIGN(PEMRPOLYLINETO16, 4)
5417 }
5418
5419 static void test_pack_PEMRPOLYPOLYGON(void)
5420 {
5421     /* PEMRPOLYPOLYGON */
5422     TEST_TYPE_SIZE   (PEMRPOLYPOLYGON, 8)
5423     TEST_TYPE_ALIGN  (PEMRPOLYPOLYGON, 8)
5424     TEST_TARGET_SIZE (PEMRPOLYPOLYGON, 44)
5425     TEST_TARGET_ALIGN(PEMRPOLYPOLYGON, 4)
5426 }
5427
5428 static void test_pack_PEMRPOLYPOLYGON16(void)
5429 {
5430     /* PEMRPOLYPOLYGON16 */
5431     TEST_TYPE_SIZE   (PEMRPOLYPOLYGON16, 8)
5432     TEST_TYPE_ALIGN  (PEMRPOLYPOLYGON16, 8)
5433     TEST_TARGET_SIZE (PEMRPOLYPOLYGON16, 40)
5434     TEST_TARGET_ALIGN(PEMRPOLYPOLYGON16, 4)
5435 }
5436
5437 static void test_pack_PEMRPOLYPOLYLINE(void)
5438 {
5439     /* PEMRPOLYPOLYLINE */
5440     TEST_TYPE_SIZE   (PEMRPOLYPOLYLINE, 8)
5441     TEST_TYPE_ALIGN  (PEMRPOLYPOLYLINE, 8)
5442     TEST_TARGET_SIZE (PEMRPOLYPOLYLINE, 44)
5443     TEST_TARGET_ALIGN(PEMRPOLYPOLYLINE, 4)
5444 }
5445
5446 static void test_pack_PEMRPOLYPOLYLINE16(void)
5447 {
5448     /* PEMRPOLYPOLYLINE16 */
5449     TEST_TYPE_SIZE   (PEMRPOLYPOLYLINE16, 8)
5450     TEST_TYPE_ALIGN  (PEMRPOLYPOLYLINE16, 8)
5451     TEST_TARGET_SIZE (PEMRPOLYPOLYLINE16, 40)
5452     TEST_TARGET_ALIGN(PEMRPOLYPOLYLINE16, 4)
5453 }
5454
5455 static void test_pack_PEMRPOLYTEXTOUTA(void)
5456 {
5457     /* PEMRPOLYTEXTOUTA */
5458     TEST_TYPE_SIZE   (PEMRPOLYTEXTOUTA, 8)
5459     TEST_TYPE_ALIGN  (PEMRPOLYTEXTOUTA, 8)
5460     TEST_TARGET_SIZE (PEMRPOLYTEXTOUTA, 80)
5461     TEST_TARGET_ALIGN(PEMRPOLYTEXTOUTA, 4)
5462 }
5463
5464 static void test_pack_PEMRPOLYTEXTOUTW(void)
5465 {
5466     /* PEMRPOLYTEXTOUTW */
5467     TEST_TYPE_SIZE   (PEMRPOLYTEXTOUTW, 8)
5468     TEST_TYPE_ALIGN  (PEMRPOLYTEXTOUTW, 8)
5469     TEST_TARGET_SIZE (PEMRPOLYTEXTOUTW, 80)
5470     TEST_TARGET_ALIGN(PEMRPOLYTEXTOUTW, 4)
5471 }
5472
5473 static void test_pack_PEMRREALIZEPALETTE(void)
5474 {
5475     /* PEMRREALIZEPALETTE */
5476     TEST_TYPE_SIZE   (PEMRREALIZEPALETTE, 8)
5477     TEST_TYPE_ALIGN  (PEMRREALIZEPALETTE, 8)
5478     TEST_TARGET_SIZE (PEMRREALIZEPALETTE, 8)
5479     TEST_TARGET_ALIGN(PEMRREALIZEPALETTE, 4)
5480 }
5481
5482 static void test_pack_PEMRRECTANGLE(void)
5483 {
5484     /* PEMRRECTANGLE */
5485     TEST_TYPE_SIZE   (PEMRRECTANGLE, 8)
5486     TEST_TYPE_ALIGN  (PEMRRECTANGLE, 8)
5487     TEST_TARGET_SIZE (PEMRRECTANGLE, 24)
5488     TEST_TARGET_ALIGN(PEMRRECTANGLE, 4)
5489 }
5490
5491 static void test_pack_PEMRRESIZEPALETTE(void)
5492 {
5493     /* PEMRRESIZEPALETTE */
5494     TEST_TYPE_SIZE   (PEMRRESIZEPALETTE, 8)
5495     TEST_TYPE_ALIGN  (PEMRRESIZEPALETTE, 8)
5496     TEST_TARGET_SIZE (PEMRRESIZEPALETTE, 16)
5497     TEST_TARGET_ALIGN(PEMRRESIZEPALETTE, 4)
5498 }
5499
5500 static void test_pack_PEMRRESTOREDC(void)
5501 {
5502     /* PEMRRESTOREDC */
5503     TEST_TYPE_SIZE   (PEMRRESTOREDC, 8)
5504     TEST_TYPE_ALIGN  (PEMRRESTOREDC, 8)
5505     TEST_TARGET_SIZE (PEMRRESTOREDC, 12)
5506     TEST_TARGET_ALIGN(PEMRRESTOREDC, 4)
5507 }
5508
5509 static void test_pack_PEMRROUNDRECT(void)
5510 {
5511     /* PEMRROUNDRECT */
5512     TEST_TYPE_SIZE   (PEMRROUNDRECT, 8)
5513     TEST_TYPE_ALIGN  (PEMRROUNDRECT, 8)
5514     TEST_TARGET_SIZE (PEMRROUNDRECT, 32)
5515     TEST_TARGET_ALIGN(PEMRROUNDRECT, 4)
5516 }
5517
5518 static void test_pack_PEMRSAVEDC(void)
5519 {
5520     /* PEMRSAVEDC */
5521     TEST_TYPE_SIZE   (PEMRSAVEDC, 8)
5522     TEST_TYPE_ALIGN  (PEMRSAVEDC, 8)
5523     TEST_TARGET_SIZE (PEMRSAVEDC, 8)
5524     TEST_TARGET_ALIGN(PEMRSAVEDC, 4)
5525 }
5526
5527 static void test_pack_PEMRSCALEVIEWPORTEXTEX(void)
5528 {
5529     /* PEMRSCALEVIEWPORTEXTEX */
5530     TEST_TYPE_SIZE   (PEMRSCALEVIEWPORTEXTEX, 8)
5531     TEST_TYPE_ALIGN  (PEMRSCALEVIEWPORTEXTEX, 8)
5532     TEST_TARGET_SIZE (PEMRSCALEVIEWPORTEXTEX, 24)
5533     TEST_TARGET_ALIGN(PEMRSCALEVIEWPORTEXTEX, 4)
5534 }
5535
5536 static void test_pack_PEMRSCALEWINDOWEXTEX(void)
5537 {
5538     /* PEMRSCALEWINDOWEXTEX */
5539     TEST_TYPE_SIZE   (PEMRSCALEWINDOWEXTEX, 8)
5540     TEST_TYPE_ALIGN  (PEMRSCALEWINDOWEXTEX, 8)
5541     TEST_TARGET_SIZE (PEMRSCALEWINDOWEXTEX, 24)
5542     TEST_TARGET_ALIGN(PEMRSCALEWINDOWEXTEX, 4)
5543 }
5544
5545 static void test_pack_PEMRSELECTCLIPPATH(void)
5546 {
5547     /* PEMRSELECTCLIPPATH */
5548     TEST_TYPE_SIZE   (PEMRSELECTCLIPPATH, 8)
5549     TEST_TYPE_ALIGN  (PEMRSELECTCLIPPATH, 8)
5550     TEST_TARGET_SIZE (PEMRSELECTCLIPPATH, 12)
5551     TEST_TARGET_ALIGN(PEMRSELECTCLIPPATH, 4)
5552 }
5553
5554 static void test_pack_PEMRSELECTCOLORSPACE(void)
5555 {
5556     /* PEMRSELECTCOLORSPACE */
5557     TEST_TYPE_SIZE   (PEMRSELECTCOLORSPACE, 8)
5558     TEST_TYPE_ALIGN  (PEMRSELECTCOLORSPACE, 8)
5559     TEST_TARGET_SIZE (PEMRSELECTCOLORSPACE, 12)
5560     TEST_TARGET_ALIGN(PEMRSELECTCOLORSPACE, 4)
5561 }
5562
5563 static void test_pack_PEMRSELECTOBJECT(void)
5564 {
5565     /* PEMRSELECTOBJECT */
5566     TEST_TYPE_SIZE   (PEMRSELECTOBJECT, 8)
5567     TEST_TYPE_ALIGN  (PEMRSELECTOBJECT, 8)
5568     TEST_TARGET_SIZE (PEMRSELECTOBJECT, 12)
5569     TEST_TARGET_ALIGN(PEMRSELECTOBJECT, 4)
5570 }
5571
5572 static void test_pack_PEMRSELECTPALETTE(void)
5573 {
5574     /* PEMRSELECTPALETTE */
5575     TEST_TYPE_SIZE   (PEMRSELECTPALETTE, 8)
5576     TEST_TYPE_ALIGN  (PEMRSELECTPALETTE, 8)
5577     TEST_TARGET_SIZE (PEMRSELECTPALETTE, 12)
5578     TEST_TARGET_ALIGN(PEMRSELECTPALETTE, 4)
5579 }
5580
5581 static void test_pack_PEMRSETARCDIRECTION(void)
5582 {
5583     /* PEMRSETARCDIRECTION */
5584     TEST_TYPE_SIZE   (PEMRSETARCDIRECTION, 8)
5585     TEST_TYPE_ALIGN  (PEMRSETARCDIRECTION, 8)
5586     TEST_TARGET_SIZE (PEMRSETARCDIRECTION, 12)
5587     TEST_TARGET_ALIGN(PEMRSETARCDIRECTION, 4)
5588 }
5589
5590 static void test_pack_PEMRSETBKCOLOR(void)
5591 {
5592     /* PEMRSETBKCOLOR */
5593     TEST_TYPE_SIZE   (PEMRSETBKCOLOR, 8)
5594     TEST_TYPE_ALIGN  (PEMRSETBKCOLOR, 8)
5595     TEST_TARGET_SIZE (PEMRSETBKCOLOR, 12)
5596     TEST_TARGET_ALIGN(PEMRSETBKCOLOR, 4)
5597 }
5598
5599 static void test_pack_PEMRSETBKMODE(void)
5600 {
5601     /* PEMRSETBKMODE */
5602     TEST_TYPE_SIZE   (PEMRSETBKMODE, 8)
5603     TEST_TYPE_ALIGN  (PEMRSETBKMODE, 8)
5604     TEST_TARGET_SIZE (PEMRSETBKMODE, 12)
5605     TEST_TARGET_ALIGN(PEMRSETBKMODE, 4)
5606 }
5607
5608 static void test_pack_PEMRSETBRUSHORGEX(void)
5609 {
5610     /* PEMRSETBRUSHORGEX */
5611     TEST_TYPE_SIZE   (PEMRSETBRUSHORGEX, 8)
5612     TEST_TYPE_ALIGN  (PEMRSETBRUSHORGEX, 8)
5613     TEST_TARGET_SIZE (PEMRSETBRUSHORGEX, 16)
5614     TEST_TARGET_ALIGN(PEMRSETBRUSHORGEX, 4)
5615 }
5616
5617 static void test_pack_PEMRSETCOLORADJUSTMENT(void)
5618 {
5619     /* PEMRSETCOLORADJUSTMENT */
5620     TEST_TYPE_SIZE   (PEMRSETCOLORADJUSTMENT, 8)
5621     TEST_TYPE_ALIGN  (PEMRSETCOLORADJUSTMENT, 8)
5622     TEST_TARGET_SIZE (PEMRSETCOLORADJUSTMENT, 32)
5623     TEST_TARGET_ALIGN(PEMRSETCOLORADJUSTMENT, 4)
5624 }
5625
5626 static void test_pack_PEMRSETCOLORSPACE(void)
5627 {
5628     /* PEMRSETCOLORSPACE */
5629     TEST_TYPE_SIZE   (PEMRSETCOLORSPACE, 8)
5630     TEST_TYPE_ALIGN  (PEMRSETCOLORSPACE, 8)
5631     TEST_TARGET_SIZE (PEMRSETCOLORSPACE, 12)
5632     TEST_TARGET_ALIGN(PEMRSETCOLORSPACE, 4)
5633 }
5634
5635 static void test_pack_PEMRSETDIBITSTODEVICE(void)
5636 {
5637     /* PEMRSETDIBITSTODEVICE */
5638     TEST_TYPE_SIZE   (PEMRSETDIBITSTODEVICE, 8)
5639     TEST_TYPE_ALIGN  (PEMRSETDIBITSTODEVICE, 8)
5640     TEST_TARGET_SIZE (PEMRSETDIBITSTODEVICE, 76)
5641     TEST_TARGET_ALIGN(PEMRSETDIBITSTODEVICE, 4)
5642 }
5643
5644 static void test_pack_PEMRSETICMMODE(void)
5645 {
5646     /* PEMRSETICMMODE */
5647     TEST_TYPE_SIZE   (PEMRSETICMMODE, 8)
5648     TEST_TYPE_ALIGN  (PEMRSETICMMODE, 8)
5649     TEST_TARGET_SIZE (PEMRSETICMMODE, 12)
5650     TEST_TARGET_ALIGN(PEMRSETICMMODE, 4)
5651 }
5652
5653 static void test_pack_PEMRSETLAYOUT(void)
5654 {
5655     /* PEMRSETLAYOUT */
5656     TEST_TYPE_SIZE   (PEMRSETLAYOUT, 8)
5657     TEST_TYPE_ALIGN  (PEMRSETLAYOUT, 8)
5658     TEST_TARGET_SIZE (PEMRSETLAYOUT, 12)
5659     TEST_TARGET_ALIGN(PEMRSETLAYOUT, 4)
5660 }
5661
5662 static void test_pack_PEMRSETMAPMODE(void)
5663 {
5664     /* PEMRSETMAPMODE */
5665     TEST_TYPE_SIZE   (PEMRSETMAPMODE, 8)
5666     TEST_TYPE_ALIGN  (PEMRSETMAPMODE, 8)
5667     TEST_TARGET_SIZE (PEMRSETMAPMODE, 12)
5668     TEST_TARGET_ALIGN(PEMRSETMAPMODE, 4)
5669 }
5670
5671 static void test_pack_PEMRSETMAPPERFLAGS(void)
5672 {
5673     /* PEMRSETMAPPERFLAGS */
5674     TEST_TYPE_SIZE   (PEMRSETMAPPERFLAGS, 8)
5675     TEST_TYPE_ALIGN  (PEMRSETMAPPERFLAGS, 8)
5676     TEST_TARGET_SIZE (PEMRSETMAPPERFLAGS, 12)
5677     TEST_TARGET_ALIGN(PEMRSETMAPPERFLAGS, 4)
5678 }
5679
5680 static void test_pack_PEMRSETMETARGN(void)
5681 {
5682     /* PEMRSETMETARGN */
5683     TEST_TYPE_SIZE   (PEMRSETMETARGN, 8)
5684     TEST_TYPE_ALIGN  (PEMRSETMETARGN, 8)
5685     TEST_TARGET_SIZE (PEMRSETMETARGN, 8)
5686     TEST_TARGET_ALIGN(PEMRSETMETARGN, 4)
5687 }
5688
5689 static void test_pack_PEMRSETMITERLIMIT(void)
5690 {
5691     /* PEMRSETMITERLIMIT */
5692     TEST_TYPE_SIZE   (PEMRSETMITERLIMIT, 8)
5693     TEST_TYPE_ALIGN  (PEMRSETMITERLIMIT, 8)
5694     TEST_TARGET_SIZE (PEMRSETMITERLIMIT, 12)
5695     TEST_TARGET_ALIGN(PEMRSETMITERLIMIT, 4)
5696 }
5697
5698 static void test_pack_PEMRSETPALETTEENTRIES(void)
5699 {
5700     /* PEMRSETPALETTEENTRIES */
5701     TEST_TYPE_SIZE   (PEMRSETPALETTEENTRIES, 8)
5702     TEST_TYPE_ALIGN  (PEMRSETPALETTEENTRIES, 8)
5703     TEST_TARGET_SIZE (PEMRSETPALETTEENTRIES, 24)
5704     TEST_TARGET_ALIGN(PEMRSETPALETTEENTRIES, 4)
5705 }
5706
5707 static void test_pack_PEMRSETPIXELV(void)
5708 {
5709     /* PEMRSETPIXELV */
5710     TEST_TYPE_SIZE   (PEMRSETPIXELV, 8)
5711     TEST_TYPE_ALIGN  (PEMRSETPIXELV, 8)
5712     TEST_TARGET_SIZE (PEMRSETPIXELV, 20)
5713     TEST_TARGET_ALIGN(PEMRSETPIXELV, 4)
5714 }
5715
5716 static void test_pack_PEMRSETPOLYFILLMODE(void)
5717 {
5718     /* PEMRSETPOLYFILLMODE */
5719     TEST_TYPE_SIZE   (PEMRSETPOLYFILLMODE, 8)
5720     TEST_TYPE_ALIGN  (PEMRSETPOLYFILLMODE, 8)
5721     TEST_TARGET_SIZE (PEMRSETPOLYFILLMODE, 12)
5722     TEST_TARGET_ALIGN(PEMRSETPOLYFILLMODE, 4)
5723 }
5724
5725 static void test_pack_PEMRSETROP2(void)
5726 {
5727     /* PEMRSETROP2 */
5728     TEST_TYPE_SIZE   (PEMRSETROP2, 8)
5729     TEST_TYPE_ALIGN  (PEMRSETROP2, 8)
5730     TEST_TARGET_SIZE (PEMRSETROP2, 12)
5731     TEST_TARGET_ALIGN(PEMRSETROP2, 4)
5732 }
5733
5734 static void test_pack_PEMRSETSTRETCHBLTMODE(void)
5735 {
5736     /* PEMRSETSTRETCHBLTMODE */
5737     TEST_TYPE_SIZE   (PEMRSETSTRETCHBLTMODE, 8)
5738     TEST_TYPE_ALIGN  (PEMRSETSTRETCHBLTMODE, 8)
5739     TEST_TARGET_SIZE (PEMRSETSTRETCHBLTMODE, 12)
5740     TEST_TARGET_ALIGN(PEMRSETSTRETCHBLTMODE, 4)
5741 }
5742
5743 static void test_pack_PEMRSETTEXTALIGN(void)
5744 {
5745     /* PEMRSETTEXTALIGN */
5746     TEST_TYPE_SIZE   (PEMRSETTEXTALIGN, 8)
5747     TEST_TYPE_ALIGN  (PEMRSETTEXTALIGN, 8)
5748     TEST_TARGET_SIZE (PEMRSETTEXTALIGN, 12)
5749     TEST_TARGET_ALIGN(PEMRSETTEXTALIGN, 4)
5750 }
5751
5752 static void test_pack_PEMRSETTEXTCOLOR(void)
5753 {
5754     /* PEMRSETTEXTCOLOR */
5755     TEST_TYPE_SIZE   (PEMRSETTEXTCOLOR, 8)
5756     TEST_TYPE_ALIGN  (PEMRSETTEXTCOLOR, 8)
5757     TEST_TARGET_SIZE (PEMRSETTEXTCOLOR, 12)
5758     TEST_TARGET_ALIGN(PEMRSETTEXTCOLOR, 4)
5759 }
5760
5761 static void test_pack_PEMRSETVIEWPORTEXTEX(void)
5762 {
5763     /* PEMRSETVIEWPORTEXTEX */
5764     TEST_TYPE_SIZE   (PEMRSETVIEWPORTEXTEX, 8)
5765     TEST_TYPE_ALIGN  (PEMRSETVIEWPORTEXTEX, 8)
5766     TEST_TARGET_SIZE (PEMRSETVIEWPORTEXTEX, 16)
5767     TEST_TARGET_ALIGN(PEMRSETVIEWPORTEXTEX, 4)
5768 }
5769
5770 static void test_pack_PEMRSETVIEWPORTORGEX(void)
5771 {
5772     /* PEMRSETVIEWPORTORGEX */
5773     TEST_TYPE_SIZE   (PEMRSETVIEWPORTORGEX, 8)
5774     TEST_TYPE_ALIGN  (PEMRSETVIEWPORTORGEX, 8)
5775     TEST_TARGET_SIZE (PEMRSETVIEWPORTORGEX, 16)
5776     TEST_TARGET_ALIGN(PEMRSETVIEWPORTORGEX, 4)
5777 }
5778
5779 static void test_pack_PEMRSETWINDOWEXTEX(void)
5780 {
5781     /* PEMRSETWINDOWEXTEX */
5782     TEST_TYPE_SIZE   (PEMRSETWINDOWEXTEX, 8)
5783     TEST_TYPE_ALIGN  (PEMRSETWINDOWEXTEX, 8)
5784     TEST_TARGET_SIZE (PEMRSETWINDOWEXTEX, 16)
5785     TEST_TARGET_ALIGN(PEMRSETWINDOWEXTEX, 4)
5786 }
5787
5788 static void test_pack_PEMRSETWINDOWORGEX(void)
5789 {
5790     /* PEMRSETWINDOWORGEX */
5791     TEST_TYPE_SIZE   (PEMRSETWINDOWORGEX, 8)
5792     TEST_TYPE_ALIGN  (PEMRSETWINDOWORGEX, 8)
5793     TEST_TARGET_SIZE (PEMRSETWINDOWORGEX, 16)
5794     TEST_TARGET_ALIGN(PEMRSETWINDOWORGEX, 4)
5795 }
5796
5797 static void test_pack_PEMRSETWORLDTRANSFORM(void)
5798 {
5799     /* PEMRSETWORLDTRANSFORM */
5800     TEST_TYPE_SIZE   (PEMRSETWORLDTRANSFORM, 8)
5801     TEST_TYPE_ALIGN  (PEMRSETWORLDTRANSFORM, 8)
5802     TEST_TARGET_SIZE (PEMRSETWORLDTRANSFORM, 32)
5803     TEST_TARGET_ALIGN(PEMRSETWORLDTRANSFORM, 4)
5804 }
5805
5806 static void test_pack_PEMRSTRETCHBLT(void)
5807 {
5808     /* PEMRSTRETCHBLT */
5809     TEST_TYPE_SIZE   (PEMRSTRETCHBLT, 8)
5810     TEST_TYPE_ALIGN  (PEMRSTRETCHBLT, 8)
5811     TEST_TARGET_SIZE (PEMRSTRETCHBLT, 108)
5812     TEST_TARGET_ALIGN(PEMRSTRETCHBLT, 4)
5813 }
5814
5815 static void test_pack_PEMRSTRETCHDIBITS(void)
5816 {
5817     /* PEMRSTRETCHDIBITS */
5818     TEST_TYPE_SIZE   (PEMRSTRETCHDIBITS, 8)
5819     TEST_TYPE_ALIGN  (PEMRSTRETCHDIBITS, 8)
5820     TEST_TARGET_SIZE (PEMRSTRETCHDIBITS, 80)
5821     TEST_TARGET_ALIGN(PEMRSTRETCHDIBITS, 4)
5822 }
5823
5824 static void test_pack_PEMRSTROKEANDFILLPATH(void)
5825 {
5826     /* PEMRSTROKEANDFILLPATH */
5827     TEST_TYPE_SIZE   (PEMRSTROKEANDFILLPATH, 8)
5828     TEST_TYPE_ALIGN  (PEMRSTROKEANDFILLPATH, 8)
5829     TEST_TARGET_SIZE (PEMRSTROKEANDFILLPATH, 24)
5830     TEST_TARGET_ALIGN(PEMRSTROKEANDFILLPATH, 4)
5831 }
5832
5833 static void test_pack_PEMRSTROKEPATH(void)
5834 {
5835     /* PEMRSTROKEPATH */
5836     TEST_TYPE_SIZE   (PEMRSTROKEPATH, 8)
5837     TEST_TYPE_ALIGN  (PEMRSTROKEPATH, 8)
5838     TEST_TARGET_SIZE (PEMRSTROKEPATH, 24)
5839     TEST_TARGET_ALIGN(PEMRSTROKEPATH, 4)
5840 }
5841
5842 static void test_pack_PEMRTEXT(void)
5843 {
5844     /* PEMRTEXT */
5845     TEST_TYPE_SIZE   (PEMRTEXT, 8)
5846     TEST_TYPE_ALIGN  (PEMRTEXT, 8)
5847     TEST_TARGET_SIZE (PEMRTEXT, 40)
5848     TEST_TARGET_ALIGN(PEMRTEXT, 4)
5849 }
5850
5851 static void test_pack_PEMRWIDENPATH(void)
5852 {
5853     /* PEMRWIDENPATH */
5854     TEST_TYPE_SIZE   (PEMRWIDENPATH, 8)
5855     TEST_TYPE_ALIGN  (PEMRWIDENPATH, 8)
5856     TEST_TARGET_SIZE (PEMRWIDENPATH, 8)
5857     TEST_TARGET_ALIGN(PEMRWIDENPATH, 4)
5858 }
5859
5860 static void test_pack_PENHMETAHEADER(void)
5861 {
5862     /* PENHMETAHEADER */
5863     TEST_TYPE_SIZE   (PENHMETAHEADER, 8)
5864     TEST_TYPE_ALIGN  (PENHMETAHEADER, 8)
5865     TEST_TARGET_SIZE (PENHMETAHEADER, 108)
5866     TEST_TARGET_ALIGN(PENHMETAHEADER, 4)
5867 }
5868
5869 static void test_pack_PEXTLOGFONTA(void)
5870 {
5871     /* PEXTLOGFONTA */
5872     TEST_TYPE_SIZE   (PEXTLOGFONTA, 8)
5873     TEST_TYPE_ALIGN  (PEXTLOGFONTA, 8)
5874     TEST_TARGET_SIZE (PEXTLOGFONTA, 192)
5875     TEST_TARGET_ALIGN(PEXTLOGFONTA, 4)
5876 }
5877
5878 static void test_pack_PEXTLOGFONTW(void)
5879 {
5880     /* PEXTLOGFONTW */
5881     TEST_TYPE_SIZE   (PEXTLOGFONTW, 8)
5882     TEST_TYPE_ALIGN  (PEXTLOGFONTW, 8)
5883     TEST_TARGET_SIZE (PEXTLOGFONTW, 320)
5884     TEST_TARGET_ALIGN(PEXTLOGFONTW, 4)
5885 }
5886
5887 static void test_pack_PEXTLOGPEN(void)
5888 {
5889     /* PEXTLOGPEN */
5890     TEST_TYPE_SIZE   (PEXTLOGPEN, 8)
5891     TEST_TYPE_ALIGN  (PEXTLOGPEN, 8)
5892     TEST_TARGET_SIZE (PEXTLOGPEN, 32)
5893     TEST_TARGET_ALIGN(PEXTLOGPEN, 8)
5894 }
5895
5896 static void test_pack_PFONTSIGNATURE(void)
5897 {
5898     /* PFONTSIGNATURE */
5899     TEST_TYPE_SIZE   (PFONTSIGNATURE, 8)
5900     TEST_TYPE_ALIGN  (PFONTSIGNATURE, 8)
5901     TEST_TARGET_SIZE (PFONTSIGNATURE, 24)
5902     TEST_TARGET_ALIGN(PFONTSIGNATURE, 4)
5903 }
5904
5905 static void test_pack_PGLYPHMETRICSFLOAT(void)
5906 {
5907     /* PGLYPHMETRICSFLOAT */
5908     TEST_TYPE_SIZE   (PGLYPHMETRICSFLOAT, 8)
5909     TEST_TYPE_ALIGN  (PGLYPHMETRICSFLOAT, 8)
5910     TEST_TARGET_SIZE (PGLYPHMETRICSFLOAT, 24)
5911     TEST_TARGET_ALIGN(PGLYPHMETRICSFLOAT, 4)
5912 }
5913
5914 static void test_pack_PGRADIENT_RECT(void)
5915 {
5916     /* PGRADIENT_RECT */
5917     TEST_TYPE_SIZE   (PGRADIENT_RECT, 8)
5918     TEST_TYPE_ALIGN  (PGRADIENT_RECT, 8)
5919     TEST_TARGET_SIZE (PGRADIENT_RECT, 8)
5920     TEST_TARGET_ALIGN(PGRADIENT_RECT, 4)
5921 }
5922
5923 static void test_pack_PGRADIENT_TRIANGLE(void)
5924 {
5925     /* PGRADIENT_TRIANGLE */
5926     TEST_TYPE_SIZE   (PGRADIENT_TRIANGLE, 8)
5927     TEST_TYPE_ALIGN  (PGRADIENT_TRIANGLE, 8)
5928     TEST_TARGET_SIZE (PGRADIENT_TRIANGLE, 12)
5929     TEST_TARGET_ALIGN(PGRADIENT_TRIANGLE, 4)
5930 }
5931
5932 static void test_pack_PHANDLETABLE(void)
5933 {
5934     /* PHANDLETABLE */
5935     TEST_TYPE_SIZE   (PHANDLETABLE, 8)
5936     TEST_TYPE_ALIGN  (PHANDLETABLE, 8)
5937     TEST_TARGET_SIZE (PHANDLETABLE, 8)
5938     TEST_TARGET_ALIGN(PHANDLETABLE, 8)
5939 }
5940
5941 static void test_pack_PIXELFORMATDESCRIPTOR(void)
5942 {
5943     /* PIXELFORMATDESCRIPTOR */
5944     TEST_TYPE_SIZE   (PIXELFORMATDESCRIPTOR, 40)
5945     TEST_TYPE_ALIGN  (PIXELFORMATDESCRIPTOR, 4)
5946     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, nSize, 2)
5947     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, nSize, 2)
5948     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nSize, 0)
5949     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, nVersion, 2)
5950     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, nVersion, 2)
5951     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nVersion, 2)
5952     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, dwFlags, 4)
5953     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, dwFlags, 4)
5954     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwFlags, 4)
5955     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, iPixelType, 1)
5956     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, iPixelType, 1)
5957     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iPixelType, 8)
5958     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cColorBits, 1)
5959     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cColorBits, 1)
5960     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cColorBits, 9)
5961     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cRedBits, 1)
5962     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cRedBits, 1)
5963     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedBits, 10)
5964     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cRedShift, 1)
5965     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cRedShift, 1)
5966     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedShift, 11)
5967     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cGreenBits, 1)
5968     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cGreenBits, 1)
5969     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenBits, 12)
5970     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cGreenShift, 1)
5971     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cGreenShift, 1)
5972     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenShift, 13)
5973     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cBlueBits, 1)
5974     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cBlueBits, 1)
5975     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueBits, 14)
5976     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cBlueShift, 1)
5977     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cBlueShift, 1)
5978     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueShift, 15)
5979     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAlphaBits, 1)
5980     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAlphaBits, 1)
5981     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaBits, 16)
5982     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAlphaShift, 1)
5983     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAlphaShift, 1)
5984     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaShift, 17)
5985     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumBits, 1)
5986     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumBits, 1)
5987     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBits, 18)
5988     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumRedBits, 1)
5989     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumRedBits, 1)
5990     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumRedBits, 19)
5991     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumGreenBits, 1)
5992     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumGreenBits, 1)
5993     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumGreenBits, 20)
5994     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumBlueBits, 1)
5995     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumBlueBits, 1)
5996     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBlueBits, 21)
5997     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumAlphaBits, 1)
5998     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumAlphaBits, 1)
5999     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumAlphaBits, 22)
6000     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cDepthBits, 1)
6001     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cDepthBits, 1)
6002     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cDepthBits, 23)
6003     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cStencilBits, 1)
6004     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cStencilBits, 1)
6005     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cStencilBits, 24)
6006     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAuxBuffers, 1)
6007     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAuxBuffers, 1)
6008     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAuxBuffers, 25)
6009     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, iLayerType, 1)
6010     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, iLayerType, 1)
6011     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iLayerType, 26)
6012     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, bReserved, 1)
6013     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, bReserved, 1)
6014     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, bReserved, 27)
6015     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, dwLayerMask, 4)
6016     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, dwLayerMask, 4)
6017     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwLayerMask, 28)
6018     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, dwVisibleMask, 4)
6019     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, dwVisibleMask, 4)
6020     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwVisibleMask, 32)
6021     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, dwDamageMask, 4)
6022     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, dwDamageMask, 4)
6023     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwDamageMask, 36)
6024 }
6025
6026 static void test_pack_PLAYERPLANEDESCRIPTOR(void)
6027 {
6028     /* PLAYERPLANEDESCRIPTOR */
6029     TEST_TYPE_SIZE   (PLAYERPLANEDESCRIPTOR, 8)
6030     TEST_TYPE_ALIGN  (PLAYERPLANEDESCRIPTOR, 8)
6031     TEST_TARGET_SIZE (PLAYERPLANEDESCRIPTOR, 32)
6032     TEST_TARGET_ALIGN(PLAYERPLANEDESCRIPTOR, 4)
6033 }
6034
6035 static void test_pack_PLOCALESIGNATURE(void)
6036 {
6037     /* PLOCALESIGNATURE */
6038     TEST_TYPE_SIZE   (PLOCALESIGNATURE, 8)
6039     TEST_TYPE_ALIGN  (PLOCALESIGNATURE, 8)
6040     TEST_TARGET_SIZE (PLOCALESIGNATURE, 32)
6041     TEST_TARGET_ALIGN(PLOCALESIGNATURE, 4)
6042 }
6043
6044 static void test_pack_PLOGBRUSH(void)
6045 {
6046     /* PLOGBRUSH */
6047     TEST_TYPE_SIZE   (PLOGBRUSH, 8)
6048     TEST_TYPE_ALIGN  (PLOGBRUSH, 8)
6049     TEST_TARGET_SIZE (PLOGBRUSH, 16)
6050     TEST_TARGET_ALIGN(PLOGBRUSH, 8)
6051 }
6052
6053 static void test_pack_PLOGFONTA(void)
6054 {
6055     /* PLOGFONTA */
6056     TEST_TYPE_SIZE   (PLOGFONTA, 8)
6057     TEST_TYPE_ALIGN  (PLOGFONTA, 8)
6058     TEST_TARGET_SIZE (PLOGFONTA, 60)
6059     TEST_TARGET_ALIGN(PLOGFONTA, 4)
6060 }
6061
6062 static void test_pack_PLOGFONTW(void)
6063 {
6064     /* PLOGFONTW */
6065     TEST_TYPE_SIZE   (PLOGFONTW, 8)
6066     TEST_TYPE_ALIGN  (PLOGFONTW, 8)
6067     TEST_TARGET_SIZE (PLOGFONTW, 92)
6068     TEST_TARGET_ALIGN(PLOGFONTW, 4)
6069 }
6070
6071 static void test_pack_PMETAHEADER(void)
6072 {
6073     /* PMETAHEADER */
6074     TEST_TYPE_SIZE   (PMETAHEADER, 8)
6075     TEST_TYPE_ALIGN  (PMETAHEADER, 8)
6076     TEST_TARGET_SIZE (PMETAHEADER, 18)
6077     TEST_TARGET_ALIGN(PMETAHEADER, 2)
6078 }
6079
6080 static void test_pack_PMETARECORD(void)
6081 {
6082     /* PMETARECORD */
6083     TEST_TYPE_SIZE   (PMETARECORD, 8)
6084     TEST_TYPE_ALIGN  (PMETARECORD, 8)
6085     TEST_TARGET_SIZE (PMETARECORD, 8)
6086     TEST_TARGET_ALIGN(PMETARECORD, 4)
6087 }
6088
6089 static void test_pack_PNEWTEXTMETRICA(void)
6090 {
6091     /* PNEWTEXTMETRICA */
6092     TEST_TYPE_SIZE   (PNEWTEXTMETRICA, 8)
6093     TEST_TYPE_ALIGN  (PNEWTEXTMETRICA, 8)
6094     TEST_TARGET_SIZE (PNEWTEXTMETRICA, 72)
6095     TEST_TARGET_ALIGN(PNEWTEXTMETRICA, 4)
6096 }
6097
6098 static void test_pack_PNEWTEXTMETRICW(void)
6099 {
6100     /* PNEWTEXTMETRICW */
6101     TEST_TYPE_SIZE   (PNEWTEXTMETRICW, 8)
6102     TEST_TYPE_ALIGN  (PNEWTEXTMETRICW, 8)
6103     TEST_TARGET_SIZE (PNEWTEXTMETRICW, 76)
6104     TEST_TARGET_ALIGN(PNEWTEXTMETRICW, 4)
6105 }
6106
6107 static void test_pack_POINTFLOAT(void)
6108 {
6109     /* POINTFLOAT */
6110     TEST_TYPE_SIZE   (POINTFLOAT, 8)
6111     TEST_TYPE_ALIGN  (POINTFLOAT, 4)
6112     TEST_FIELD_SIZE  (POINTFLOAT, x, 4)
6113     TEST_FIELD_ALIGN (POINTFLOAT, x, 4)
6114     TEST_FIELD_OFFSET(POINTFLOAT, x, 0)
6115     TEST_FIELD_SIZE  (POINTFLOAT, y, 4)
6116     TEST_FIELD_ALIGN (POINTFLOAT, y, 4)
6117     TEST_FIELD_OFFSET(POINTFLOAT, y, 4)
6118 }
6119
6120 static void test_pack_POINTFX(void)
6121 {
6122     /* POINTFX */
6123     TEST_TYPE_SIZE   (POINTFX, 8)
6124     TEST_TYPE_ALIGN  (POINTFX, 2)
6125     TEST_FIELD_SIZE  (POINTFX, x, 4)
6126     TEST_FIELD_ALIGN (POINTFX, x, 2)
6127     TEST_FIELD_OFFSET(POINTFX, x, 0)
6128     TEST_FIELD_SIZE  (POINTFX, y, 4)
6129     TEST_FIELD_ALIGN (POINTFX, y, 2)
6130     TEST_FIELD_OFFSET(POINTFX, y, 4)
6131 }
6132
6133 static void test_pack_POLYTEXTA(void)
6134 {
6135     /* POLYTEXTA */
6136     TEST_TYPE_SIZE   (POLYTEXTA, 56)
6137     TEST_TYPE_ALIGN  (POLYTEXTA, 8)
6138     TEST_FIELD_SIZE  (POLYTEXTA, x, 4)
6139     TEST_FIELD_ALIGN (POLYTEXTA, x, 4)
6140     TEST_FIELD_OFFSET(POLYTEXTA, x, 0)
6141     TEST_FIELD_SIZE  (POLYTEXTA, y, 4)
6142     TEST_FIELD_ALIGN (POLYTEXTA, y, 4)
6143     TEST_FIELD_OFFSET(POLYTEXTA, y, 4)
6144     TEST_FIELD_SIZE  (POLYTEXTA, n, 4)
6145     TEST_FIELD_ALIGN (POLYTEXTA, n, 4)
6146     TEST_FIELD_OFFSET(POLYTEXTA, n, 8)
6147     TEST_FIELD_SIZE  (POLYTEXTA, lpstr, 8)
6148     TEST_FIELD_ALIGN (POLYTEXTA, lpstr, 8)
6149     TEST_FIELD_OFFSET(POLYTEXTA, lpstr, 16)
6150     TEST_FIELD_SIZE  (POLYTEXTA, uiFlags, 4)
6151     TEST_FIELD_ALIGN (POLYTEXTA, uiFlags, 4)
6152     TEST_FIELD_OFFSET(POLYTEXTA, uiFlags, 24)
6153     TEST_FIELD_SIZE  (POLYTEXTA, rcl, 16)
6154     TEST_FIELD_ALIGN (POLYTEXTA, rcl, 4)
6155     TEST_FIELD_OFFSET(POLYTEXTA, rcl, 28)
6156     TEST_FIELD_SIZE  (POLYTEXTA, pdx, 8)
6157     TEST_FIELD_ALIGN (POLYTEXTA, pdx, 8)
6158     TEST_FIELD_OFFSET(POLYTEXTA, pdx, 48)
6159 }
6160
6161 static void test_pack_POLYTEXTW(void)
6162 {
6163     /* POLYTEXTW */
6164     TEST_TYPE_SIZE   (POLYTEXTW, 56)
6165     TEST_TYPE_ALIGN  (POLYTEXTW, 8)
6166     TEST_FIELD_SIZE  (POLYTEXTW, x, 4)
6167     TEST_FIELD_ALIGN (POLYTEXTW, x, 4)
6168     TEST_FIELD_OFFSET(POLYTEXTW, x, 0)
6169     TEST_FIELD_SIZE  (POLYTEXTW, y, 4)
6170     TEST_FIELD_ALIGN (POLYTEXTW, y, 4)
6171     TEST_FIELD_OFFSET(POLYTEXTW, y, 4)
6172     TEST_FIELD_SIZE  (POLYTEXTW, n, 4)
6173     TEST_FIELD_ALIGN (POLYTEXTW, n, 4)
6174     TEST_FIELD_OFFSET(POLYTEXTW, n, 8)
6175     TEST_FIELD_SIZE  (POLYTEXTW, lpstr, 8)
6176     TEST_FIELD_ALIGN (POLYTEXTW, lpstr, 8)
6177     TEST_FIELD_OFFSET(POLYTEXTW, lpstr, 16)
6178     TEST_FIELD_SIZE  (POLYTEXTW, uiFlags, 4)
6179     TEST_FIELD_ALIGN (POLYTEXTW, uiFlags, 4)
6180     TEST_FIELD_OFFSET(POLYTEXTW, uiFlags, 24)
6181     TEST_FIELD_SIZE  (POLYTEXTW, rcl, 16)
6182     TEST_FIELD_ALIGN (POLYTEXTW, rcl, 4)
6183     TEST_FIELD_OFFSET(POLYTEXTW, rcl, 28)
6184     TEST_FIELD_SIZE  (POLYTEXTW, pdx, 8)
6185     TEST_FIELD_ALIGN (POLYTEXTW, pdx, 8)
6186     TEST_FIELD_OFFSET(POLYTEXTW, pdx, 48)
6187 }
6188
6189 static void test_pack_POUTLINETEXTMETRICA(void)
6190 {
6191     /* POUTLINETEXTMETRICA */
6192     TEST_TYPE_SIZE   (POUTLINETEXTMETRICA, 8)
6193     TEST_TYPE_ALIGN  (POUTLINETEXTMETRICA, 8)
6194     TEST_TARGET_SIZE (POUTLINETEXTMETRICA, 232)
6195     TEST_TARGET_ALIGN(POUTLINETEXTMETRICA, 8)
6196 }
6197
6198 static void test_pack_POUTLINETEXTMETRICW(void)
6199 {
6200     /* POUTLINETEXTMETRICW */
6201     TEST_TYPE_SIZE   (POUTLINETEXTMETRICW, 8)
6202     TEST_TYPE_ALIGN  (POUTLINETEXTMETRICW, 8)
6203     TEST_TARGET_SIZE (POUTLINETEXTMETRICW, 232)
6204     TEST_TARGET_ALIGN(POUTLINETEXTMETRICW, 8)
6205 }
6206
6207 static void test_pack_PPELARRAY(void)
6208 {
6209     /* PPELARRAY */
6210     TEST_TYPE_SIZE   (PPELARRAY, 8)
6211     TEST_TYPE_ALIGN  (PPELARRAY, 8)
6212     TEST_TARGET_SIZE (PPELARRAY, 20)
6213     TEST_TARGET_ALIGN(PPELARRAY, 4)
6214 }
6215
6216 static void test_pack_PPIXELFORMATDESCRIPTOR(void)
6217 {
6218     /* PPIXELFORMATDESCRIPTOR */
6219     TEST_TYPE_SIZE   (PPIXELFORMATDESCRIPTOR, 8)
6220     TEST_TYPE_ALIGN  (PPIXELFORMATDESCRIPTOR, 8)
6221     TEST_TARGET_SIZE (PPIXELFORMATDESCRIPTOR, 40)
6222     TEST_TARGET_ALIGN(PPIXELFORMATDESCRIPTOR, 4)
6223 }
6224
6225 static void test_pack_PPOINTFLOAT(void)
6226 {
6227     /* PPOINTFLOAT */
6228     TEST_TYPE_SIZE   (PPOINTFLOAT, 8)
6229     TEST_TYPE_ALIGN  (PPOINTFLOAT, 8)
6230     TEST_TARGET_SIZE (PPOINTFLOAT, 8)
6231     TEST_TARGET_ALIGN(PPOINTFLOAT, 4)
6232 }
6233
6234 static void test_pack_PPOLYTEXTA(void)
6235 {
6236     /* PPOLYTEXTA */
6237     TEST_TYPE_SIZE   (PPOLYTEXTA, 8)
6238     TEST_TYPE_ALIGN  (PPOLYTEXTA, 8)
6239     TEST_TARGET_SIZE (PPOLYTEXTA, 56)
6240     TEST_TARGET_ALIGN(PPOLYTEXTA, 8)
6241 }
6242
6243 static void test_pack_PPOLYTEXTW(void)
6244 {
6245     /* PPOLYTEXTW */
6246     TEST_TYPE_SIZE   (PPOLYTEXTW, 8)
6247     TEST_TYPE_ALIGN  (PPOLYTEXTW, 8)
6248     TEST_TARGET_SIZE (PPOLYTEXTW, 56)
6249     TEST_TARGET_ALIGN(PPOLYTEXTW, 8)
6250 }
6251
6252 static void test_pack_PRGNDATA(void)
6253 {
6254     /* PRGNDATA */
6255     TEST_TYPE_SIZE   (PRGNDATA, 8)
6256     TEST_TYPE_ALIGN  (PRGNDATA, 8)
6257     TEST_TARGET_SIZE (PRGNDATA, 36)
6258     TEST_TARGET_ALIGN(PRGNDATA, 4)
6259 }
6260
6261 static void test_pack_PRGNDATAHEADER(void)
6262 {
6263     /* PRGNDATAHEADER */
6264     TEST_TYPE_SIZE   (PRGNDATAHEADER, 8)
6265     TEST_TYPE_ALIGN  (PRGNDATAHEADER, 8)
6266     TEST_TARGET_SIZE (PRGNDATAHEADER, 32)
6267     TEST_TARGET_ALIGN(PRGNDATAHEADER, 4)
6268 }
6269
6270 static void test_pack_PTEXTMETRICA(void)
6271 {
6272     /* PTEXTMETRICA */
6273     TEST_TYPE_SIZE   (PTEXTMETRICA, 8)
6274     TEST_TYPE_ALIGN  (PTEXTMETRICA, 8)
6275     TEST_TARGET_SIZE (PTEXTMETRICA, 56)
6276     TEST_TARGET_ALIGN(PTEXTMETRICA, 4)
6277 }
6278
6279 static void test_pack_PTEXTMETRICW(void)
6280 {
6281     /* PTEXTMETRICW */
6282     TEST_TYPE_SIZE   (PTEXTMETRICW, 8)
6283     TEST_TYPE_ALIGN  (PTEXTMETRICW, 8)
6284     TEST_TARGET_SIZE (PTEXTMETRICW, 60)
6285     TEST_TARGET_ALIGN(PTEXTMETRICW, 4)
6286 }
6287
6288 static void test_pack_PTRIVERTEX(void)
6289 {
6290     /* PTRIVERTEX */
6291     TEST_TYPE_SIZE   (PTRIVERTEX, 8)
6292     TEST_TYPE_ALIGN  (PTRIVERTEX, 8)
6293     TEST_TARGET_SIZE (PTRIVERTEX, 16)
6294     TEST_TARGET_ALIGN(PTRIVERTEX, 4)
6295 }
6296
6297 static void test_pack_PXFORM(void)
6298 {
6299     /* PXFORM */
6300     TEST_TYPE_SIZE   (PXFORM, 8)
6301     TEST_TYPE_ALIGN  (PXFORM, 8)
6302     TEST_TARGET_SIZE (PXFORM, 24)
6303     TEST_TARGET_ALIGN(PXFORM, 4)
6304 }
6305
6306 static void test_pack_RASTERIZER_STATUS(void)
6307 {
6308     /* RASTERIZER_STATUS */
6309     TEST_TYPE_SIZE   (RASTERIZER_STATUS, 6)
6310     TEST_TYPE_ALIGN  (RASTERIZER_STATUS, 2)
6311     TEST_FIELD_SIZE  (RASTERIZER_STATUS, nSize, 2)
6312     TEST_FIELD_ALIGN (RASTERIZER_STATUS, nSize, 2)
6313     TEST_FIELD_OFFSET(RASTERIZER_STATUS, nSize, 0)
6314     TEST_FIELD_SIZE  (RASTERIZER_STATUS, wFlags, 2)
6315     TEST_FIELD_ALIGN (RASTERIZER_STATUS, wFlags, 2)
6316     TEST_FIELD_OFFSET(RASTERIZER_STATUS, wFlags, 2)
6317     TEST_FIELD_SIZE  (RASTERIZER_STATUS, nLanguageID, 2)
6318     TEST_FIELD_ALIGN (RASTERIZER_STATUS, nLanguageID, 2)
6319     TEST_FIELD_OFFSET(RASTERIZER_STATUS, nLanguageID, 4)
6320 }
6321
6322 static void test_pack_RGBQUAD(void)
6323 {
6324     /* RGBQUAD */
6325     TEST_TYPE_SIZE   (RGBQUAD, 4)
6326     TEST_TYPE_ALIGN  (RGBQUAD, 1)
6327     TEST_FIELD_SIZE  (RGBQUAD, rgbBlue, 1)
6328     TEST_FIELD_ALIGN (RGBQUAD, rgbBlue, 1)
6329     TEST_FIELD_OFFSET(RGBQUAD, rgbBlue, 0)
6330     TEST_FIELD_SIZE  (RGBQUAD, rgbGreen, 1)
6331     TEST_FIELD_ALIGN (RGBQUAD, rgbGreen, 1)
6332     TEST_FIELD_OFFSET(RGBQUAD, rgbGreen, 1)
6333     TEST_FIELD_SIZE  (RGBQUAD, rgbRed, 1)
6334     TEST_FIELD_ALIGN (RGBQUAD, rgbRed, 1)
6335     TEST_FIELD_OFFSET(RGBQUAD, rgbRed, 2)
6336     TEST_FIELD_SIZE  (RGBQUAD, rgbReserved, 1)
6337     TEST_FIELD_ALIGN (RGBQUAD, rgbReserved, 1)
6338     TEST_FIELD_OFFSET(RGBQUAD, rgbReserved, 3)
6339 }
6340
6341 static void test_pack_RGBTRIPLE(void)
6342 {
6343     /* RGBTRIPLE */
6344     TEST_TYPE_SIZE   (RGBTRIPLE, 3)
6345     TEST_TYPE_ALIGN  (RGBTRIPLE, 1)
6346     TEST_FIELD_SIZE  (RGBTRIPLE, rgbtBlue, 1)
6347     TEST_FIELD_ALIGN (RGBTRIPLE, rgbtBlue, 1)
6348     TEST_FIELD_OFFSET(RGBTRIPLE, rgbtBlue, 0)
6349     TEST_FIELD_SIZE  (RGBTRIPLE, rgbtGreen, 1)
6350     TEST_FIELD_ALIGN (RGBTRIPLE, rgbtGreen, 1)
6351     TEST_FIELD_OFFSET(RGBTRIPLE, rgbtGreen, 1)
6352     TEST_FIELD_SIZE  (RGBTRIPLE, rgbtRed, 1)
6353     TEST_FIELD_ALIGN (RGBTRIPLE, rgbtRed, 1)
6354     TEST_FIELD_OFFSET(RGBTRIPLE, rgbtRed, 2)
6355 }
6356
6357 static void test_pack_RGNDATA(void)
6358 {
6359     /* RGNDATA */
6360     TEST_TYPE_SIZE   (RGNDATA, 36)
6361     TEST_TYPE_ALIGN  (RGNDATA, 4)
6362     TEST_FIELD_SIZE  (RGNDATA, rdh, 32)
6363     TEST_FIELD_ALIGN (RGNDATA, rdh, 4)
6364     TEST_FIELD_OFFSET(RGNDATA, rdh, 0)
6365     TEST_FIELD_SIZE  (RGNDATA, Buffer, 1)
6366     TEST_FIELD_ALIGN (RGNDATA, Buffer, 1)
6367     TEST_FIELD_OFFSET(RGNDATA, Buffer, 32)
6368 }
6369
6370 static void test_pack_RGNDATAHEADER(void)
6371 {
6372     /* RGNDATAHEADER */
6373     TEST_TYPE_SIZE   (RGNDATAHEADER, 32)
6374     TEST_TYPE_ALIGN  (RGNDATAHEADER, 4)
6375     TEST_FIELD_SIZE  (RGNDATAHEADER, dwSize, 4)
6376     TEST_FIELD_ALIGN (RGNDATAHEADER, dwSize, 4)
6377     TEST_FIELD_OFFSET(RGNDATAHEADER, dwSize, 0)
6378     TEST_FIELD_SIZE  (RGNDATAHEADER, iType, 4)
6379     TEST_FIELD_ALIGN (RGNDATAHEADER, iType, 4)
6380     TEST_FIELD_OFFSET(RGNDATAHEADER, iType, 4)
6381     TEST_FIELD_SIZE  (RGNDATAHEADER, nCount, 4)
6382     TEST_FIELD_ALIGN (RGNDATAHEADER, nCount, 4)
6383     TEST_FIELD_OFFSET(RGNDATAHEADER, nCount, 8)
6384     TEST_FIELD_SIZE  (RGNDATAHEADER, nRgnSize, 4)
6385     TEST_FIELD_ALIGN (RGNDATAHEADER, nRgnSize, 4)
6386     TEST_FIELD_OFFSET(RGNDATAHEADER, nRgnSize, 12)
6387     TEST_FIELD_SIZE  (RGNDATAHEADER, rcBound, 16)
6388     TEST_FIELD_ALIGN (RGNDATAHEADER, rcBound, 4)
6389     TEST_FIELD_OFFSET(RGNDATAHEADER, rcBound, 16)
6390 }
6391
6392 static void test_pack_TEXTMETRICA(void)
6393 {
6394     /* TEXTMETRICA */
6395     TEST_TYPE_SIZE   (TEXTMETRICA, 56)
6396     TEST_TYPE_ALIGN  (TEXTMETRICA, 4)
6397     TEST_FIELD_SIZE  (TEXTMETRICA, tmHeight, 4)
6398     TEST_FIELD_ALIGN (TEXTMETRICA, tmHeight, 4)
6399     TEST_FIELD_OFFSET(TEXTMETRICA, tmHeight, 0)
6400     TEST_FIELD_SIZE  (TEXTMETRICA, tmAscent, 4)
6401     TEST_FIELD_ALIGN (TEXTMETRICA, tmAscent, 4)
6402     TEST_FIELD_OFFSET(TEXTMETRICA, tmAscent, 4)
6403     TEST_FIELD_SIZE  (TEXTMETRICA, tmDescent, 4)
6404     TEST_FIELD_ALIGN (TEXTMETRICA, tmDescent, 4)
6405     TEST_FIELD_OFFSET(TEXTMETRICA, tmDescent, 8)
6406     TEST_FIELD_SIZE  (TEXTMETRICA, tmInternalLeading, 4)
6407     TEST_FIELD_ALIGN (TEXTMETRICA, tmInternalLeading, 4)
6408     TEST_FIELD_OFFSET(TEXTMETRICA, tmInternalLeading, 12)
6409     TEST_FIELD_SIZE  (TEXTMETRICA, tmExternalLeading, 4)
6410     TEST_FIELD_ALIGN (TEXTMETRICA, tmExternalLeading, 4)
6411     TEST_FIELD_OFFSET(TEXTMETRICA, tmExternalLeading, 16)
6412     TEST_FIELD_SIZE  (TEXTMETRICA, tmAveCharWidth, 4)
6413     TEST_FIELD_ALIGN (TEXTMETRICA, tmAveCharWidth, 4)
6414     TEST_FIELD_OFFSET(TEXTMETRICA, tmAveCharWidth, 20)
6415     TEST_FIELD_SIZE  (TEXTMETRICA, tmMaxCharWidth, 4)
6416     TEST_FIELD_ALIGN (TEXTMETRICA, tmMaxCharWidth, 4)
6417     TEST_FIELD_OFFSET(TEXTMETRICA, tmMaxCharWidth, 24)
6418     TEST_FIELD_SIZE  (TEXTMETRICA, tmWeight, 4)
6419     TEST_FIELD_ALIGN (TEXTMETRICA, tmWeight, 4)
6420     TEST_FIELD_OFFSET(TEXTMETRICA, tmWeight, 28)
6421     TEST_FIELD_SIZE  (TEXTMETRICA, tmOverhang, 4)
6422     TEST_FIELD_ALIGN (TEXTMETRICA, tmOverhang, 4)
6423     TEST_FIELD_OFFSET(TEXTMETRICA, tmOverhang, 32)
6424     TEST_FIELD_SIZE  (TEXTMETRICA, tmDigitizedAspectX, 4)
6425     TEST_FIELD_ALIGN (TEXTMETRICA, tmDigitizedAspectX, 4)
6426     TEST_FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectX, 36)
6427     TEST_FIELD_SIZE  (TEXTMETRICA, tmDigitizedAspectY, 4)
6428     TEST_FIELD_ALIGN (TEXTMETRICA, tmDigitizedAspectY, 4)
6429     TEST_FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectY, 40)
6430     TEST_FIELD_SIZE  (TEXTMETRICA, tmFirstChar, 1)
6431     TEST_FIELD_ALIGN (TEXTMETRICA, tmFirstChar, 1)
6432     TEST_FIELD_OFFSET(TEXTMETRICA, tmFirstChar, 44)
6433     TEST_FIELD_SIZE  (TEXTMETRICA, tmLastChar, 1)
6434     TEST_FIELD_ALIGN (TEXTMETRICA, tmLastChar, 1)
6435     TEST_FIELD_OFFSET(TEXTMETRICA, tmLastChar, 45)
6436     TEST_FIELD_SIZE  (TEXTMETRICA, tmDefaultChar, 1)
6437     TEST_FIELD_ALIGN (TEXTMETRICA, tmDefaultChar, 1)
6438     TEST_FIELD_OFFSET(TEXTMETRICA, tmDefaultChar, 46)
6439     TEST_FIELD_SIZE  (TEXTMETRICA, tmBreakChar, 1)
6440     TEST_FIELD_ALIGN (TEXTMETRICA, tmBreakChar, 1)
6441     TEST_FIELD_OFFSET(TEXTMETRICA, tmBreakChar, 47)
6442     TEST_FIELD_SIZE  (TEXTMETRICA, tmItalic, 1)
6443     TEST_FIELD_ALIGN (TEXTMETRICA, tmItalic, 1)
6444     TEST_FIELD_OFFSET(TEXTMETRICA, tmItalic, 48)
6445     TEST_FIELD_SIZE  (TEXTMETRICA, tmUnderlined, 1)
6446     TEST_FIELD_ALIGN (TEXTMETRICA, tmUnderlined, 1)
6447     TEST_FIELD_OFFSET(TEXTMETRICA, tmUnderlined, 49)
6448     TEST_FIELD_SIZE  (TEXTMETRICA, tmStruckOut, 1)
6449     TEST_FIELD_ALIGN (TEXTMETRICA, tmStruckOut, 1)
6450     TEST_FIELD_OFFSET(TEXTMETRICA, tmStruckOut, 50)
6451     TEST_FIELD_SIZE  (TEXTMETRICA, tmPitchAndFamily, 1)
6452     TEST_FIELD_ALIGN (TEXTMETRICA, tmPitchAndFamily, 1)
6453     TEST_FIELD_OFFSET(TEXTMETRICA, tmPitchAndFamily, 51)
6454     TEST_FIELD_SIZE  (TEXTMETRICA, tmCharSet, 1)
6455     TEST_FIELD_ALIGN (TEXTMETRICA, tmCharSet, 1)
6456     TEST_FIELD_OFFSET(TEXTMETRICA, tmCharSet, 52)
6457 }
6458
6459 static void test_pack_TEXTMETRICW(void)
6460 {
6461     /* TEXTMETRICW */
6462     TEST_TYPE_SIZE   (TEXTMETRICW, 60)
6463     TEST_TYPE_ALIGN  (TEXTMETRICW, 4)
6464     TEST_FIELD_SIZE  (TEXTMETRICW, tmHeight, 4)
6465     TEST_FIELD_ALIGN (TEXTMETRICW, tmHeight, 4)
6466     TEST_FIELD_OFFSET(TEXTMETRICW, tmHeight, 0)
6467     TEST_FIELD_SIZE  (TEXTMETRICW, tmAscent, 4)
6468     TEST_FIELD_ALIGN (TEXTMETRICW, tmAscent, 4)
6469     TEST_FIELD_OFFSET(TEXTMETRICW, tmAscent, 4)
6470     TEST_FIELD_SIZE  (TEXTMETRICW, tmDescent, 4)
6471     TEST_FIELD_ALIGN (TEXTMETRICW, tmDescent, 4)
6472     TEST_FIELD_OFFSET(TEXTMETRICW, tmDescent, 8)
6473     TEST_FIELD_SIZE  (TEXTMETRICW, tmInternalLeading, 4)
6474     TEST_FIELD_ALIGN (TEXTMETRICW, tmInternalLeading, 4)
6475     TEST_FIELD_OFFSET(TEXTMETRICW, tmInternalLeading, 12)
6476     TEST_FIELD_SIZE  (TEXTMETRICW, tmExternalLeading, 4)
6477     TEST_FIELD_ALIGN (TEXTMETRICW, tmExternalLeading, 4)
6478     TEST_FIELD_OFFSET(TEXTMETRICW, tmExternalLeading, 16)
6479     TEST_FIELD_SIZE  (TEXTMETRICW, tmAveCharWidth, 4)
6480     TEST_FIELD_ALIGN (TEXTMETRICW, tmAveCharWidth, 4)
6481     TEST_FIELD_OFFSET(TEXTMETRICW, tmAveCharWidth, 20)
6482     TEST_FIELD_SIZE  (TEXTMETRICW, tmMaxCharWidth, 4)
6483     TEST_FIELD_ALIGN (TEXTMETRICW, tmMaxCharWidth, 4)
6484     TEST_FIELD_OFFSET(TEXTMETRICW, tmMaxCharWidth, 24)
6485     TEST_FIELD_SIZE  (TEXTMETRICW, tmWeight, 4)
6486     TEST_FIELD_ALIGN (TEXTMETRICW, tmWeight, 4)
6487     TEST_FIELD_OFFSET(TEXTMETRICW, tmWeight, 28)
6488     TEST_FIELD_SIZE  (TEXTMETRICW, tmOverhang, 4)
6489     TEST_FIELD_ALIGN (TEXTMETRICW, tmOverhang, 4)
6490     TEST_FIELD_OFFSET(TEXTMETRICW, tmOverhang, 32)
6491     TEST_FIELD_SIZE  (TEXTMETRICW, tmDigitizedAspectX, 4)
6492     TEST_FIELD_ALIGN (TEXTMETRICW, tmDigitizedAspectX, 4)
6493     TEST_FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectX, 36)
6494     TEST_FIELD_SIZE  (TEXTMETRICW, tmDigitizedAspectY, 4)
6495     TEST_FIELD_ALIGN (TEXTMETRICW, tmDigitizedAspectY, 4)
6496     TEST_FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectY, 40)
6497     TEST_FIELD_SIZE  (TEXTMETRICW, tmFirstChar, 2)
6498     TEST_FIELD_ALIGN (TEXTMETRICW, tmFirstChar, 2)
6499     TEST_FIELD_OFFSET(TEXTMETRICW, tmFirstChar, 44)
6500     TEST_FIELD_SIZE  (TEXTMETRICW, tmLastChar, 2)
6501     TEST_FIELD_ALIGN (TEXTMETRICW, tmLastChar, 2)
6502     TEST_FIELD_OFFSET(TEXTMETRICW, tmLastChar, 46)
6503     TEST_FIELD_SIZE  (TEXTMETRICW, tmDefaultChar, 2)
6504     TEST_FIELD_ALIGN (TEXTMETRICW, tmDefaultChar, 2)
6505     TEST_FIELD_OFFSET(TEXTMETRICW, tmDefaultChar, 48)
6506     TEST_FIELD_SIZE  (TEXTMETRICW, tmBreakChar, 2)
6507     TEST_FIELD_ALIGN (TEXTMETRICW, tmBreakChar, 2)
6508     TEST_FIELD_OFFSET(TEXTMETRICW, tmBreakChar, 50)
6509     TEST_FIELD_SIZE  (TEXTMETRICW, tmItalic, 1)
6510     TEST_FIELD_ALIGN (TEXTMETRICW, tmItalic, 1)
6511     TEST_FIELD_OFFSET(TEXTMETRICW, tmItalic, 52)
6512     TEST_FIELD_SIZE  (TEXTMETRICW, tmUnderlined, 1)
6513     TEST_FIELD_ALIGN (TEXTMETRICW, tmUnderlined, 1)
6514     TEST_FIELD_OFFSET(TEXTMETRICW, tmUnderlined, 53)
6515     TEST_FIELD_SIZE  (TEXTMETRICW, tmStruckOut, 1)
6516     TEST_FIELD_ALIGN (TEXTMETRICW, tmStruckOut, 1)
6517     TEST_FIELD_OFFSET(TEXTMETRICW, tmStruckOut, 54)
6518     TEST_FIELD_SIZE  (TEXTMETRICW, tmPitchAndFamily, 1)
6519     TEST_FIELD_ALIGN (TEXTMETRICW, tmPitchAndFamily, 1)
6520     TEST_FIELD_OFFSET(TEXTMETRICW, tmPitchAndFamily, 55)
6521     TEST_FIELD_SIZE  (TEXTMETRICW, tmCharSet, 1)
6522     TEST_FIELD_ALIGN (TEXTMETRICW, tmCharSet, 1)
6523     TEST_FIELD_OFFSET(TEXTMETRICW, tmCharSet, 56)
6524 }
6525
6526 static void test_pack_TRIVERTEX(void)
6527 {
6528     /* TRIVERTEX */
6529     TEST_TYPE_SIZE   (TRIVERTEX, 16)
6530     TEST_TYPE_ALIGN  (TRIVERTEX, 4)
6531     TEST_FIELD_SIZE  (TRIVERTEX, x, 4)
6532     TEST_FIELD_ALIGN (TRIVERTEX, x, 4)
6533     TEST_FIELD_OFFSET(TRIVERTEX, x, 0)
6534     TEST_FIELD_SIZE  (TRIVERTEX, y, 4)
6535     TEST_FIELD_ALIGN (TRIVERTEX, y, 4)
6536     TEST_FIELD_OFFSET(TRIVERTEX, y, 4)
6537     TEST_FIELD_SIZE  (TRIVERTEX, Red, 2)
6538     TEST_FIELD_ALIGN (TRIVERTEX, Red, 2)
6539     TEST_FIELD_OFFSET(TRIVERTEX, Red, 8)
6540     TEST_FIELD_SIZE  (TRIVERTEX, Green, 2)
6541     TEST_FIELD_ALIGN (TRIVERTEX, Green, 2)
6542     TEST_FIELD_OFFSET(TRIVERTEX, Green, 10)
6543     TEST_FIELD_SIZE  (TRIVERTEX, Blue, 2)
6544     TEST_FIELD_ALIGN (TRIVERTEX, Blue, 2)
6545     TEST_FIELD_OFFSET(TRIVERTEX, Blue, 12)
6546     TEST_FIELD_SIZE  (TRIVERTEX, Alpha, 2)
6547     TEST_FIELD_ALIGN (TRIVERTEX, Alpha, 2)
6548     TEST_FIELD_OFFSET(TRIVERTEX, Alpha, 14)
6549 }
6550
6551 static void test_pack_TTPOLYCURVE(void)
6552 {
6553     /* TTPOLYCURVE */
6554     TEST_TYPE_SIZE   (TTPOLYCURVE, 12)
6555     TEST_TYPE_ALIGN  (TTPOLYCURVE, 2)
6556     TEST_FIELD_SIZE  (TTPOLYCURVE, wType, 2)
6557     TEST_FIELD_ALIGN (TTPOLYCURVE, wType, 2)
6558     TEST_FIELD_OFFSET(TTPOLYCURVE, wType, 0)
6559     TEST_FIELD_SIZE  (TTPOLYCURVE, cpfx, 2)
6560     TEST_FIELD_ALIGN (TTPOLYCURVE, cpfx, 2)
6561     TEST_FIELD_OFFSET(TTPOLYCURVE, cpfx, 2)
6562     TEST_FIELD_SIZE  (TTPOLYCURVE, apfx, 8)
6563     TEST_FIELD_ALIGN (TTPOLYCURVE, apfx, 2)
6564     TEST_FIELD_OFFSET(TTPOLYCURVE, apfx, 4)
6565 }
6566
6567 static void test_pack_TTPOLYGONHEADER(void)
6568 {
6569     /* TTPOLYGONHEADER */
6570     TEST_TYPE_SIZE   (TTPOLYGONHEADER, 16)
6571     TEST_TYPE_ALIGN  (TTPOLYGONHEADER, 4)
6572     TEST_FIELD_SIZE  (TTPOLYGONHEADER, cb, 4)
6573     TEST_FIELD_ALIGN (TTPOLYGONHEADER, cb, 4)
6574     TEST_FIELD_OFFSET(TTPOLYGONHEADER, cb, 0)
6575     TEST_FIELD_SIZE  (TTPOLYGONHEADER, dwType, 4)
6576     TEST_FIELD_ALIGN (TTPOLYGONHEADER, dwType, 4)
6577     TEST_FIELD_OFFSET(TTPOLYGONHEADER, dwType, 4)
6578     TEST_FIELD_SIZE  (TTPOLYGONHEADER, pfxStart, 8)
6579     TEST_FIELD_ALIGN (TTPOLYGONHEADER, pfxStart, 2)
6580     TEST_FIELD_OFFSET(TTPOLYGONHEADER, pfxStart, 8)
6581 }
6582
6583 static void test_pack_XFORM(void)
6584 {
6585     /* XFORM */
6586     TEST_TYPE_SIZE   (XFORM, 24)
6587     TEST_TYPE_ALIGN  (XFORM, 4)
6588     TEST_FIELD_SIZE  (XFORM, eM11, 4)
6589     TEST_FIELD_ALIGN (XFORM, eM11, 4)
6590     TEST_FIELD_OFFSET(XFORM, eM11, 0)
6591     TEST_FIELD_SIZE  (XFORM, eM12, 4)
6592     TEST_FIELD_ALIGN (XFORM, eM12, 4)
6593     TEST_FIELD_OFFSET(XFORM, eM12, 4)
6594     TEST_FIELD_SIZE  (XFORM, eM21, 4)
6595     TEST_FIELD_ALIGN (XFORM, eM21, 4)
6596     TEST_FIELD_OFFSET(XFORM, eM21, 8)
6597     TEST_FIELD_SIZE  (XFORM, eM22, 4)
6598     TEST_FIELD_ALIGN (XFORM, eM22, 4)
6599     TEST_FIELD_OFFSET(XFORM, eM22, 12)
6600     TEST_FIELD_SIZE  (XFORM, eDx, 4)
6601     TEST_FIELD_ALIGN (XFORM, eDx, 4)
6602     TEST_FIELD_OFFSET(XFORM, eDx, 16)
6603     TEST_FIELD_SIZE  (XFORM, eDy, 4)
6604     TEST_FIELD_ALIGN (XFORM, eDy, 4)
6605     TEST_FIELD_OFFSET(XFORM, eDy, 20)
6606 }
6607
6608 #else /* _WIN64 */
6609
6610 static void test_pack_ABC(void)
6611 {
6612     /* ABC */
6613     TEST_TYPE_SIZE   (ABC, 12)
6614     TEST_TYPE_ALIGN  (ABC, 4)
6615     TEST_FIELD_SIZE  (ABC, abcA, 4)
6616     TEST_FIELD_ALIGN (ABC, abcA, 4)
6617     TEST_FIELD_OFFSET(ABC, abcA, 0)
6618     TEST_FIELD_SIZE  (ABC, abcB, 4)
6619     TEST_FIELD_ALIGN (ABC, abcB, 4)
6620     TEST_FIELD_OFFSET(ABC, abcB, 4)
6621     TEST_FIELD_SIZE  (ABC, abcC, 4)
6622     TEST_FIELD_ALIGN (ABC, abcC, 4)
6623     TEST_FIELD_OFFSET(ABC, abcC, 8)
6624 }
6625
6626 static void test_pack_ABCFLOAT(void)
6627 {
6628     /* ABCFLOAT */
6629     TEST_TYPE_SIZE   (ABCFLOAT, 12)
6630     TEST_TYPE_ALIGN  (ABCFLOAT, 4)
6631     TEST_FIELD_SIZE  (ABCFLOAT, abcfA, 4)
6632     TEST_FIELD_ALIGN (ABCFLOAT, abcfA, 4)
6633     TEST_FIELD_OFFSET(ABCFLOAT, abcfA, 0)
6634     TEST_FIELD_SIZE  (ABCFLOAT, abcfB, 4)
6635     TEST_FIELD_ALIGN (ABCFLOAT, abcfB, 4)
6636     TEST_FIELD_OFFSET(ABCFLOAT, abcfB, 4)
6637     TEST_FIELD_SIZE  (ABCFLOAT, abcfC, 4)
6638     TEST_FIELD_ALIGN (ABCFLOAT, abcfC, 4)
6639     TEST_FIELD_OFFSET(ABCFLOAT, abcfC, 8)
6640 }
6641
6642 static void test_pack_ABORTPROC(void)
6643 {
6644     /* ABORTPROC */
6645     TEST_TYPE_SIZE   (ABORTPROC, 4)
6646     TEST_TYPE_ALIGN  (ABORTPROC, 4)
6647 }
6648
6649 static void test_pack_BITMAP(void)
6650 {
6651     /* BITMAP */
6652     TEST_TYPE_SIZE   (BITMAP, 24)
6653     TEST_TYPE_ALIGN  (BITMAP, 4)
6654     TEST_FIELD_SIZE  (BITMAP, bmType, 4)
6655     TEST_FIELD_ALIGN (BITMAP, bmType, 4)
6656     TEST_FIELD_OFFSET(BITMAP, bmType, 0)
6657     TEST_FIELD_SIZE  (BITMAP, bmWidth, 4)
6658     TEST_FIELD_ALIGN (BITMAP, bmWidth, 4)
6659     TEST_FIELD_OFFSET(BITMAP, bmWidth, 4)
6660     TEST_FIELD_SIZE  (BITMAP, bmHeight, 4)
6661     TEST_FIELD_ALIGN (BITMAP, bmHeight, 4)
6662     TEST_FIELD_OFFSET(BITMAP, bmHeight, 8)
6663     TEST_FIELD_SIZE  (BITMAP, bmWidthBytes, 4)
6664     TEST_FIELD_ALIGN (BITMAP, bmWidthBytes, 4)
6665     TEST_FIELD_OFFSET(BITMAP, bmWidthBytes, 12)
6666     TEST_FIELD_SIZE  (BITMAP, bmPlanes, 2)
6667     TEST_FIELD_ALIGN (BITMAP, bmPlanes, 2)
6668     TEST_FIELD_OFFSET(BITMAP, bmPlanes, 16)
6669     TEST_FIELD_SIZE  (BITMAP, bmBitsPixel, 2)
6670     TEST_FIELD_ALIGN (BITMAP, bmBitsPixel, 2)
6671     TEST_FIELD_OFFSET(BITMAP, bmBitsPixel, 18)
6672     TEST_FIELD_SIZE  (BITMAP, bmBits, 4)
6673     TEST_FIELD_ALIGN (BITMAP, bmBits, 4)
6674     TEST_FIELD_OFFSET(BITMAP, bmBits, 20)
6675 }
6676
6677 static void test_pack_BITMAPCOREHEADER(void)
6678 {
6679     /* BITMAPCOREHEADER */
6680     TEST_TYPE_SIZE   (BITMAPCOREHEADER, 12)
6681     TEST_TYPE_ALIGN  (BITMAPCOREHEADER, 4)
6682     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcSize, 4)
6683     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcSize, 4)
6684     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcSize, 0)
6685     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcWidth, 2)
6686     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcWidth, 2)
6687     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcWidth, 4)
6688     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcHeight, 2)
6689     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcHeight, 2)
6690     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcHeight, 6)
6691     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcPlanes, 2)
6692     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcPlanes, 2)
6693     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcPlanes, 8)
6694     TEST_FIELD_SIZE  (BITMAPCOREHEADER, bcBitCount, 2)
6695     TEST_FIELD_ALIGN (BITMAPCOREHEADER, bcBitCount, 2)
6696     TEST_FIELD_OFFSET(BITMAPCOREHEADER, bcBitCount, 10)
6697 }
6698
6699 static void test_pack_BITMAPCOREINFO(void)
6700 {
6701     /* BITMAPCOREINFO */
6702     TEST_TYPE_SIZE   (BITMAPCOREINFO, 16)
6703     TEST_TYPE_ALIGN  (BITMAPCOREINFO, 4)
6704     TEST_FIELD_SIZE  (BITMAPCOREINFO, bmciHeader, 12)
6705     TEST_FIELD_ALIGN (BITMAPCOREINFO, bmciHeader, 4)
6706     TEST_FIELD_OFFSET(BITMAPCOREINFO, bmciHeader, 0)
6707     TEST_FIELD_SIZE  (BITMAPCOREINFO, bmciColors, 3)
6708     TEST_FIELD_ALIGN (BITMAPCOREINFO, bmciColors, 1)
6709     TEST_FIELD_OFFSET(BITMAPCOREINFO, bmciColors, 12)
6710 }
6711
6712 static void test_pack_BITMAPFILEHEADER(void)
6713 {
6714     /* BITMAPFILEHEADER (pack 2) */
6715     TEST_TYPE_SIZE   (BITMAPFILEHEADER, 14)
6716     TEST_TYPE_ALIGN  (BITMAPFILEHEADER, 2)
6717     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfType, 2)
6718     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfType, 2)
6719     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfType, 0)
6720     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfSize, 4)
6721     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfSize, 2)
6722     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfSize, 2)
6723     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfReserved1, 2)
6724     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfReserved1, 2)
6725     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfReserved1, 6)
6726     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfReserved2, 2)
6727     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfReserved2, 2)
6728     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfReserved2, 8)
6729     TEST_FIELD_SIZE  (BITMAPFILEHEADER, bfOffBits, 4)
6730     TEST_FIELD_ALIGN (BITMAPFILEHEADER, bfOffBits, 2)
6731     TEST_FIELD_OFFSET(BITMAPFILEHEADER, bfOffBits, 10)
6732 }
6733
6734 static void test_pack_BITMAPINFO(void)
6735 {
6736     /* BITMAPINFO */
6737     TEST_TYPE_SIZE   (BITMAPINFO, 44)
6738     TEST_TYPE_ALIGN  (BITMAPINFO, 4)
6739     TEST_FIELD_SIZE  (BITMAPINFO, bmiHeader, 40)
6740     TEST_FIELD_ALIGN (BITMAPINFO, bmiHeader, 4)
6741     TEST_FIELD_OFFSET(BITMAPINFO, bmiHeader, 0)
6742     TEST_FIELD_SIZE  (BITMAPINFO, bmiColors, 4)
6743     TEST_FIELD_ALIGN (BITMAPINFO, bmiColors, 1)
6744     TEST_FIELD_OFFSET(BITMAPINFO, bmiColors, 40)
6745 }
6746
6747 static void test_pack_BITMAPINFOHEADER(void)
6748 {
6749     /* BITMAPINFOHEADER */
6750     TEST_TYPE_SIZE   (BITMAPINFOHEADER, 40)
6751     TEST_TYPE_ALIGN  (BITMAPINFOHEADER, 4)
6752     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biSize, 4)
6753     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biSize, 4)
6754     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biSize, 0)
6755     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biWidth, 4)
6756     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biWidth, 4)
6757     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biWidth, 4)
6758     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biHeight, 4)
6759     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biHeight, 4)
6760     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biHeight, 8)
6761     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biPlanes, 2)
6762     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biPlanes, 2)
6763     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biPlanes, 12)
6764     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biBitCount, 2)
6765     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biBitCount, 2)
6766     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biBitCount, 14)
6767     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biCompression, 4)
6768     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biCompression, 4)
6769     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biCompression, 16)
6770     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biSizeImage, 4)
6771     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biSizeImage, 4)
6772     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biSizeImage, 20)
6773     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biXPelsPerMeter, 4)
6774     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biXPelsPerMeter, 4)
6775     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biXPelsPerMeter, 24)
6776     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biYPelsPerMeter, 4)
6777     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biYPelsPerMeter, 4)
6778     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biYPelsPerMeter, 28)
6779     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biClrUsed, 4)
6780     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biClrUsed, 4)
6781     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biClrUsed, 32)
6782     TEST_FIELD_SIZE  (BITMAPINFOHEADER, biClrImportant, 4)
6783     TEST_FIELD_ALIGN (BITMAPINFOHEADER, biClrImportant, 4)
6784     TEST_FIELD_OFFSET(BITMAPINFOHEADER, biClrImportant, 36)
6785 }
6786
6787 static void test_pack_BITMAPV4HEADER(void)
6788 {
6789     /* BITMAPV4HEADER */
6790     TEST_TYPE_SIZE   (BITMAPV4HEADER, 108)
6791     TEST_TYPE_ALIGN  (BITMAPV4HEADER, 4)
6792     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Size, 4)
6793     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Size, 4)
6794     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Size, 0)
6795     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Width, 4)
6796     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Width, 4)
6797     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Width, 4)
6798     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Height, 4)
6799     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Height, 4)
6800     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Height, 8)
6801     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Planes, 2)
6802     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Planes, 2)
6803     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Planes, 12)
6804     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4BitCount, 2)
6805     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4BitCount, 2)
6806     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4BitCount, 14)
6807     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4V4Compression, 4)
6808     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4V4Compression, 4)
6809     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4V4Compression, 16)
6810     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4SizeImage, 4)
6811     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4SizeImage, 4)
6812     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4SizeImage, 20)
6813     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4XPelsPerMeter, 4)
6814     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4XPelsPerMeter, 4)
6815     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4XPelsPerMeter, 24)
6816     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4YPelsPerMeter, 4)
6817     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4YPelsPerMeter, 4)
6818     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4YPelsPerMeter, 28)
6819     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4ClrUsed, 4)
6820     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4ClrUsed, 4)
6821     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4ClrUsed, 32)
6822     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4ClrImportant, 4)
6823     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4ClrImportant, 4)
6824     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4ClrImportant, 36)
6825     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4RedMask, 4)
6826     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4RedMask, 4)
6827     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4RedMask, 40)
6828     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4GreenMask, 4)
6829     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GreenMask, 4)
6830     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GreenMask, 44)
6831     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4BlueMask, 4)
6832     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4BlueMask, 4)
6833     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4BlueMask, 48)
6834     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4AlphaMask, 4)
6835     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4AlphaMask, 4)
6836     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4AlphaMask, 52)
6837     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4CSType, 4)
6838     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4CSType, 4)
6839     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4CSType, 56)
6840     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4Endpoints, 36)
6841     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4Endpoints, 4)
6842     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4Endpoints, 60)
6843     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4GammaRed, 4)
6844     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaRed, 4)
6845     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaRed, 96)
6846     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4GammaGreen, 4)
6847     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaGreen, 4)
6848     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaGreen, 100)
6849     TEST_FIELD_SIZE  (BITMAPV4HEADER, bV4GammaBlue, 4)
6850     TEST_FIELD_ALIGN (BITMAPV4HEADER, bV4GammaBlue, 4)
6851     TEST_FIELD_OFFSET(BITMAPV4HEADER, bV4GammaBlue, 104)
6852 }
6853
6854 static void test_pack_BITMAPV5HEADER(void)
6855 {
6856     /* BITMAPV5HEADER */
6857     TEST_TYPE_SIZE   (BITMAPV5HEADER, 124)
6858     TEST_TYPE_ALIGN  (BITMAPV5HEADER, 4)
6859     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Size, 4)
6860     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Size, 4)
6861     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Size, 0)
6862     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Width, 4)
6863     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Width, 4)
6864     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Width, 4)
6865     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Height, 4)
6866     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Height, 4)
6867     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Height, 8)
6868     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Planes, 2)
6869     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Planes, 2)
6870     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Planes, 12)
6871     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5BitCount, 2)
6872     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5BitCount, 2)
6873     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5BitCount, 14)
6874     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Compression, 4)
6875     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Compression, 4)
6876     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Compression, 16)
6877     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5SizeImage, 4)
6878     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5SizeImage, 4)
6879     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5SizeImage, 20)
6880     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5XPelsPerMeter, 4)
6881     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5XPelsPerMeter, 4)
6882     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5XPelsPerMeter, 24)
6883     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5YPelsPerMeter, 4)
6884     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5YPelsPerMeter, 4)
6885     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5YPelsPerMeter, 28)
6886     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5ClrUsed, 4)
6887     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ClrUsed, 4)
6888     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ClrUsed, 32)
6889     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5ClrImportant, 4)
6890     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ClrImportant, 4)
6891     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ClrImportant, 36)
6892     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5RedMask, 4)
6893     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5RedMask, 4)
6894     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5RedMask, 40)
6895     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5GreenMask, 4)
6896     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GreenMask, 4)
6897     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GreenMask, 44)
6898     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5BlueMask, 4)
6899     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5BlueMask, 4)
6900     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5BlueMask, 48)
6901     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5AlphaMask, 4)
6902     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5AlphaMask, 4)
6903     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5AlphaMask, 52)
6904     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5CSType, 4)
6905     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5CSType, 4)
6906     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5CSType, 56)
6907     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Endpoints, 36)
6908     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Endpoints, 4)
6909     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Endpoints, 60)
6910     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5GammaRed, 4)
6911     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaRed, 4)
6912     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaRed, 96)
6913     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5GammaGreen, 4)
6914     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaGreen, 4)
6915     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaGreen, 100)
6916     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5GammaBlue, 4)
6917     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5GammaBlue, 4)
6918     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5GammaBlue, 104)
6919     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Intent, 4)
6920     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Intent, 4)
6921     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Intent, 108)
6922     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5ProfileData, 4)
6923     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ProfileData, 4)
6924     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ProfileData, 112)
6925     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5ProfileSize, 4)
6926     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5ProfileSize, 4)
6927     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5ProfileSize, 116)
6928     TEST_FIELD_SIZE  (BITMAPV5HEADER, bV5Reserved, 4)
6929     TEST_FIELD_ALIGN (BITMAPV5HEADER, bV5Reserved, 4)
6930     TEST_FIELD_OFFSET(BITMAPV5HEADER, bV5Reserved, 120)
6931 }
6932
6933 static void test_pack_BLENDFUNCTION(void)
6934 {
6935     /* BLENDFUNCTION */
6936     TEST_TYPE_SIZE   (BLENDFUNCTION, 4)
6937     TEST_TYPE_ALIGN  (BLENDFUNCTION, 1)
6938     TEST_FIELD_SIZE  (BLENDFUNCTION, BlendOp, 1)
6939     TEST_FIELD_ALIGN (BLENDFUNCTION, BlendOp, 1)
6940     TEST_FIELD_OFFSET(BLENDFUNCTION, BlendOp, 0)
6941     TEST_FIELD_SIZE  (BLENDFUNCTION, BlendFlags, 1)
6942     TEST_FIELD_ALIGN (BLENDFUNCTION, BlendFlags, 1)
6943     TEST_FIELD_OFFSET(BLENDFUNCTION, BlendFlags, 1)
6944     TEST_FIELD_SIZE  (BLENDFUNCTION, SourceConstantAlpha, 1)
6945     TEST_FIELD_ALIGN (BLENDFUNCTION, SourceConstantAlpha, 1)
6946     TEST_FIELD_OFFSET(BLENDFUNCTION, SourceConstantAlpha, 2)
6947     TEST_FIELD_SIZE  (BLENDFUNCTION, AlphaFormat, 1)
6948     TEST_FIELD_ALIGN (BLENDFUNCTION, AlphaFormat, 1)
6949     TEST_FIELD_OFFSET(BLENDFUNCTION, AlphaFormat, 3)
6950 }
6951
6952 static void test_pack_CHARSETINFO(void)
6953 {
6954     /* CHARSETINFO */
6955     TEST_TYPE_SIZE   (CHARSETINFO, 32)
6956     TEST_TYPE_ALIGN  (CHARSETINFO, 4)
6957     TEST_FIELD_SIZE  (CHARSETINFO, ciCharset, 4)
6958     TEST_FIELD_ALIGN (CHARSETINFO, ciCharset, 4)
6959     TEST_FIELD_OFFSET(CHARSETINFO, ciCharset, 0)
6960     TEST_FIELD_SIZE  (CHARSETINFO, ciACP, 4)
6961     TEST_FIELD_ALIGN (CHARSETINFO, ciACP, 4)
6962     TEST_FIELD_OFFSET(CHARSETINFO, ciACP, 4)
6963     TEST_FIELD_SIZE  (CHARSETINFO, fs, 24)
6964     TEST_FIELD_ALIGN (CHARSETINFO, fs, 4)
6965     TEST_FIELD_OFFSET(CHARSETINFO, fs, 8)
6966 }
6967
6968 static void test_pack_CIEXYZ(void)
6969 {
6970     /* CIEXYZ */
6971     TEST_TYPE_SIZE   (CIEXYZ, 12)
6972     TEST_TYPE_ALIGN  (CIEXYZ, 4)
6973     TEST_FIELD_SIZE  (CIEXYZ, ciexyzX, 4)
6974     TEST_FIELD_ALIGN (CIEXYZ, ciexyzX, 4)
6975     TEST_FIELD_OFFSET(CIEXYZ, ciexyzX, 0)
6976     TEST_FIELD_SIZE  (CIEXYZ, ciexyzY, 4)
6977     TEST_FIELD_ALIGN (CIEXYZ, ciexyzY, 4)
6978     TEST_FIELD_OFFSET(CIEXYZ, ciexyzY, 4)
6979     TEST_FIELD_SIZE  (CIEXYZ, ciexyzZ, 4)
6980     TEST_FIELD_ALIGN (CIEXYZ, ciexyzZ, 4)
6981     TEST_FIELD_OFFSET(CIEXYZ, ciexyzZ, 8)
6982 }
6983
6984 static void test_pack_CIEXYZTRIPLE(void)
6985 {
6986     /* CIEXYZTRIPLE */
6987     TEST_TYPE_SIZE   (CIEXYZTRIPLE, 36)
6988     TEST_TYPE_ALIGN  (CIEXYZTRIPLE, 4)
6989     TEST_FIELD_SIZE  (CIEXYZTRIPLE, ciexyzRed, 12)
6990     TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzRed, 4)
6991     TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzRed, 0)
6992     TEST_FIELD_SIZE  (CIEXYZTRIPLE, ciexyzGreen, 12)
6993     TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzGreen, 4)
6994     TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzGreen, 12)
6995     TEST_FIELD_SIZE  (CIEXYZTRIPLE, ciexyzBlue, 12)
6996     TEST_FIELD_ALIGN (CIEXYZTRIPLE, ciexyzBlue, 4)
6997     TEST_FIELD_OFFSET(CIEXYZTRIPLE, ciexyzBlue, 24)
6998 }
6999
7000 static void test_pack_COLOR16(void)
7001 {
7002     /* COLOR16 */
7003     TEST_TYPE_SIZE   (COLOR16, 2)
7004     TEST_TYPE_ALIGN  (COLOR16, 2)
7005 }
7006
7007 static void test_pack_COLORADJUSTMENT(void)
7008 {
7009     /* COLORADJUSTMENT */
7010     TEST_TYPE_SIZE   (COLORADJUSTMENT, 24)
7011     TEST_TYPE_ALIGN  (COLORADJUSTMENT, 2)
7012     TEST_FIELD_SIZE  (COLORADJUSTMENT, caSize, 2)
7013     TEST_FIELD_ALIGN (COLORADJUSTMENT, caSize, 2)
7014     TEST_FIELD_OFFSET(COLORADJUSTMENT, caSize, 0)
7015     TEST_FIELD_SIZE  (COLORADJUSTMENT, caFlags, 2)
7016     TEST_FIELD_ALIGN (COLORADJUSTMENT, caFlags, 2)
7017     TEST_FIELD_OFFSET(COLORADJUSTMENT, caFlags, 2)
7018     TEST_FIELD_SIZE  (COLORADJUSTMENT, caIlluminantIndex, 2)
7019     TEST_FIELD_ALIGN (COLORADJUSTMENT, caIlluminantIndex, 2)
7020     TEST_FIELD_OFFSET(COLORADJUSTMENT, caIlluminantIndex, 4)
7021     TEST_FIELD_SIZE  (COLORADJUSTMENT, caRedGamma, 2)
7022     TEST_FIELD_ALIGN (COLORADJUSTMENT, caRedGamma, 2)
7023     TEST_FIELD_OFFSET(COLORADJUSTMENT, caRedGamma, 6)
7024     TEST_FIELD_SIZE  (COLORADJUSTMENT, caGreenGamma, 2)
7025     TEST_FIELD_ALIGN (COLORADJUSTMENT, caGreenGamma, 2)
7026     TEST_FIELD_OFFSET(COLORADJUSTMENT, caGreenGamma, 8)
7027     TEST_FIELD_SIZE  (COLORADJUSTMENT, caBlueGamma, 2)
7028     TEST_FIELD_ALIGN (COLORADJUSTMENT, caBlueGamma, 2)
7029     TEST_FIELD_OFFSET(COLORADJUSTMENT, caBlueGamma, 10)
7030     TEST_FIELD_SIZE  (COLORADJUSTMENT, caReferenceBlack, 2)
7031     TEST_FIELD_ALIGN (COLORADJUSTMENT, caReferenceBlack, 2)
7032     TEST_FIELD_OFFSET(COLORADJUSTMENT, caReferenceBlack, 12)
7033     TEST_FIELD_SIZE  (COLORADJUSTMENT, caReferenceWhite, 2)
7034     TEST_FIELD_ALIGN (COLORADJUSTMENT, caReferenceWhite, 2)
7035     TEST_FIELD_OFFSET(COLORADJUSTMENT, caReferenceWhite, 14)
7036     TEST_FIELD_SIZE  (COLORADJUSTMENT, caContrast, 2)
7037     TEST_FIELD_ALIGN (COLORADJUSTMENT, caContrast, 2)
7038     TEST_FIELD_OFFSET(COLORADJUSTMENT, caContrast, 16)
7039     TEST_FIELD_SIZE  (COLORADJUSTMENT, caBrightness, 2)
7040     TEST_FIELD_ALIGN (COLORADJUSTMENT, caBrightness, 2)
7041     TEST_FIELD_OFFSET(COLORADJUSTMENT, caBrightness, 18)
7042     TEST_FIELD_SIZE  (COLORADJUSTMENT, caColorfulness, 2)
7043     TEST_FIELD_ALIGN (COLORADJUSTMENT, caColorfulness, 2)
7044     TEST_FIELD_OFFSET(COLORADJUSTMENT, caColorfulness, 20)
7045     TEST_FIELD_SIZE  (COLORADJUSTMENT, caRedGreenTint, 2)
7046     TEST_FIELD_ALIGN (COLORADJUSTMENT, caRedGreenTint, 2)
7047     TEST_FIELD_OFFSET(COLORADJUSTMENT, caRedGreenTint, 22)
7048 }
7049
7050 static void test_pack_DEVMODEA(void)
7051 {
7052     /* DEVMODEA */
7053     TEST_FIELD_SIZE  (DEVMODEA, dmDeviceName, 32)
7054     TEST_FIELD_ALIGN (DEVMODEA, dmDeviceName, 1)
7055     TEST_FIELD_OFFSET(DEVMODEA, dmDeviceName, 0)
7056     TEST_FIELD_SIZE  (DEVMODEA, dmSpecVersion, 2)
7057     TEST_FIELD_ALIGN (DEVMODEA, dmSpecVersion, 2)
7058     TEST_FIELD_OFFSET(DEVMODEA, dmSpecVersion, 32)
7059     TEST_FIELD_SIZE  (DEVMODEA, dmDriverVersion, 2)
7060     TEST_FIELD_ALIGN (DEVMODEA, dmDriverVersion, 2)
7061     TEST_FIELD_OFFSET(DEVMODEA, dmDriverVersion, 34)
7062     TEST_FIELD_SIZE  (DEVMODEA, dmSize, 2)
7063     TEST_FIELD_ALIGN (DEVMODEA, dmSize, 2)
7064     TEST_FIELD_OFFSET(DEVMODEA, dmSize, 36)
7065     TEST_FIELD_SIZE  (DEVMODEA, dmDriverExtra, 2)
7066     TEST_FIELD_ALIGN (DEVMODEA, dmDriverExtra, 2)
7067     TEST_FIELD_OFFSET(DEVMODEA, dmDriverExtra, 38)
7068     TEST_FIELD_SIZE  (DEVMODEA, dmFields, 4)
7069     TEST_FIELD_ALIGN (DEVMODEA, dmFields, 4)
7070     TEST_FIELD_OFFSET(DEVMODEA, dmFields, 40)
7071 }
7072
7073 static void test_pack_DEVMODEW(void)
7074 {
7075     /* DEVMODEW */
7076     TEST_FIELD_SIZE  (DEVMODEW, dmDeviceName, 64)
7077     TEST_FIELD_ALIGN (DEVMODEW, dmDeviceName, 2)
7078     TEST_FIELD_OFFSET(DEVMODEW, dmDeviceName, 0)
7079     TEST_FIELD_SIZE  (DEVMODEW, dmSpecVersion, 2)
7080     TEST_FIELD_ALIGN (DEVMODEW, dmSpecVersion, 2)
7081     TEST_FIELD_OFFSET(DEVMODEW, dmSpecVersion, 64)
7082     TEST_FIELD_SIZE  (DEVMODEW, dmDriverVersion, 2)
7083     TEST_FIELD_ALIGN (DEVMODEW, dmDriverVersion, 2)
7084     TEST_FIELD_OFFSET(DEVMODEW, dmDriverVersion, 66)
7085     TEST_FIELD_SIZE  (DEVMODEW, dmSize, 2)
7086     TEST_FIELD_ALIGN (DEVMODEW, dmSize, 2)
7087     TEST_FIELD_OFFSET(DEVMODEW, dmSize, 68)
7088     TEST_FIELD_SIZE  (DEVMODEW, dmDriverExtra, 2)
7089     TEST_FIELD_ALIGN (DEVMODEW, dmDriverExtra, 2)
7090     TEST_FIELD_OFFSET(DEVMODEW, dmDriverExtra, 70)
7091     TEST_FIELD_SIZE  (DEVMODEW, dmFields, 4)
7092     TEST_FIELD_ALIGN (DEVMODEW, dmFields, 4)
7093     TEST_FIELD_OFFSET(DEVMODEW, dmFields, 72)
7094 }
7095
7096 static void test_pack_DIBSECTION(void)
7097 {
7098     /* DIBSECTION */
7099     TEST_TYPE_SIZE   (DIBSECTION, 84)
7100     TEST_TYPE_ALIGN  (DIBSECTION, 4)
7101     TEST_FIELD_SIZE  (DIBSECTION, dsBm, 24)
7102     TEST_FIELD_ALIGN (DIBSECTION, dsBm, 4)
7103     TEST_FIELD_OFFSET(DIBSECTION, dsBm, 0)
7104     TEST_FIELD_SIZE  (DIBSECTION, dsBmih, 40)
7105     TEST_FIELD_ALIGN (DIBSECTION, dsBmih, 4)
7106     TEST_FIELD_OFFSET(DIBSECTION, dsBmih, 24)
7107     TEST_FIELD_SIZE  (DIBSECTION, dsBitfields, 12)
7108     TEST_FIELD_ALIGN (DIBSECTION, dsBitfields, 4)
7109     TEST_FIELD_OFFSET(DIBSECTION, dsBitfields, 64)
7110     TEST_FIELD_SIZE  (DIBSECTION, dshSection, 4)
7111     TEST_FIELD_ALIGN (DIBSECTION, dshSection, 4)
7112     TEST_FIELD_OFFSET(DIBSECTION, dshSection, 76)
7113     TEST_FIELD_SIZE  (DIBSECTION, dsOffset, 4)
7114     TEST_FIELD_ALIGN (DIBSECTION, dsOffset, 4)
7115     TEST_FIELD_OFFSET(DIBSECTION, dsOffset, 80)
7116 }
7117
7118 static void test_pack_DISPLAY_DEVICEA(void)
7119 {
7120     /* DISPLAY_DEVICEA */
7121     TEST_TYPE_SIZE   (DISPLAY_DEVICEA, 424)
7122     TEST_TYPE_ALIGN  (DISPLAY_DEVICEA, 4)
7123     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, cb, 4)
7124     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, cb, 4)
7125     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, cb, 0)
7126     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, DeviceName, 32)
7127     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceName, 1)
7128     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceName, 4)
7129     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, DeviceString, 128)
7130     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceString, 1)
7131     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceString, 36)
7132     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, StateFlags, 4)
7133     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, StateFlags, 4)
7134     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, StateFlags, 164)
7135     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, DeviceID, 128)
7136     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceID, 1)
7137     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceID, 168)
7138     TEST_FIELD_SIZE  (DISPLAY_DEVICEA, DeviceKey, 128)
7139     TEST_FIELD_ALIGN (DISPLAY_DEVICEA, DeviceKey, 1)
7140     TEST_FIELD_OFFSET(DISPLAY_DEVICEA, DeviceKey, 296)
7141 }
7142
7143 static void test_pack_DISPLAY_DEVICEW(void)
7144 {
7145     /* DISPLAY_DEVICEW */
7146     TEST_TYPE_SIZE   (DISPLAY_DEVICEW, 840)
7147     TEST_TYPE_ALIGN  (DISPLAY_DEVICEW, 4)
7148     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, cb, 4)
7149     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, cb, 4)
7150     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, cb, 0)
7151     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, DeviceName, 64)
7152     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceName, 2)
7153     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceName, 4)
7154     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, DeviceString, 256)
7155     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceString, 2)
7156     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceString, 68)
7157     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, StateFlags, 4)
7158     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, StateFlags, 4)
7159     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, StateFlags, 324)
7160     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, DeviceID, 256)
7161     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceID, 2)
7162     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceID, 328)
7163     TEST_FIELD_SIZE  (DISPLAY_DEVICEW, DeviceKey, 256)
7164     TEST_FIELD_ALIGN (DISPLAY_DEVICEW, DeviceKey, 2)
7165     TEST_FIELD_OFFSET(DISPLAY_DEVICEW, DeviceKey, 584)
7166 }
7167
7168 static void test_pack_DOCINFOA(void)
7169 {
7170     /* DOCINFOA */
7171     TEST_TYPE_SIZE   (DOCINFOA, 20)
7172     TEST_TYPE_ALIGN  (DOCINFOA, 4)
7173     TEST_FIELD_SIZE  (DOCINFOA, cbSize, 4)
7174     TEST_FIELD_ALIGN (DOCINFOA, cbSize, 4)
7175     TEST_FIELD_OFFSET(DOCINFOA, cbSize, 0)
7176     TEST_FIELD_SIZE  (DOCINFOA, lpszDocName, 4)
7177     TEST_FIELD_ALIGN (DOCINFOA, lpszDocName, 4)
7178     TEST_FIELD_OFFSET(DOCINFOA, lpszDocName, 4)
7179     TEST_FIELD_SIZE  (DOCINFOA, lpszOutput, 4)
7180     TEST_FIELD_ALIGN (DOCINFOA, lpszOutput, 4)
7181     TEST_FIELD_OFFSET(DOCINFOA, lpszOutput, 8)
7182     TEST_FIELD_SIZE  (DOCINFOA, lpszDatatype, 4)
7183     TEST_FIELD_ALIGN (DOCINFOA, lpszDatatype, 4)
7184     TEST_FIELD_OFFSET(DOCINFOA, lpszDatatype, 12)
7185     TEST_FIELD_SIZE  (DOCINFOA, fwType, 4)
7186     TEST_FIELD_ALIGN (DOCINFOA, fwType, 4)
7187     TEST_FIELD_OFFSET(DOCINFOA, fwType, 16)
7188 }
7189
7190 static void test_pack_DOCINFOW(void)
7191 {
7192     /* DOCINFOW */
7193     TEST_TYPE_SIZE   (DOCINFOW, 20)
7194     TEST_TYPE_ALIGN  (DOCINFOW, 4)
7195     TEST_FIELD_SIZE  (DOCINFOW, cbSize, 4)
7196     TEST_FIELD_ALIGN (DOCINFOW, cbSize, 4)
7197     TEST_FIELD_OFFSET(DOCINFOW, cbSize, 0)
7198     TEST_FIELD_SIZE  (DOCINFOW, lpszDocName, 4)
7199     TEST_FIELD_ALIGN (DOCINFOW, lpszDocName, 4)
7200     TEST_FIELD_OFFSET(DOCINFOW, lpszDocName, 4)
7201     TEST_FIELD_SIZE  (DOCINFOW, lpszOutput, 4)
7202     TEST_FIELD_ALIGN (DOCINFOW, lpszOutput, 4)
7203     TEST_FIELD_OFFSET(DOCINFOW, lpszOutput, 8)
7204     TEST_FIELD_SIZE  (DOCINFOW, lpszDatatype, 4)
7205     TEST_FIELD_ALIGN (DOCINFOW, lpszDatatype, 4)
7206     TEST_FIELD_OFFSET(DOCINFOW, lpszDatatype, 12)
7207     TEST_FIELD_SIZE  (DOCINFOW, fwType, 4)
7208     TEST_FIELD_ALIGN (DOCINFOW, fwType, 4)
7209     TEST_FIELD_OFFSET(DOCINFOW, fwType, 16)
7210 }
7211
7212 static void test_pack_EMR(void)
7213 {
7214     /* EMR */
7215     TEST_TYPE_SIZE   (EMR, 8)
7216     TEST_TYPE_ALIGN  (EMR, 4)
7217     TEST_FIELD_SIZE  (EMR, iType, 4)
7218     TEST_FIELD_ALIGN (EMR, iType, 4)
7219     TEST_FIELD_OFFSET(EMR, iType, 0)
7220     TEST_FIELD_SIZE  (EMR, nSize, 4)
7221     TEST_FIELD_ALIGN (EMR, nSize, 4)
7222     TEST_FIELD_OFFSET(EMR, nSize, 4)
7223 }
7224
7225 static void test_pack_EMRABORTPATH(void)
7226 {
7227     /* EMRABORTPATH */
7228     TEST_TYPE_SIZE   (EMRABORTPATH, 8)
7229     TEST_TYPE_ALIGN  (EMRABORTPATH, 4)
7230     TEST_FIELD_SIZE  (EMRABORTPATH, emr, 8)
7231     TEST_FIELD_ALIGN (EMRABORTPATH, emr, 4)
7232     TEST_FIELD_OFFSET(EMRABORTPATH, emr, 0)
7233 }
7234
7235 static void test_pack_EMRANGLEARC(void)
7236 {
7237     /* EMRANGLEARC */
7238     TEST_TYPE_SIZE   (EMRANGLEARC, 28)
7239     TEST_TYPE_ALIGN  (EMRANGLEARC, 4)
7240     TEST_FIELD_SIZE  (EMRANGLEARC, emr, 8)
7241     TEST_FIELD_ALIGN (EMRANGLEARC, emr, 4)
7242     TEST_FIELD_OFFSET(EMRANGLEARC, emr, 0)
7243     TEST_FIELD_SIZE  (EMRANGLEARC, ptlCenter, 8)
7244     TEST_FIELD_ALIGN (EMRANGLEARC, ptlCenter, 4)
7245     TEST_FIELD_OFFSET(EMRANGLEARC, ptlCenter, 8)
7246     TEST_FIELD_SIZE  (EMRANGLEARC, nRadius, 4)
7247     TEST_FIELD_ALIGN (EMRANGLEARC, nRadius, 4)
7248     TEST_FIELD_OFFSET(EMRANGLEARC, nRadius, 16)
7249     TEST_FIELD_SIZE  (EMRANGLEARC, eStartAngle, 4)
7250     TEST_FIELD_ALIGN (EMRANGLEARC, eStartAngle, 4)
7251     TEST_FIELD_OFFSET(EMRANGLEARC, eStartAngle, 20)
7252     TEST_FIELD_SIZE  (EMRANGLEARC, eSweepAngle, 4)
7253     TEST_FIELD_ALIGN (EMRANGLEARC, eSweepAngle, 4)
7254     TEST_FIELD_OFFSET(EMRANGLEARC, eSweepAngle, 24)
7255 }
7256
7257 static void test_pack_EMRARC(void)
7258 {
7259     /* EMRARC */
7260     TEST_TYPE_SIZE   (EMRARC, 40)
7261     TEST_TYPE_ALIGN  (EMRARC, 4)
7262     TEST_FIELD_SIZE  (EMRARC, emr, 8)
7263     TEST_FIELD_ALIGN (EMRARC, emr, 4)
7264     TEST_FIELD_OFFSET(EMRARC, emr, 0)
7265     TEST_FIELD_SIZE  (EMRARC, rclBox, 16)
7266     TEST_FIELD_ALIGN (EMRARC, rclBox, 4)
7267     TEST_FIELD_OFFSET(EMRARC, rclBox, 8)
7268     TEST_FIELD_SIZE  (EMRARC, ptlStart, 8)
7269     TEST_FIELD_ALIGN (EMRARC, ptlStart, 4)
7270     TEST_FIELD_OFFSET(EMRARC, ptlStart, 24)
7271     TEST_FIELD_SIZE  (EMRARC, ptlEnd, 8)
7272     TEST_FIELD_ALIGN (EMRARC, ptlEnd, 4)
7273     TEST_FIELD_OFFSET(EMRARC, ptlEnd, 32)
7274 }
7275
7276 static void test_pack_EMRARCTO(void)
7277 {
7278     /* EMRARCTO */
7279     TEST_TYPE_SIZE   (EMRARCTO, 40)
7280     TEST_TYPE_ALIGN  (EMRARCTO, 4)
7281     TEST_FIELD_SIZE  (EMRARCTO, emr, 8)
7282     TEST_FIELD_ALIGN (EMRARCTO, emr, 4)
7283     TEST_FIELD_OFFSET(EMRARCTO, emr, 0)
7284     TEST_FIELD_SIZE  (EMRARCTO, rclBox, 16)
7285     TEST_FIELD_ALIGN (EMRARCTO, rclBox, 4)
7286     TEST_FIELD_OFFSET(EMRARCTO, rclBox, 8)
7287     TEST_FIELD_SIZE  (EMRARCTO, ptlStart, 8)
7288     TEST_FIELD_ALIGN (EMRARCTO, ptlStart, 4)
7289     TEST_FIELD_OFFSET(EMRARCTO, ptlStart, 24)
7290     TEST_FIELD_SIZE  (EMRARCTO, ptlEnd, 8)
7291     TEST_FIELD_ALIGN (EMRARCTO, ptlEnd, 4)
7292     TEST_FIELD_OFFSET(EMRARCTO, ptlEnd, 32)
7293 }
7294
7295 static void test_pack_EMRBEGINPATH(void)
7296 {
7297     /* EMRBEGINPATH */
7298     TEST_TYPE_SIZE   (EMRBEGINPATH, 8)
7299     TEST_TYPE_ALIGN  (EMRBEGINPATH, 4)
7300     TEST_FIELD_SIZE  (EMRBEGINPATH, emr, 8)
7301     TEST_FIELD_ALIGN (EMRBEGINPATH, emr, 4)
7302     TEST_FIELD_OFFSET(EMRBEGINPATH, emr, 0)
7303 }
7304
7305 static void test_pack_EMRBITBLT(void)
7306 {
7307     /* EMRBITBLT */
7308     TEST_TYPE_SIZE   (EMRBITBLT, 100)
7309     TEST_TYPE_ALIGN  (EMRBITBLT, 4)
7310     TEST_FIELD_SIZE  (EMRBITBLT, emr, 8)
7311     TEST_FIELD_ALIGN (EMRBITBLT, emr, 4)
7312     TEST_FIELD_OFFSET(EMRBITBLT, emr, 0)
7313     TEST_FIELD_SIZE  (EMRBITBLT, rclBounds, 16)
7314     TEST_FIELD_ALIGN (EMRBITBLT, rclBounds, 4)
7315     TEST_FIELD_OFFSET(EMRBITBLT, rclBounds, 8)
7316     TEST_FIELD_SIZE  (EMRBITBLT, xDest, 4)
7317     TEST_FIELD_ALIGN (EMRBITBLT, xDest, 4)
7318     TEST_FIELD_OFFSET(EMRBITBLT, xDest, 24)
7319     TEST_FIELD_SIZE  (EMRBITBLT, yDest, 4)
7320     TEST_FIELD_ALIGN (EMRBITBLT, yDest, 4)
7321     TEST_FIELD_OFFSET(EMRBITBLT, yDest, 28)
7322     TEST_FIELD_SIZE  (EMRBITBLT, cxDest, 4)
7323     TEST_FIELD_ALIGN (EMRBITBLT, cxDest, 4)
7324     TEST_FIELD_OFFSET(EMRBITBLT, cxDest, 32)
7325     TEST_FIELD_SIZE  (EMRBITBLT, cyDest, 4)
7326     TEST_FIELD_ALIGN (EMRBITBLT, cyDest, 4)
7327     TEST_FIELD_OFFSET(EMRBITBLT, cyDest, 36)
7328     TEST_FIELD_SIZE  (EMRBITBLT, dwRop, 4)
7329     TEST_FIELD_ALIGN (EMRBITBLT, dwRop, 4)
7330     TEST_FIELD_OFFSET(EMRBITBLT, dwRop, 40)
7331     TEST_FIELD_SIZE  (EMRBITBLT, xSrc, 4)
7332     TEST_FIELD_ALIGN (EMRBITBLT, xSrc, 4)
7333     TEST_FIELD_OFFSET(EMRBITBLT, xSrc, 44)
7334     TEST_FIELD_SIZE  (EMRBITBLT, ySrc, 4)
7335     TEST_FIELD_ALIGN (EMRBITBLT, ySrc, 4)
7336     TEST_FIELD_OFFSET(EMRBITBLT, ySrc, 48)
7337     TEST_FIELD_SIZE  (EMRBITBLT, xformSrc, 24)
7338     TEST_FIELD_ALIGN (EMRBITBLT, xformSrc, 4)
7339     TEST_FIELD_OFFSET(EMRBITBLT, xformSrc, 52)
7340     TEST_FIELD_SIZE  (EMRBITBLT, crBkColorSrc, 4)
7341     TEST_FIELD_ALIGN (EMRBITBLT, crBkColorSrc, 4)
7342     TEST_FIELD_OFFSET(EMRBITBLT, crBkColorSrc, 76)
7343     TEST_FIELD_SIZE  (EMRBITBLT, iUsageSrc, 4)
7344     TEST_FIELD_ALIGN (EMRBITBLT, iUsageSrc, 4)
7345     TEST_FIELD_OFFSET(EMRBITBLT, iUsageSrc, 80)
7346     TEST_FIELD_SIZE  (EMRBITBLT, offBmiSrc, 4)
7347     TEST_FIELD_ALIGN (EMRBITBLT, offBmiSrc, 4)
7348     TEST_FIELD_OFFSET(EMRBITBLT, offBmiSrc, 84)
7349     TEST_FIELD_SIZE  (EMRBITBLT, cbBmiSrc, 4)
7350     TEST_FIELD_ALIGN (EMRBITBLT, cbBmiSrc, 4)
7351     TEST_FIELD_OFFSET(EMRBITBLT, cbBmiSrc, 88)
7352     TEST_FIELD_SIZE  (EMRBITBLT, offBitsSrc, 4)
7353     TEST_FIELD_ALIGN (EMRBITBLT, offBitsSrc, 4)
7354     TEST_FIELD_OFFSET(EMRBITBLT, offBitsSrc, 92)
7355     TEST_FIELD_SIZE  (EMRBITBLT, cbBitsSrc, 4)
7356     TEST_FIELD_ALIGN (EMRBITBLT, cbBitsSrc, 4)
7357     TEST_FIELD_OFFSET(EMRBITBLT, cbBitsSrc, 96)
7358 }
7359
7360 static void test_pack_EMRCHORD(void)
7361 {
7362     /* EMRCHORD */
7363     TEST_TYPE_SIZE   (EMRCHORD, 40)
7364     TEST_TYPE_ALIGN  (EMRCHORD, 4)
7365     TEST_FIELD_SIZE  (EMRCHORD, emr, 8)
7366     TEST_FIELD_ALIGN (EMRCHORD, emr, 4)
7367     TEST_FIELD_OFFSET(EMRCHORD, emr, 0)
7368     TEST_FIELD_SIZE  (EMRCHORD, rclBox, 16)
7369     TEST_FIELD_ALIGN (EMRCHORD, rclBox, 4)
7370     TEST_FIELD_OFFSET(EMRCHORD, rclBox, 8)
7371     TEST_FIELD_SIZE  (EMRCHORD, ptlStart, 8)
7372     TEST_FIELD_ALIGN (EMRCHORD, ptlStart, 4)
7373     TEST_FIELD_OFFSET(EMRCHORD, ptlStart, 24)
7374     TEST_FIELD_SIZE  (EMRCHORD, ptlEnd, 8)
7375     TEST_FIELD_ALIGN (EMRCHORD, ptlEnd, 4)
7376     TEST_FIELD_OFFSET(EMRCHORD, ptlEnd, 32)
7377 }
7378
7379 static void test_pack_EMRCLOSEFIGURE(void)
7380 {
7381     /* EMRCLOSEFIGURE */
7382     TEST_TYPE_SIZE   (EMRCLOSEFIGURE, 8)
7383     TEST_TYPE_ALIGN  (EMRCLOSEFIGURE, 4)
7384     TEST_FIELD_SIZE  (EMRCLOSEFIGURE, emr, 8)
7385     TEST_FIELD_ALIGN (EMRCLOSEFIGURE, emr, 4)
7386     TEST_FIELD_OFFSET(EMRCLOSEFIGURE, emr, 0)
7387 }
7388
7389 static void test_pack_EMRCREATEBRUSHINDIRECT(void)
7390 {
7391     /* EMRCREATEBRUSHINDIRECT */
7392     TEST_TYPE_SIZE   (EMRCREATEBRUSHINDIRECT, 24)
7393     TEST_TYPE_ALIGN  (EMRCREATEBRUSHINDIRECT, 4)
7394     TEST_FIELD_SIZE  (EMRCREATEBRUSHINDIRECT, emr, 8)
7395     TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, emr, 4)
7396     TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, emr, 0)
7397     TEST_FIELD_SIZE  (EMRCREATEBRUSHINDIRECT, ihBrush, 4)
7398     TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, ihBrush, 4)
7399     TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, ihBrush, 8)
7400     TEST_FIELD_SIZE  (EMRCREATEBRUSHINDIRECT, lb, 12)
7401     TEST_FIELD_ALIGN (EMRCREATEBRUSHINDIRECT, lb, 4)
7402     TEST_FIELD_OFFSET(EMRCREATEBRUSHINDIRECT, lb, 12)
7403 }
7404
7405 static void test_pack_EMRCREATECOLORSPACE(void)
7406 {
7407     /* EMRCREATECOLORSPACE */
7408     TEST_TYPE_SIZE   (EMRCREATECOLORSPACE, 340)
7409     TEST_TYPE_ALIGN  (EMRCREATECOLORSPACE, 4)
7410     TEST_FIELD_SIZE  (EMRCREATECOLORSPACE, emr, 8)
7411     TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, emr, 4)
7412     TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, emr, 0)
7413     TEST_FIELD_SIZE  (EMRCREATECOLORSPACE, ihCS, 4)
7414     TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, ihCS, 4)
7415     TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, ihCS, 8)
7416     TEST_FIELD_SIZE  (EMRCREATECOLORSPACE, lcs, 328)
7417     TEST_FIELD_ALIGN (EMRCREATECOLORSPACE, lcs, 4)
7418     TEST_FIELD_OFFSET(EMRCREATECOLORSPACE, lcs, 12)
7419 }
7420
7421 static void test_pack_EMRCREATECOLORSPACEW(void)
7422 {
7423     /* EMRCREATECOLORSPACEW */
7424     TEST_TYPE_SIZE   (EMRCREATECOLORSPACEW, 612)
7425     TEST_TYPE_ALIGN  (EMRCREATECOLORSPACEW, 4)
7426     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, emr, 8)
7427     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, emr, 4)
7428     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, emr, 0)
7429     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, ihCS, 4)
7430     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, ihCS, 4)
7431     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, ihCS, 8)
7432     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, lcs, 588)
7433     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, lcs, 4)
7434     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, lcs, 12)
7435     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, dwFlags, 4)
7436     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, dwFlags, 4)
7437     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, dwFlags, 600)
7438     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, cbData, 4)
7439     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, cbData, 4)
7440     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, cbData, 604)
7441     TEST_FIELD_SIZE  (EMRCREATECOLORSPACEW, Data, 1)
7442     TEST_FIELD_ALIGN (EMRCREATECOLORSPACEW, Data, 1)
7443     TEST_FIELD_OFFSET(EMRCREATECOLORSPACEW, Data, 608)
7444 }
7445
7446 static void test_pack_EMRCREATEDIBPATTERNBRUSHPT(void)
7447 {
7448     /* EMRCREATEDIBPATTERNBRUSHPT */
7449     TEST_TYPE_SIZE   (EMRCREATEDIBPATTERNBRUSHPT, 32)
7450     TEST_TYPE_ALIGN  (EMRCREATEDIBPATTERNBRUSHPT, 4)
7451     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, emr, 8)
7452     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, emr, 4)
7453     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, emr, 0)
7454     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 4)
7455     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 4)
7456     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, ihBrush, 8)
7457     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, iUsage, 4)
7458     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, iUsage, 4)
7459     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, iUsage, 12)
7460     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, offBmi, 4)
7461     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, offBmi, 4)
7462     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBmi, 16)
7463     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 4)
7464     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 4)
7465     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBmi, 20)
7466     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, offBits, 4)
7467     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, offBits, 4)
7468     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, offBits, 24)
7469     TEST_FIELD_SIZE  (EMRCREATEDIBPATTERNBRUSHPT, cbBits, 4)
7470     TEST_FIELD_ALIGN (EMRCREATEDIBPATTERNBRUSHPT, cbBits, 4)
7471     TEST_FIELD_OFFSET(EMRCREATEDIBPATTERNBRUSHPT, cbBits, 28)
7472 }
7473
7474 static void test_pack_EMRCREATEMONOBRUSH(void)
7475 {
7476     /* EMRCREATEMONOBRUSH */
7477     TEST_TYPE_SIZE   (EMRCREATEMONOBRUSH, 32)
7478     TEST_TYPE_ALIGN  (EMRCREATEMONOBRUSH, 4)
7479     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, emr, 8)
7480     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, emr, 4)
7481     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, emr, 0)
7482     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, ihBrush, 4)
7483     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, ihBrush, 4)
7484     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, ihBrush, 8)
7485     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, iUsage, 4)
7486     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, iUsage, 4)
7487     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, iUsage, 12)
7488     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, offBmi, 4)
7489     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, offBmi, 4)
7490     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, offBmi, 16)
7491     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, cbBmi, 4)
7492     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, cbBmi, 4)
7493     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBmi, 20)
7494     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, offBits, 4)
7495     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, offBits, 4)
7496     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, offBits, 24)
7497     TEST_FIELD_SIZE  (EMRCREATEMONOBRUSH, cbBits, 4)
7498     TEST_FIELD_ALIGN (EMRCREATEMONOBRUSH, cbBits, 4)
7499     TEST_FIELD_OFFSET(EMRCREATEMONOBRUSH, cbBits, 28)
7500 }
7501
7502 static void test_pack_EMRCREATEPEN(void)
7503 {
7504     /* EMRCREATEPEN */
7505     TEST_TYPE_SIZE   (EMRCREATEPEN, 28)
7506     TEST_TYPE_ALIGN  (EMRCREATEPEN, 4)
7507     TEST_FIELD_SIZE  (EMRCREATEPEN, emr, 8)
7508     TEST_FIELD_ALIGN (EMRCREATEPEN, emr, 4)
7509     TEST_FIELD_OFFSET(EMRCREATEPEN, emr, 0)
7510     TEST_FIELD_SIZE  (EMRCREATEPEN, ihPen, 4)
7511     TEST_FIELD_ALIGN (EMRCREATEPEN, ihPen, 4)
7512     TEST_FIELD_OFFSET(EMRCREATEPEN, ihPen, 8)
7513     TEST_FIELD_SIZE  (EMRCREATEPEN, lopn, 16)
7514     TEST_FIELD_ALIGN (EMRCREATEPEN, lopn, 4)
7515     TEST_FIELD_OFFSET(EMRCREATEPEN, lopn, 12)
7516 }
7517
7518 static void test_pack_EMRDELETECOLORSPACE(void)
7519 {
7520     /* EMRDELETECOLORSPACE */
7521     TEST_TYPE_SIZE   (EMRDELETECOLORSPACE, 12)
7522     TEST_TYPE_ALIGN  (EMRDELETECOLORSPACE, 4)
7523     TEST_FIELD_SIZE  (EMRDELETECOLORSPACE, emr, 8)
7524     TEST_FIELD_ALIGN (EMRDELETECOLORSPACE, emr, 4)
7525     TEST_FIELD_OFFSET(EMRDELETECOLORSPACE, emr, 0)
7526     TEST_FIELD_SIZE  (EMRDELETECOLORSPACE, ihCS, 4)
7527     TEST_FIELD_ALIGN (EMRDELETECOLORSPACE, ihCS, 4)
7528     TEST_FIELD_OFFSET(EMRDELETECOLORSPACE, ihCS, 8)
7529 }
7530
7531 static void test_pack_EMRDELETEOBJECT(void)
7532 {
7533     /* EMRDELETEOBJECT */
7534     TEST_TYPE_SIZE   (EMRDELETEOBJECT, 12)
7535     TEST_TYPE_ALIGN  (EMRDELETEOBJECT, 4)
7536     TEST_FIELD_SIZE  (EMRDELETEOBJECT, emr, 8)
7537     TEST_FIELD_ALIGN (EMRDELETEOBJECT, emr, 4)
7538     TEST_FIELD_OFFSET(EMRDELETEOBJECT, emr, 0)
7539     TEST_FIELD_SIZE  (EMRDELETEOBJECT, ihObject, 4)
7540     TEST_FIELD_ALIGN (EMRDELETEOBJECT, ihObject, 4)
7541     TEST_FIELD_OFFSET(EMRDELETEOBJECT, ihObject, 8)
7542 }
7543
7544 static void test_pack_EMRELLIPSE(void)
7545 {
7546     /* EMRELLIPSE */
7547     TEST_TYPE_SIZE   (EMRELLIPSE, 24)
7548     TEST_TYPE_ALIGN  (EMRELLIPSE, 4)
7549     TEST_FIELD_SIZE  (EMRELLIPSE, emr, 8)
7550     TEST_FIELD_ALIGN (EMRELLIPSE, emr, 4)
7551     TEST_FIELD_OFFSET(EMRELLIPSE, emr, 0)
7552     TEST_FIELD_SIZE  (EMRELLIPSE, rclBox, 16)
7553     TEST_FIELD_ALIGN (EMRELLIPSE, rclBox, 4)
7554     TEST_FIELD_OFFSET(EMRELLIPSE, rclBox, 8)
7555 }
7556
7557 static void test_pack_EMRENDPATH(void)
7558 {
7559     /* EMRENDPATH */
7560     TEST_TYPE_SIZE   (EMRENDPATH, 8)
7561     TEST_TYPE_ALIGN  (EMRENDPATH, 4)
7562     TEST_FIELD_SIZE  (EMRENDPATH, emr, 8)
7563     TEST_FIELD_ALIGN (EMRENDPATH, emr, 4)
7564     TEST_FIELD_OFFSET(EMRENDPATH, emr, 0)
7565 }
7566
7567 static void test_pack_EMREOF(void)
7568 {
7569     /* EMREOF */
7570     TEST_TYPE_SIZE   (EMREOF, 20)
7571     TEST_TYPE_ALIGN  (EMREOF, 4)
7572     TEST_FIELD_SIZE  (EMREOF, emr, 8)
7573     TEST_FIELD_ALIGN (EMREOF, emr, 4)
7574     TEST_FIELD_OFFSET(EMREOF, emr, 0)
7575     TEST_FIELD_SIZE  (EMREOF, nPalEntries, 4)
7576     TEST_FIELD_ALIGN (EMREOF, nPalEntries, 4)
7577     TEST_FIELD_OFFSET(EMREOF, nPalEntries, 8)
7578     TEST_FIELD_SIZE  (EMREOF, offPalEntries, 4)
7579     TEST_FIELD_ALIGN (EMREOF, offPalEntries, 4)
7580     TEST_FIELD_OFFSET(EMREOF, offPalEntries, 12)
7581     TEST_FIELD_SIZE  (EMREOF, nSizeLast, 4)
7582     TEST_FIELD_ALIGN (EMREOF, nSizeLast, 4)
7583     TEST_FIELD_OFFSET(EMREOF, nSizeLast, 16)
7584 }
7585
7586 static void test_pack_EMREXCLUDECLIPRECT(void)
7587 {
7588     /* EMREXCLUDECLIPRECT */
7589     TEST_TYPE_SIZE   (EMREXCLUDECLIPRECT, 24)
7590     TEST_TYPE_ALIGN  (EMREXCLUDECLIPRECT, 4)
7591     TEST_FIELD_SIZE  (EMREXCLUDECLIPRECT, emr, 8)
7592     TEST_FIELD_ALIGN (EMREXCLUDECLIPRECT, emr, 4)
7593     TEST_FIELD_OFFSET(EMREXCLUDECLIPRECT, emr, 0)
7594     TEST_FIELD_SIZE  (EMREXCLUDECLIPRECT, rclClip, 16)
7595     TEST_FIELD_ALIGN (EMREXCLUDECLIPRECT, rclClip, 4)
7596     TEST_FIELD_OFFSET(EMREXCLUDECLIPRECT, rclClip, 8)
7597 }
7598
7599 static void test_pack_EMREXTCREATEFONTINDIRECTW(void)
7600 {
7601     /* EMREXTCREATEFONTINDIRECTW */
7602     TEST_TYPE_SIZE   (EMREXTCREATEFONTINDIRECTW, 332)
7603     TEST_TYPE_ALIGN  (EMREXTCREATEFONTINDIRECTW, 4)
7604     TEST_FIELD_SIZE  (EMREXTCREATEFONTINDIRECTW, emr, 8)
7605     TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, emr, 4)
7606     TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, emr, 0)
7607     TEST_FIELD_SIZE  (EMREXTCREATEFONTINDIRECTW, ihFont, 4)
7608     TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, ihFont, 4)
7609     TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, ihFont, 8)
7610     TEST_FIELD_SIZE  (EMREXTCREATEFONTINDIRECTW, elfw, 320)
7611     TEST_FIELD_ALIGN (EMREXTCREATEFONTINDIRECTW, elfw, 4)
7612     TEST_FIELD_OFFSET(EMREXTCREATEFONTINDIRECTW, elfw, 12)
7613 }
7614
7615 static void test_pack_EMREXTCREATEPEN(void)
7616 {
7617     /* EMREXTCREATEPEN */
7618     TEST_TYPE_SIZE   (EMREXTCREATEPEN, 56)
7619     TEST_TYPE_ALIGN  (EMREXTCREATEPEN, 4)
7620     TEST_FIELD_SIZE  (EMREXTCREATEPEN, emr, 8)
7621     TEST_FIELD_ALIGN (EMREXTCREATEPEN, emr, 4)
7622     TEST_FIELD_OFFSET(EMREXTCREATEPEN, emr, 0)
7623     TEST_FIELD_SIZE  (EMREXTCREATEPEN, ihPen, 4)
7624     TEST_FIELD_ALIGN (EMREXTCREATEPEN, ihPen, 4)
7625     TEST_FIELD_OFFSET(EMREXTCREATEPEN, ihPen, 8)
7626     TEST_FIELD_SIZE  (EMREXTCREATEPEN, offBmi, 4)
7627     TEST_FIELD_ALIGN (EMREXTCREATEPEN, offBmi, 4)
7628     TEST_FIELD_OFFSET(EMREXTCREATEPEN, offBmi, 12)
7629     TEST_FIELD_SIZE  (EMREXTCREATEPEN, cbBmi, 4)
7630     TEST_FIELD_ALIGN (EMREXTCREATEPEN, cbBmi, 4)
7631     TEST_FIELD_OFFSET(EMREXTCREATEPEN, cbBmi, 16)
7632     TEST_FIELD_SIZE  (EMREXTCREATEPEN, offBits, 4)
7633     TEST_FIELD_ALIGN (EMREXTCREATEPEN, offBits, 4)
7634     TEST_FIELD_OFFSET(EMREXTCREATEPEN, offBits, 20)
7635     TEST_FIELD_SIZE  (EMREXTCREATEPEN, cbBits, 4)
7636     TEST_FIELD_ALIGN (EMREXTCREATEPEN, cbBits, 4)
7637     TEST_FIELD_OFFSET(EMREXTCREATEPEN, cbBits, 24)
7638     TEST_FIELD_SIZE  (EMREXTCREATEPEN, elp, 28)
7639     TEST_FIELD_ALIGN (EMREXTCREATEPEN, elp, 4)
7640     TEST_FIELD_OFFSET(EMREXTCREATEPEN, elp, 28)
7641 }
7642
7643 static void test_pack_EMREXTFLOODFILL(void)
7644 {
7645     /* EMREXTFLOODFILL */
7646     TEST_TYPE_SIZE   (EMREXTFLOODFILL, 24)
7647     TEST_TYPE_ALIGN  (EMREXTFLOODFILL, 4)
7648     TEST_FIELD_SIZE  (EMREXTFLOODFILL, emr, 8)
7649     TEST_FIELD_ALIGN (EMREXTFLOODFILL, emr, 4)
7650     TEST_FIELD_OFFSET(EMREXTFLOODFILL, emr, 0)
7651     TEST_FIELD_SIZE  (EMREXTFLOODFILL, ptlStart, 8)
7652     TEST_FIELD_ALIGN (EMREXTFLOODFILL, ptlStart, 4)
7653     TEST_FIELD_OFFSET(EMREXTFLOODFILL, ptlStart, 8)
7654     TEST_FIELD_SIZE  (EMREXTFLOODFILL, crColor, 4)
7655     TEST_FIELD_ALIGN (EMREXTFLOODFILL, crColor, 4)
7656     TEST_FIELD_OFFSET(EMREXTFLOODFILL, crColor, 16)
7657     TEST_FIELD_SIZE  (EMREXTFLOODFILL, iMode, 4)
7658     TEST_FIELD_ALIGN (EMREXTFLOODFILL, iMode, 4)
7659     TEST_FIELD_OFFSET(EMREXTFLOODFILL, iMode, 20)
7660 }
7661
7662 static void test_pack_EMREXTSELECTCLIPRGN(void)
7663 {
7664     /* EMREXTSELECTCLIPRGN */
7665     TEST_TYPE_SIZE   (EMREXTSELECTCLIPRGN, 20)
7666     TEST_TYPE_ALIGN  (EMREXTSELECTCLIPRGN, 4)
7667     TEST_FIELD_SIZE  (EMREXTSELECTCLIPRGN, emr, 8)
7668     TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, emr, 4)
7669     TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, emr, 0)
7670     TEST_FIELD_SIZE  (EMREXTSELECTCLIPRGN, cbRgnData, 4)
7671     TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, cbRgnData, 4)
7672     TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, cbRgnData, 8)
7673     TEST_FIELD_SIZE  (EMREXTSELECTCLIPRGN, iMode, 4)
7674     TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, iMode, 4)
7675     TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, iMode, 12)
7676     TEST_FIELD_SIZE  (EMREXTSELECTCLIPRGN, RgnData, 1)
7677     TEST_FIELD_ALIGN (EMREXTSELECTCLIPRGN, RgnData, 1)
7678     TEST_FIELD_OFFSET(EMREXTSELECTCLIPRGN, RgnData, 16)
7679 }
7680
7681 static void test_pack_EMREXTTEXTOUTA(void)
7682 {
7683     /* EMREXTTEXTOUTA */
7684     TEST_TYPE_SIZE   (EMREXTTEXTOUTA, 76)
7685     TEST_TYPE_ALIGN  (EMREXTTEXTOUTA, 4)
7686     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, emr, 8)
7687     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, emr, 4)
7688     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, emr, 0)
7689     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, rclBounds, 16)
7690     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, rclBounds, 4)
7691     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, rclBounds, 8)
7692     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, iGraphicsMode, 4)
7693     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, iGraphicsMode, 4)
7694     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, iGraphicsMode, 24)
7695     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, exScale, 4)
7696     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, exScale, 4)
7697     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, exScale, 28)
7698     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, eyScale, 4)
7699     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, eyScale, 4)
7700     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, eyScale, 32)
7701     TEST_FIELD_SIZE  (EMREXTTEXTOUTA, emrtext, 40)
7702     TEST_FIELD_ALIGN (EMREXTTEXTOUTA, emrtext, 4)
7703     TEST_FIELD_OFFSET(EMREXTTEXTOUTA, emrtext, 36)
7704 }
7705
7706 static void test_pack_EMREXTTEXTOUTW(void)
7707 {
7708     /* EMREXTTEXTOUTW */
7709     TEST_TYPE_SIZE   (EMREXTTEXTOUTW, 76)
7710     TEST_TYPE_ALIGN  (EMREXTTEXTOUTW, 4)
7711     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, emr, 8)
7712     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, emr, 4)
7713     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, emr, 0)
7714     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, rclBounds, 16)
7715     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, rclBounds, 4)
7716     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, rclBounds, 8)
7717     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, iGraphicsMode, 4)
7718     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, iGraphicsMode, 4)
7719     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, iGraphicsMode, 24)
7720     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, exScale, 4)
7721     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, exScale, 4)
7722     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, exScale, 28)
7723     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, eyScale, 4)
7724     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, eyScale, 4)
7725     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, eyScale, 32)
7726     TEST_FIELD_SIZE  (EMREXTTEXTOUTW, emrtext, 40)
7727     TEST_FIELD_ALIGN (EMREXTTEXTOUTW, emrtext, 4)
7728     TEST_FIELD_OFFSET(EMREXTTEXTOUTW, emrtext, 36)
7729 }
7730
7731 static void test_pack_EMRFILLPATH(void)
7732 {
7733     /* EMRFILLPATH */
7734     TEST_TYPE_SIZE   (EMRFILLPATH, 24)
7735     TEST_TYPE_ALIGN  (EMRFILLPATH, 4)
7736     TEST_FIELD_SIZE  (EMRFILLPATH, emr, 8)
7737     TEST_FIELD_ALIGN (EMRFILLPATH, emr, 4)
7738     TEST_FIELD_OFFSET(EMRFILLPATH, emr, 0)
7739     TEST_FIELD_SIZE  (EMRFILLPATH, rclBounds, 16)
7740     TEST_FIELD_ALIGN (EMRFILLPATH, rclBounds, 4)
7741     TEST_FIELD_OFFSET(EMRFILLPATH, rclBounds, 8)
7742 }
7743
7744 static void test_pack_EMRFILLRGN(void)
7745 {
7746     /* EMRFILLRGN */
7747     TEST_TYPE_SIZE   (EMRFILLRGN, 36)
7748     TEST_TYPE_ALIGN  (EMRFILLRGN, 4)
7749     TEST_FIELD_SIZE  (EMRFILLRGN, emr, 8)
7750     TEST_FIELD_ALIGN (EMRFILLRGN, emr, 4)
7751     TEST_FIELD_OFFSET(EMRFILLRGN, emr, 0)
7752     TEST_FIELD_SIZE  (EMRFILLRGN, rclBounds, 16)
7753     TEST_FIELD_ALIGN (EMRFILLRGN, rclBounds, 4)
7754     TEST_FIELD_OFFSET(EMRFILLRGN, rclBounds, 8)
7755     TEST_FIELD_SIZE  (EMRFILLRGN, cbRgnData, 4)
7756     TEST_FIELD_ALIGN (EMRFILLRGN, cbRgnData, 4)
7757     TEST_FIELD_OFFSET(EMRFILLRGN, cbRgnData, 24)
7758     TEST_FIELD_SIZE  (EMRFILLRGN, ihBrush, 4)
7759     TEST_FIELD_ALIGN (EMRFILLRGN, ihBrush, 4)
7760     TEST_FIELD_OFFSET(EMRFILLRGN, ihBrush, 28)
7761     TEST_FIELD_SIZE  (EMRFILLRGN, RgnData, 1)
7762     TEST_FIELD_ALIGN (EMRFILLRGN, RgnData, 1)
7763     TEST_FIELD_OFFSET(EMRFILLRGN, RgnData, 32)
7764 }
7765
7766 static void test_pack_EMRFLATTENPATH(void)
7767 {
7768     /* EMRFLATTENPATH */
7769     TEST_TYPE_SIZE   (EMRFLATTENPATH, 8)
7770     TEST_TYPE_ALIGN  (EMRFLATTENPATH, 4)
7771     TEST_FIELD_SIZE  (EMRFLATTENPATH, emr, 8)
7772     TEST_FIELD_ALIGN (EMRFLATTENPATH, emr, 4)
7773     TEST_FIELD_OFFSET(EMRFLATTENPATH, emr, 0)
7774 }
7775
7776 static void test_pack_EMRFORMAT(void)
7777 {
7778     /* EMRFORMAT */
7779     TEST_TYPE_SIZE   (EMRFORMAT, 16)
7780     TEST_TYPE_ALIGN  (EMRFORMAT, 4)
7781     TEST_FIELD_SIZE  (EMRFORMAT, dSignature, 4)
7782     TEST_FIELD_ALIGN (EMRFORMAT, dSignature, 4)
7783     TEST_FIELD_OFFSET(EMRFORMAT, dSignature, 0)
7784     TEST_FIELD_SIZE  (EMRFORMAT, nVersion, 4)
7785     TEST_FIELD_ALIGN (EMRFORMAT, nVersion, 4)
7786     TEST_FIELD_OFFSET(EMRFORMAT, nVersion, 4)
7787     TEST_FIELD_SIZE  (EMRFORMAT, cbData, 4)
7788     TEST_FIELD_ALIGN (EMRFORMAT, cbData, 4)
7789     TEST_FIELD_OFFSET(EMRFORMAT, cbData, 8)
7790     TEST_FIELD_SIZE  (EMRFORMAT, offData, 4)
7791     TEST_FIELD_ALIGN (EMRFORMAT, offData, 4)
7792     TEST_FIELD_OFFSET(EMRFORMAT, offData, 12)
7793 }
7794
7795 static void test_pack_EMRFRAMERGN(void)
7796 {
7797     /* EMRFRAMERGN */
7798     TEST_TYPE_SIZE   (EMRFRAMERGN, 44)
7799     TEST_TYPE_ALIGN  (EMRFRAMERGN, 4)
7800     TEST_FIELD_SIZE  (EMRFRAMERGN, emr, 8)
7801     TEST_FIELD_ALIGN (EMRFRAMERGN, emr, 4)
7802     TEST_FIELD_OFFSET(EMRFRAMERGN, emr, 0)
7803     TEST_FIELD_SIZE  (EMRFRAMERGN, rclBounds, 16)
7804     TEST_FIELD_ALIGN (EMRFRAMERGN, rclBounds, 4)
7805     TEST_FIELD_OFFSET(EMRFRAMERGN, rclBounds, 8)
7806     TEST_FIELD_SIZE  (EMRFRAMERGN, cbRgnData, 4)
7807     TEST_FIELD_ALIGN (EMRFRAMERGN, cbRgnData, 4)
7808     TEST_FIELD_OFFSET(EMRFRAMERGN, cbRgnData, 24)
7809     TEST_FIELD_SIZE  (EMRFRAMERGN, ihBrush, 4)
7810     TEST_FIELD_ALIGN (EMRFRAMERGN, ihBrush, 4)
7811     TEST_FIELD_OFFSET(EMRFRAMERGN, ihBrush, 28)
7812     TEST_FIELD_SIZE  (EMRFRAMERGN, szlStroke, 8)
7813     TEST_FIELD_ALIGN (EMRFRAMERGN, szlStroke, 4)
7814     TEST_FIELD_OFFSET(EMRFRAMERGN, szlStroke, 32)
7815     TEST_FIELD_SIZE  (EMRFRAMERGN, RgnData, 1)
7816     TEST_FIELD_ALIGN (EMRFRAMERGN, RgnData, 1)
7817     TEST_FIELD_OFFSET(EMRFRAMERGN, RgnData, 40)
7818 }
7819
7820 static void test_pack_EMRGDICOMMENT(void)
7821 {
7822     /* EMRGDICOMMENT */
7823     TEST_TYPE_SIZE   (EMRGDICOMMENT, 16)
7824     TEST_TYPE_ALIGN  (EMRGDICOMMENT, 4)
7825     TEST_FIELD_SIZE  (EMRGDICOMMENT, emr, 8)
7826     TEST_FIELD_ALIGN (EMRGDICOMMENT, emr, 4)
7827     TEST_FIELD_OFFSET(EMRGDICOMMENT, emr, 0)
7828     TEST_FIELD_SIZE  (EMRGDICOMMENT, cbData, 4)
7829     TEST_FIELD_ALIGN (EMRGDICOMMENT, cbData, 4)
7830     TEST_FIELD_OFFSET(EMRGDICOMMENT, cbData, 8)
7831     TEST_FIELD_SIZE  (EMRGDICOMMENT, Data, 1)
7832     TEST_FIELD_ALIGN (EMRGDICOMMENT, Data, 1)
7833     TEST_FIELD_OFFSET(EMRGDICOMMENT, Data, 12)
7834 }
7835
7836 static void test_pack_EMRGLSBOUNDEDRECORD(void)
7837 {
7838     /* EMRGLSBOUNDEDRECORD */
7839     TEST_TYPE_SIZE   (EMRGLSBOUNDEDRECORD, 32)
7840     TEST_TYPE_ALIGN  (EMRGLSBOUNDEDRECORD, 4)
7841     TEST_FIELD_SIZE  (EMRGLSBOUNDEDRECORD, emr, 8)
7842     TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, emr, 4)
7843     TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, emr, 0)
7844     TEST_FIELD_SIZE  (EMRGLSBOUNDEDRECORD, rclBounds, 16)
7845     TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, rclBounds, 4)
7846     TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, rclBounds, 8)
7847     TEST_FIELD_SIZE  (EMRGLSBOUNDEDRECORD, cbData, 4)
7848     TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, cbData, 4)
7849     TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, cbData, 24)
7850     TEST_FIELD_SIZE  (EMRGLSBOUNDEDRECORD, Data, 1)
7851     TEST_FIELD_ALIGN (EMRGLSBOUNDEDRECORD, Data, 1)
7852     TEST_FIELD_OFFSET(EMRGLSBOUNDEDRECORD, Data, 28)
7853 }
7854
7855 static void test_pack_EMRGLSRECORD(void)
7856 {
7857     /* EMRGLSRECORD */
7858     TEST_TYPE_SIZE   (EMRGLSRECORD, 16)
7859     TEST_TYPE_ALIGN  (EMRGLSRECORD, 4)
7860     TEST_FIELD_SIZE  (EMRGLSRECORD, emr, 8)
7861     TEST_FIELD_ALIGN (EMRGLSRECORD, emr, 4)
7862     TEST_FIELD_OFFSET(EMRGLSRECORD, emr, 0)
7863     TEST_FIELD_SIZE  (EMRGLSRECORD, cbData, 4)
7864     TEST_FIELD_ALIGN (EMRGLSRECORD, cbData, 4)
7865     TEST_FIELD_OFFSET(EMRGLSRECORD, cbData, 8)
7866     TEST_FIELD_SIZE  (EMRGLSRECORD, Data, 1)
7867     TEST_FIELD_ALIGN (EMRGLSRECORD, Data, 1)
7868     TEST_FIELD_OFFSET(EMRGLSRECORD, Data, 12)
7869 }
7870
7871 static void test_pack_EMRINTERSECTCLIPRECT(void)
7872 {
7873     /* EMRINTERSECTCLIPRECT */
7874     TEST_TYPE_SIZE   (EMRINTERSECTCLIPRECT, 24)
7875     TEST_TYPE_ALIGN  (EMRINTERSECTCLIPRECT, 4)
7876     TEST_FIELD_SIZE  (EMRINTERSECTCLIPRECT, emr, 8)
7877     TEST_FIELD_ALIGN (EMRINTERSECTCLIPRECT, emr, 4)
7878     TEST_FIELD_OFFSET(EMRINTERSECTCLIPRECT, emr, 0)
7879     TEST_FIELD_SIZE  (EMRINTERSECTCLIPRECT, rclClip, 16)
7880     TEST_FIELD_ALIGN (EMRINTERSECTCLIPRECT, rclClip, 4)
7881     TEST_FIELD_OFFSET(EMRINTERSECTCLIPRECT, rclClip, 8)
7882 }
7883
7884 static void test_pack_EMRINVERTRGN(void)
7885 {
7886     /* EMRINVERTRGN */
7887     TEST_TYPE_SIZE   (EMRINVERTRGN, 32)
7888     TEST_TYPE_ALIGN  (EMRINVERTRGN, 4)
7889     TEST_FIELD_SIZE  (EMRINVERTRGN, emr, 8)
7890     TEST_FIELD_ALIGN (EMRINVERTRGN, emr, 4)
7891     TEST_FIELD_OFFSET(EMRINVERTRGN, emr, 0)
7892     TEST_FIELD_SIZE  (EMRINVERTRGN, rclBounds, 16)
7893     TEST_FIELD_ALIGN (EMRINVERTRGN, rclBounds, 4)
7894     TEST_FIELD_OFFSET(EMRINVERTRGN, rclBounds, 8)
7895     TEST_FIELD_SIZE  (EMRINVERTRGN, cbRgnData, 4)
7896     TEST_FIELD_ALIGN (EMRINVERTRGN, cbRgnData, 4)
7897     TEST_FIELD_OFFSET(EMRINVERTRGN, cbRgnData, 24)
7898     TEST_FIELD_SIZE  (EMRINVERTRGN, RgnData, 1)
7899     TEST_FIELD_ALIGN (EMRINVERTRGN, RgnData, 1)
7900     TEST_FIELD_OFFSET(EMRINVERTRGN, RgnData, 28)
7901 }
7902
7903 static void test_pack_EMRLINETO(void)
7904 {
7905     /* EMRLINETO */
7906     TEST_TYPE_SIZE   (EMRLINETO, 16)
7907     TEST_TYPE_ALIGN  (EMRLINETO, 4)
7908     TEST_FIELD_SIZE  (EMRLINETO, emr, 8)
7909     TEST_FIELD_ALIGN (EMRLINETO, emr, 4)
7910     TEST_FIELD_OFFSET(EMRLINETO, emr, 0)
7911     TEST_FIELD_SIZE  (EMRLINETO, ptl, 8)
7912     TEST_FIELD_ALIGN (EMRLINETO, ptl, 4)
7913     TEST_FIELD_OFFSET(EMRLINETO, ptl, 8)
7914 }
7915
7916 static void test_pack_EMRMASKBLT(void)
7917 {
7918     /* EMRMASKBLT */
7919     TEST_TYPE_SIZE   (EMRMASKBLT, 128)
7920     TEST_TYPE_ALIGN  (EMRMASKBLT, 4)
7921     TEST_FIELD_SIZE  (EMRMASKBLT, emr, 8)
7922     TEST_FIELD_ALIGN (EMRMASKBLT, emr, 4)
7923     TEST_FIELD_OFFSET(EMRMASKBLT, emr, 0)
7924     TEST_FIELD_SIZE  (EMRMASKBLT, rclBounds, 16)
7925     TEST_FIELD_ALIGN (EMRMASKBLT, rclBounds, 4)
7926     TEST_FIELD_OFFSET(EMRMASKBLT, rclBounds, 8)
7927     TEST_FIELD_SIZE  (EMRMASKBLT, xDest, 4)
7928     TEST_FIELD_ALIGN (EMRMASKBLT, xDest, 4)
7929     TEST_FIELD_OFFSET(EMRMASKBLT, xDest, 24)
7930     TEST_FIELD_SIZE  (EMRMASKBLT, yDest, 4)
7931     TEST_FIELD_ALIGN (EMRMASKBLT, yDest, 4)
7932     TEST_FIELD_OFFSET(EMRMASKBLT, yDest, 28)
7933     TEST_FIELD_SIZE  (EMRMASKBLT, cxDest, 4)
7934     TEST_FIELD_ALIGN (EMRMASKBLT, cxDest, 4)
7935     TEST_FIELD_OFFSET(EMRMASKBLT, cxDest, 32)
7936     TEST_FIELD_SIZE  (EMRMASKBLT, cyDest, 4)
7937     TEST_FIELD_ALIGN (EMRMASKBLT, cyDest, 4)
7938     TEST_FIELD_OFFSET(EMRMASKBLT, cyDest, 36)
7939     TEST_FIELD_SIZE  (EMRMASKBLT, dwRop, 4)
7940     TEST_FIELD_ALIGN (EMRMASKBLT, dwRop, 4)
7941     TEST_FIELD_OFFSET(EMRMASKBLT, dwRop, 40)
7942     TEST_FIELD_SIZE  (EMRMASKBLT, xSrc, 4)
7943     TEST_FIELD_ALIGN (EMRMASKBLT, xSrc, 4)
7944     TEST_FIELD_OFFSET(EMRMASKBLT, xSrc, 44)
7945     TEST_FIELD_SIZE  (EMRMASKBLT, ySrc, 4)
7946     TEST_FIELD_ALIGN (EMRMASKBLT, ySrc, 4)
7947     TEST_FIELD_OFFSET(EMRMASKBLT, ySrc, 48)
7948     TEST_FIELD_SIZE  (EMRMASKBLT, xformSrc, 24)
7949     TEST_FIELD_ALIGN (EMRMASKBLT, xformSrc, 4)
7950     TEST_FIELD_OFFSET(EMRMASKBLT, xformSrc, 52)
7951     TEST_FIELD_SIZE  (EMRMASKBLT, crBkColorSrc, 4)
7952     TEST_FIELD_ALIGN (EMRMASKBLT, crBkColorSrc, 4)
7953     TEST_FIELD_OFFSET(EMRMASKBLT, crBkColorSrc, 76)
7954     TEST_FIELD_SIZE  (EMRMASKBLT, iUsageSrc, 4)
7955     TEST_FIELD_ALIGN (EMRMASKBLT, iUsageSrc, 4)
7956     TEST_FIELD_OFFSET(EMRMASKBLT, iUsageSrc, 80)
7957     TEST_FIELD_SIZE  (EMRMASKBLT, offBmiSrc, 4)
7958     TEST_FIELD_ALIGN (EMRMASKBLT, offBmiSrc, 4)
7959     TEST_FIELD_OFFSET(EMRMASKBLT, offBmiSrc, 84)
7960     TEST_FIELD_SIZE  (EMRMASKBLT, cbBmiSrc, 4)
7961     TEST_FIELD_ALIGN (EMRMASKBLT, cbBmiSrc, 4)
7962     TEST_FIELD_OFFSET(EMRMASKBLT, cbBmiSrc, 88)
7963     TEST_FIELD_SIZE  (EMRMASKBLT, offBitsSrc, 4)
7964     TEST_FIELD_ALIGN (EMRMASKBLT, offBitsSrc, 4)
7965     TEST_FIELD_OFFSET(EMRMASKBLT, offBitsSrc, 92)
7966     TEST_FIELD_SIZE  (EMRMASKBLT, cbBitsSrc, 4)
7967     TEST_FIELD_ALIGN (EMRMASKBLT, cbBitsSrc, 4)
7968     TEST_FIELD_OFFSET(EMRMASKBLT, cbBitsSrc, 96)
7969     TEST_FIELD_SIZE  (EMRMASKBLT, xMask, 4)
7970     TEST_FIELD_ALIGN (EMRMASKBLT, xMask, 4)
7971     TEST_FIELD_OFFSET(EMRMASKBLT, xMask, 100)
7972     TEST_FIELD_SIZE  (EMRMASKBLT, yMask, 4)
7973     TEST_FIELD_ALIGN (EMRMASKBLT, yMask, 4)
7974     TEST_FIELD_OFFSET(EMRMASKBLT, yMask, 104)
7975     TEST_FIELD_SIZE  (EMRMASKBLT, iUsageMask, 4)
7976     TEST_FIELD_ALIGN (EMRMASKBLT, iUsageMask, 4)
7977     TEST_FIELD_OFFSET(EMRMASKBLT, iUsageMask, 108)
7978     TEST_FIELD_SIZE  (EMRMASKBLT, offBmiMask, 4)
7979     TEST_FIELD_ALIGN (EMRMASKBLT, offBmiMask, 4)
7980     TEST_FIELD_OFFSET(EMRMASKBLT, offBmiMask, 112)
7981     TEST_FIELD_SIZE  (EMRMASKBLT, cbBmiMask, 4)
7982     TEST_FIELD_ALIGN (EMRMASKBLT, cbBmiMask, 4)
7983     TEST_FIELD_OFFSET(EMRMASKBLT, cbBmiMask, 116)
7984     TEST_FIELD_SIZE  (EMRMASKBLT, offBitsMask, 4)
7985     TEST_FIELD_ALIGN (EMRMASKBLT, offBitsMask, 4)
7986     TEST_FIELD_OFFSET(EMRMASKBLT, offBitsMask, 120)
7987     TEST_FIELD_SIZE  (EMRMASKBLT, cbBitsMask, 4)
7988     TEST_FIELD_ALIGN (EMRMASKBLT, cbBitsMask, 4)
7989     TEST_FIELD_OFFSET(EMRMASKBLT, cbBitsMask, 124)
7990 }
7991
7992 static void test_pack_EMRMODIFYWORLDTRANSFORM(void)
7993 {
7994     /* EMRMODIFYWORLDTRANSFORM */
7995     TEST_TYPE_SIZE   (EMRMODIFYWORLDTRANSFORM, 36)
7996     TEST_TYPE_ALIGN  (EMRMODIFYWORLDTRANSFORM, 4)
7997     TEST_FIELD_SIZE  (EMRMODIFYWORLDTRANSFORM, emr, 8)
7998     TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, emr, 4)
7999     TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, emr, 0)
8000     TEST_FIELD_SIZE  (EMRMODIFYWORLDTRANSFORM, xform, 24)
8001     TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, xform, 4)
8002     TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, xform, 8)
8003     TEST_FIELD_SIZE  (EMRMODIFYWORLDTRANSFORM, iMode, 4)
8004     TEST_FIELD_ALIGN (EMRMODIFYWORLDTRANSFORM, iMode, 4)
8005     TEST_FIELD_OFFSET(EMRMODIFYWORLDTRANSFORM, iMode, 32)
8006 }
8007
8008 static void test_pack_EMRMOVETOEX(void)
8009 {
8010     /* EMRMOVETOEX */
8011     TEST_TYPE_SIZE   (EMRMOVETOEX, 16)
8012     TEST_TYPE_ALIGN  (EMRMOVETOEX, 4)
8013     TEST_FIELD_SIZE  (EMRMOVETOEX, emr, 8)
8014     TEST_FIELD_ALIGN (EMRMOVETOEX, emr, 4)
8015     TEST_FIELD_OFFSET(EMRMOVETOEX, emr, 0)
8016     TEST_FIELD_SIZE  (EMRMOVETOEX, ptl, 8)
8017     TEST_FIELD_ALIGN (EMRMOVETOEX, ptl, 4)
8018     TEST_FIELD_OFFSET(EMRMOVETOEX, ptl, 8)
8019 }
8020
8021 static void test_pack_EMROFFSETCLIPRGN(void)
8022 {
8023     /* EMROFFSETCLIPRGN */
8024     TEST_TYPE_SIZE   (EMROFFSETCLIPRGN, 16)
8025     TEST_TYPE_ALIGN  (EMROFFSETCLIPRGN, 4)
8026     TEST_FIELD_SIZE  (EMROFFSETCLIPRGN, emr, 8)
8027     TEST_FIELD_ALIGN (EMROFFSETCLIPRGN, emr, 4)
8028     TEST_FIELD_OFFSET(EMROFFSETCLIPRGN, emr, 0)
8029     TEST_FIELD_SIZE  (EMROFFSETCLIPRGN, ptlOffset, 8)
8030     TEST_FIELD_ALIGN (EMROFFSETCLIPRGN, ptlOffset, 4)
8031     TEST_FIELD_OFFSET(EMROFFSETCLIPRGN, ptlOffset, 8)
8032 }
8033
8034 static void test_pack_EMRPAINTRGN(void)
8035 {
8036     /* EMRPAINTRGN */
8037     TEST_TYPE_SIZE   (EMRPAINTRGN, 32)
8038     TEST_TYPE_ALIGN  (EMRPAINTRGN, 4)
8039     TEST_FIELD_SIZE  (EMRPAINTRGN, emr, 8)
8040     TEST_FIELD_ALIGN (EMRPAINTRGN, emr, 4)
8041     TEST_FIELD_OFFSET(EMRPAINTRGN, emr, 0)
8042     TEST_FIELD_SIZE  (EMRPAINTRGN, rclBounds, 16)
8043     TEST_FIELD_ALIGN (EMRPAINTRGN, rclBounds, 4)
8044     TEST_FIELD_OFFSET(EMRPAINTRGN, rclBounds, 8)
8045     TEST_FIELD_SIZE  (EMRPAINTRGN, cbRgnData, 4)
8046     TEST_FIELD_ALIGN (EMRPAINTRGN, cbRgnData, 4)
8047     TEST_FIELD_OFFSET(EMRPAINTRGN, cbRgnData, 24)
8048     TEST_FIELD_SIZE  (EMRPAINTRGN, RgnData, 1)
8049     TEST_FIELD_ALIGN (EMRPAINTRGN, RgnData, 1)
8050     TEST_FIELD_OFFSET(EMRPAINTRGN, RgnData, 28)
8051 }
8052
8053 static void test_pack_EMRPIE(void)
8054 {
8055     /* EMRPIE */
8056     TEST_TYPE_SIZE   (EMRPIE, 40)
8057     TEST_TYPE_ALIGN  (EMRPIE, 4)
8058     TEST_FIELD_SIZE  (EMRPIE, emr, 8)
8059     TEST_FIELD_ALIGN (EMRPIE, emr, 4)
8060     TEST_FIELD_OFFSET(EMRPIE, emr, 0)
8061     TEST_FIELD_SIZE  (EMRPIE, rclBox, 16)
8062     TEST_FIELD_ALIGN (EMRPIE, rclBox, 4)
8063     TEST_FIELD_OFFSET(EMRPIE, rclBox, 8)
8064     TEST_FIELD_SIZE  (EMRPIE, ptlStart, 8)
8065     TEST_FIELD_ALIGN (EMRPIE, ptlStart, 4)
8066     TEST_FIELD_OFFSET(EMRPIE, ptlStart, 24)
8067     TEST_FIELD_SIZE  (EMRPIE, ptlEnd, 8)
8068     TEST_FIELD_ALIGN (EMRPIE, ptlEnd, 4)
8069     TEST_FIELD_OFFSET(EMRPIE, ptlEnd, 32)
8070 }
8071
8072 static void test_pack_EMRPIXELFORMAT(void)
8073 {
8074     /* EMRPIXELFORMAT */
8075     TEST_TYPE_SIZE   (EMRPIXELFORMAT, 48)
8076     TEST_TYPE_ALIGN  (EMRPIXELFORMAT, 4)
8077     TEST_FIELD_SIZE  (EMRPIXELFORMAT, emr, 8)
8078     TEST_FIELD_ALIGN (EMRPIXELFORMAT, emr, 4)
8079     TEST_FIELD_OFFSET(EMRPIXELFORMAT, emr, 0)
8080     TEST_FIELD_SIZE  (EMRPIXELFORMAT, pfd, 40)
8081     TEST_FIELD_ALIGN (EMRPIXELFORMAT, pfd, 4)
8082     TEST_FIELD_OFFSET(EMRPIXELFORMAT, pfd, 8)
8083 }
8084
8085 static void test_pack_EMRPLGBLT(void)
8086 {
8087     /* EMRPLGBLT */
8088     TEST_TYPE_SIZE   (EMRPLGBLT, 140)
8089     TEST_TYPE_ALIGN  (EMRPLGBLT, 4)
8090     TEST_FIELD_SIZE  (EMRPLGBLT, emr, 8)
8091     TEST_FIELD_ALIGN (EMRPLGBLT, emr, 4)
8092     TEST_FIELD_OFFSET(EMRPLGBLT, emr, 0)
8093     TEST_FIELD_SIZE  (EMRPLGBLT, rclBounds, 16)
8094     TEST_FIELD_ALIGN (EMRPLGBLT, rclBounds, 4)
8095     TEST_FIELD_OFFSET(EMRPLGBLT, rclBounds, 8)
8096     TEST_FIELD_SIZE  (EMRPLGBLT, aptlDest, 24)
8097     TEST_FIELD_ALIGN (EMRPLGBLT, aptlDest, 4)
8098     TEST_FIELD_OFFSET(EMRPLGBLT, aptlDest, 24)
8099     TEST_FIELD_SIZE  (EMRPLGBLT, xSrc, 4)
8100     TEST_FIELD_ALIGN (EMRPLGBLT, xSrc, 4)
8101     TEST_FIELD_OFFSET(EMRPLGBLT, xSrc, 48)
8102     TEST_FIELD_SIZE  (EMRPLGBLT, ySrc, 4)
8103     TEST_FIELD_ALIGN (EMRPLGBLT, ySrc, 4)
8104     TEST_FIELD_OFFSET(EMRPLGBLT, ySrc, 52)
8105     TEST_FIELD_SIZE  (EMRPLGBLT, cxSrc, 4)
8106     TEST_FIELD_ALIGN (EMRPLGBLT, cxSrc, 4)
8107     TEST_FIELD_OFFSET(EMRPLGBLT, cxSrc, 56)
8108     TEST_FIELD_SIZE  (EMRPLGBLT, cySrc, 4)
8109     TEST_FIELD_ALIGN (EMRPLGBLT, cySrc, 4)
8110     TEST_FIELD_OFFSET(EMRPLGBLT, cySrc, 60)
8111     TEST_FIELD_SIZE  (EMRPLGBLT, xformSrc, 24)
8112     TEST_FIELD_ALIGN (EMRPLGBLT, xformSrc, 4)
8113     TEST_FIELD_OFFSET(EMRPLGBLT, xformSrc, 64)
8114     TEST_FIELD_SIZE  (EMRPLGBLT, crBkColorSrc, 4)
8115     TEST_FIELD_ALIGN (EMRPLGBLT, crBkColorSrc, 4)
8116     TEST_FIELD_OFFSET(EMRPLGBLT, crBkColorSrc, 88)
8117     TEST_FIELD_SIZE  (EMRPLGBLT, iUsageSrc, 4)
8118     TEST_FIELD_ALIGN (EMRPLGBLT, iUsageSrc, 4)
8119     TEST_FIELD_OFFSET(EMRPLGBLT, iUsageSrc, 92)
8120     TEST_FIELD_SIZE  (EMRPLGBLT, offBmiSrc, 4)
8121     TEST_FIELD_ALIGN (EMRPLGBLT, offBmiSrc, 4)
8122     TEST_FIELD_OFFSET(EMRPLGBLT, offBmiSrc, 96)
8123     TEST_FIELD_SIZE  (EMRPLGBLT, cbBmiSrc, 4)
8124     TEST_FIELD_ALIGN (EMRPLGBLT, cbBmiSrc, 4)
8125     TEST_FIELD_OFFSET(EMRPLGBLT, cbBmiSrc, 100)
8126     TEST_FIELD_SIZE  (EMRPLGBLT, offBitsSrc, 4)
8127     TEST_FIELD_ALIGN (EMRPLGBLT, offBitsSrc, 4)
8128     TEST_FIELD_OFFSET(EMRPLGBLT, offBitsSrc, 104)
8129     TEST_FIELD_SIZE  (EMRPLGBLT, cbBitsSrc, 4)
8130     TEST_FIELD_ALIGN (EMRPLGBLT, cbBitsSrc, 4)
8131     TEST_FIELD_OFFSET(EMRPLGBLT, cbBitsSrc, 108)
8132     TEST_FIELD_SIZE  (EMRPLGBLT, xMask, 4)
8133     TEST_FIELD_ALIGN (EMRPLGBLT, xMask, 4)
8134     TEST_FIELD_OFFSET(EMRPLGBLT, xMask, 112)
8135     TEST_FIELD_SIZE  (EMRPLGBLT, yMask, 4)
8136     TEST_FIELD_ALIGN (EMRPLGBLT, yMask, 4)
8137     TEST_FIELD_OFFSET(EMRPLGBLT, yMask, 116)
8138     TEST_FIELD_SIZE  (EMRPLGBLT, iUsageMask, 4)
8139     TEST_FIELD_ALIGN (EMRPLGBLT, iUsageMask, 4)
8140     TEST_FIELD_OFFSET(EMRPLGBLT, iUsageMask, 120)
8141     TEST_FIELD_SIZE  (EMRPLGBLT, offBmiMask, 4)
8142     TEST_FIELD_ALIGN (EMRPLGBLT, offBmiMask, 4)
8143     TEST_FIELD_OFFSET(EMRPLGBLT, offBmiMask, 124)
8144     TEST_FIELD_SIZE  (EMRPLGBLT, cbBmiMask, 4)
8145     TEST_FIELD_ALIGN (EMRPLGBLT, cbBmiMask, 4)
8146     TEST_FIELD_OFFSET(EMRPLGBLT, cbBmiMask, 128)
8147     TEST_FIELD_SIZE  (EMRPLGBLT, offBitsMask, 4)
8148     TEST_FIELD_ALIGN (EMRPLGBLT, offBitsMask, 4)
8149     TEST_FIELD_OFFSET(EMRPLGBLT, offBitsMask, 132)
8150     TEST_FIELD_SIZE  (EMRPLGBLT, cbBitsMask, 4)
8151     TEST_FIELD_ALIGN (EMRPLGBLT, cbBitsMask, 4)
8152     TEST_FIELD_OFFSET(EMRPLGBLT, cbBitsMask, 136)
8153 }
8154
8155 static void test_pack_EMRPOLYBEZIER(void)
8156 {
8157     /* EMRPOLYBEZIER */
8158     TEST_TYPE_SIZE   (EMRPOLYBEZIER, 36)
8159     TEST_TYPE_ALIGN  (EMRPOLYBEZIER, 4)
8160     TEST_FIELD_SIZE  (EMRPOLYBEZIER, emr, 8)
8161     TEST_FIELD_ALIGN (EMRPOLYBEZIER, emr, 4)
8162     TEST_FIELD_OFFSET(EMRPOLYBEZIER, emr, 0)
8163     TEST_FIELD_SIZE  (EMRPOLYBEZIER, rclBounds, 16)
8164     TEST_FIELD_ALIGN (EMRPOLYBEZIER, rclBounds, 4)
8165     TEST_FIELD_OFFSET(EMRPOLYBEZIER, rclBounds, 8)
8166     TEST_FIELD_SIZE  (EMRPOLYBEZIER, cptl, 4)
8167     TEST_FIELD_ALIGN (EMRPOLYBEZIER, cptl, 4)
8168     TEST_FIELD_OFFSET(EMRPOLYBEZIER, cptl, 24)
8169     TEST_FIELD_SIZE  (EMRPOLYBEZIER, aptl, 8)
8170     TEST_FIELD_ALIGN (EMRPOLYBEZIER, aptl, 4)
8171     TEST_FIELD_OFFSET(EMRPOLYBEZIER, aptl, 28)
8172 }
8173
8174 static void test_pack_EMRPOLYBEZIER16(void)
8175 {
8176     /* EMRPOLYBEZIER16 */
8177     TEST_TYPE_SIZE   (EMRPOLYBEZIER16, 32)
8178     TEST_TYPE_ALIGN  (EMRPOLYBEZIER16, 4)
8179     TEST_FIELD_SIZE  (EMRPOLYBEZIER16, emr, 8)
8180     TEST_FIELD_ALIGN (EMRPOLYBEZIER16, emr, 4)
8181     TEST_FIELD_OFFSET(EMRPOLYBEZIER16, emr, 0)
8182     TEST_FIELD_SIZE  (EMRPOLYBEZIER16, rclBounds, 16)
8183     TEST_FIELD_ALIGN (EMRPOLYBEZIER16, rclBounds, 4)
8184     TEST_FIELD_OFFSET(EMRPOLYBEZIER16, rclBounds, 8)
8185     TEST_FIELD_SIZE  (EMRPOLYBEZIER16, cpts, 4)
8186     TEST_FIELD_ALIGN (EMRPOLYBEZIER16, cpts, 4)
8187     TEST_FIELD_OFFSET(EMRPOLYBEZIER16, cpts, 24)
8188     TEST_FIELD_SIZE  (EMRPOLYBEZIER16, apts, 4)
8189     TEST_FIELD_ALIGN (EMRPOLYBEZIER16, apts, 2)
8190     TEST_FIELD_OFFSET(EMRPOLYBEZIER16, apts, 28)
8191 }
8192
8193 static void test_pack_EMRPOLYBEZIERTO(void)
8194 {
8195     /* EMRPOLYBEZIERTO */
8196     TEST_TYPE_SIZE   (EMRPOLYBEZIERTO, 36)
8197     TEST_TYPE_ALIGN  (EMRPOLYBEZIERTO, 4)
8198     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO, emr, 8)
8199     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, emr, 4)
8200     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, emr, 0)
8201     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO, rclBounds, 16)
8202     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, rclBounds, 4)
8203     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, rclBounds, 8)
8204     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO, cptl, 4)
8205     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, cptl, 4)
8206     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, cptl, 24)
8207     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO, aptl, 8)
8208     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO, aptl, 4)
8209     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO, aptl, 28)
8210 }
8211
8212 static void test_pack_EMRPOLYBEZIERTO16(void)
8213 {
8214     /* EMRPOLYBEZIERTO16 */
8215     TEST_TYPE_SIZE   (EMRPOLYBEZIERTO16, 32)
8216     TEST_TYPE_ALIGN  (EMRPOLYBEZIERTO16, 4)
8217     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO16, emr, 8)
8218     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, emr, 4)
8219     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, emr, 0)
8220     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO16, rclBounds, 16)
8221     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, rclBounds, 4)
8222     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, rclBounds, 8)
8223     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO16, cpts, 4)
8224     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, cpts, 4)
8225     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, cpts, 24)
8226     TEST_FIELD_SIZE  (EMRPOLYBEZIERTO16, apts, 4)
8227     TEST_FIELD_ALIGN (EMRPOLYBEZIERTO16, apts, 2)
8228     TEST_FIELD_OFFSET(EMRPOLYBEZIERTO16, apts, 28)
8229 }
8230
8231 static void test_pack_EMRPOLYDRAW(void)
8232 {
8233     /* EMRPOLYDRAW */
8234     TEST_TYPE_SIZE   (EMRPOLYDRAW, 40)
8235     TEST_TYPE_ALIGN  (EMRPOLYDRAW, 4)
8236     TEST_FIELD_SIZE  (EMRPOLYDRAW, emr, 8)
8237     TEST_FIELD_ALIGN (EMRPOLYDRAW, emr, 4)
8238     TEST_FIELD_OFFSET(EMRPOLYDRAW, emr, 0)
8239     TEST_FIELD_SIZE  (EMRPOLYDRAW, rclBounds, 16)
8240     TEST_FIELD_ALIGN (EMRPOLYDRAW, rclBounds, 4)
8241     TEST_FIELD_OFFSET(EMRPOLYDRAW, rclBounds, 8)
8242     TEST_FIELD_SIZE  (EMRPOLYDRAW, cptl, 4)
8243     TEST_FIELD_ALIGN (EMRPOLYDRAW, cptl, 4)
8244     TEST_FIELD_OFFSET(EMRPOLYDRAW, cptl, 24)
8245     TEST_FIELD_SIZE  (EMRPOLYDRAW, aptl, 8)
8246     TEST_FIELD_ALIGN (EMRPOLYDRAW, aptl, 4)
8247     TEST_FIELD_OFFSET(EMRPOLYDRAW, aptl, 28)
8248     TEST_FIELD_SIZE  (EMRPOLYDRAW, abTypes, 1)
8249     TEST_FIELD_ALIGN (EMRPOLYDRAW, abTypes, 1)
8250     TEST_FIELD_OFFSET(EMRPOLYDRAW, abTypes, 36)
8251 }
8252
8253 static void test_pack_EMRPOLYDRAW16(void)
8254 {
8255     /* EMRPOLYDRAW16 */
8256     TEST_TYPE_SIZE   (EMRPOLYDRAW16, 36)
8257     TEST_TYPE_ALIGN  (EMRPOLYDRAW16, 4)
8258     TEST_FIELD_SIZE  (EMRPOLYDRAW16, emr, 8)
8259     TEST_FIELD_ALIGN (EMRPOLYDRAW16, emr, 4)
8260     TEST_FIELD_OFFSET(EMRPOLYDRAW16, emr, 0)
8261     TEST_FIELD_SIZE  (EMRPOLYDRAW16, rclBounds, 16)
8262     TEST_FIELD_ALIGN (EMRPOLYDRAW16, rclBounds, 4)
8263     TEST_FIELD_OFFSET(EMRPOLYDRAW16, rclBounds, 8)
8264     TEST_FIELD_SIZE  (EMRPOLYDRAW16, cpts, 4)
8265     TEST_FIELD_ALIGN (EMRPOLYDRAW16, cpts, 4)
8266     TEST_FIELD_OFFSET(EMRPOLYDRAW16, cpts, 24)
8267     TEST_FIELD_SIZE  (EMRPOLYDRAW16, apts, 4)
8268     TEST_FIELD_ALIGN (EMRPOLYDRAW16, apts, 2)
8269     TEST_FIELD_OFFSET(EMRPOLYDRAW16, apts, 28)
8270     TEST_FIELD_SIZE  (EMRPOLYDRAW16, abTypes, 1)
8271     TEST_FIELD_ALIGN (EMRPOLYDRAW16, abTypes, 1)
8272     TEST_FIELD_OFFSET(EMRPOLYDRAW16, abTypes, 32)
8273 }
8274
8275 static void test_pack_EMRPOLYGON(void)
8276 {
8277     /* EMRPOLYGON */
8278     TEST_TYPE_SIZE   (EMRPOLYGON, 36)
8279     TEST_TYPE_ALIGN  (EMRPOLYGON, 4)
8280     TEST_FIELD_SIZE  (EMRPOLYGON, emr, 8)
8281     TEST_FIELD_ALIGN (EMRPOLYGON, emr, 4)
8282     TEST_FIELD_OFFSET(EMRPOLYGON, emr, 0)
8283     TEST_FIELD_SIZE  (EMRPOLYGON, rclBounds, 16)
8284     TEST_FIELD_ALIGN (EMRPOLYGON, rclBounds, 4)
8285     TEST_FIELD_OFFSET(EMRPOLYGON, rclBounds, 8)
8286     TEST_FIELD_SIZE  (EMRPOLYGON, cptl, 4)
8287     TEST_FIELD_ALIGN (EMRPOLYGON, cptl, 4)
8288     TEST_FIELD_OFFSET(EMRPOLYGON, cptl, 24)
8289     TEST_FIELD_SIZE  (EMRPOLYGON, aptl, 8)
8290     TEST_FIELD_ALIGN (EMRPOLYGON, aptl, 4)
8291     TEST_FIELD_OFFSET(EMRPOLYGON, aptl, 28)
8292 }
8293
8294 static void test_pack_EMRPOLYGON16(void)
8295 {
8296     /* EMRPOLYGON16 */
8297     TEST_TYPE_SIZE   (EMRPOLYGON16, 32)
8298     TEST_TYPE_ALIGN  (EMRPOLYGON16, 4)
8299     TEST_FIELD_SIZE  (EMRPOLYGON16, emr, 8)
8300     TEST_FIELD_ALIGN (EMRPOLYGON16, emr, 4)
8301     TEST_FIELD_OFFSET(EMRPOLYGON16, emr, 0)
8302     TEST_FIELD_SIZE  (EMRPOLYGON16, rclBounds, 16)
8303     TEST_FIELD_ALIGN (EMRPOLYGON16, rclBounds, 4)
8304     TEST_FIELD_OFFSET(EMRPOLYGON16, rclBounds, 8)
8305     TEST_FIELD_SIZE  (EMRPOLYGON16, cpts, 4)
8306     TEST_FIELD_ALIGN (EMRPOLYGON16, cpts, 4)
8307     TEST_FIELD_OFFSET(EMRPOLYGON16, cpts, 24)
8308     TEST_FIELD_SIZE  (EMRPOLYGON16, apts, 4)
8309     TEST_FIELD_ALIGN (EMRPOLYGON16, apts, 2)
8310     TEST_FIELD_OFFSET(EMRPOLYGON16, apts, 28)
8311 }
8312
8313 static void test_pack_EMRPOLYLINE(void)
8314 {
8315     /* EMRPOLYLINE */
8316     TEST_TYPE_SIZE   (EMRPOLYLINE, 36)
8317     TEST_TYPE_ALIGN  (EMRPOLYLINE, 4)
8318     TEST_FIELD_SIZE  (EMRPOLYLINE, emr, 8)
8319     TEST_FIELD_ALIGN (EMRPOLYLINE, emr, 4)
8320     TEST_FIELD_OFFSET(EMRPOLYLINE, emr, 0)
8321     TEST_FIELD_SIZE  (EMRPOLYLINE, rclBounds, 16)
8322     TEST_FIELD_ALIGN (EMRPOLYLINE, rclBounds, 4)
8323     TEST_FIELD_OFFSET(EMRPOLYLINE, rclBounds, 8)
8324     TEST_FIELD_SIZE  (EMRPOLYLINE, cptl, 4)
8325     TEST_FIELD_ALIGN (EMRPOLYLINE, cptl, 4)
8326     TEST_FIELD_OFFSET(EMRPOLYLINE, cptl, 24)
8327     TEST_FIELD_SIZE  (EMRPOLYLINE, aptl, 8)
8328     TEST_FIELD_ALIGN (EMRPOLYLINE, aptl, 4)
8329     TEST_FIELD_OFFSET(EMRPOLYLINE, aptl, 28)
8330 }
8331
8332 static void test_pack_EMRPOLYLINE16(void)
8333 {
8334     /* EMRPOLYLINE16 */
8335     TEST_TYPE_SIZE   (EMRPOLYLINE16, 32)
8336     TEST_TYPE_ALIGN  (EMRPOLYLINE16, 4)
8337     TEST_FIELD_SIZE  (EMRPOLYLINE16, emr, 8)
8338     TEST_FIELD_ALIGN (EMRPOLYLINE16, emr, 4)
8339     TEST_FIELD_OFFSET(EMRPOLYLINE16, emr, 0)
8340     TEST_FIELD_SIZE  (EMRPOLYLINE16, rclBounds, 16)
8341     TEST_FIELD_ALIGN (EMRPOLYLINE16, rclBounds, 4)
8342     TEST_FIELD_OFFSET(EMRPOLYLINE16, rclBounds, 8)
8343     TEST_FIELD_SIZE  (EMRPOLYLINE16, cpts, 4)
8344     TEST_FIELD_ALIGN (EMRPOLYLINE16, cpts, 4)
8345     TEST_FIELD_OFFSET(EMRPOLYLINE16, cpts, 24)
8346     TEST_FIELD_SIZE  (EMRPOLYLINE16, apts, 4)
8347     TEST_FIELD_ALIGN (EMRPOLYLINE16, apts, 2)
8348     TEST_FIELD_OFFSET(EMRPOLYLINE16, apts, 28)
8349 }
8350
8351 static void test_pack_EMRPOLYLINETO(void)
8352 {
8353     /* EMRPOLYLINETO */
8354     TEST_TYPE_SIZE   (EMRPOLYLINETO, 36)
8355     TEST_TYPE_ALIGN  (EMRPOLYLINETO, 4)
8356     TEST_FIELD_SIZE  (EMRPOLYLINETO, emr, 8)
8357     TEST_FIELD_ALIGN (EMRPOLYLINETO, emr, 4)
8358     TEST_FIELD_OFFSET(EMRPOLYLINETO, emr, 0)
8359     TEST_FIELD_SIZE  (EMRPOLYLINETO, rclBounds, 16)
8360     TEST_FIELD_ALIGN (EMRPOLYLINETO, rclBounds, 4)
8361     TEST_FIELD_OFFSET(EMRPOLYLINETO, rclBounds, 8)
8362     TEST_FIELD_SIZE  (EMRPOLYLINETO, cptl, 4)
8363     TEST_FIELD_ALIGN (EMRPOLYLINETO, cptl, 4)
8364     TEST_FIELD_OFFSET(EMRPOLYLINETO, cptl, 24)
8365     TEST_FIELD_SIZE  (EMRPOLYLINETO, aptl, 8)
8366     TEST_FIELD_ALIGN (EMRPOLYLINETO, aptl, 4)
8367     TEST_FIELD_OFFSET(EMRPOLYLINETO, aptl, 28)
8368 }
8369
8370 static void test_pack_EMRPOLYLINETO16(void)
8371 {
8372     /* EMRPOLYLINETO16 */
8373     TEST_TYPE_SIZE   (EMRPOLYLINETO16, 32)
8374     TEST_TYPE_ALIGN  (EMRPOLYLINETO16, 4)
8375     TEST_FIELD_SIZE  (EMRPOLYLINETO16, emr, 8)
8376     TEST_FIELD_ALIGN (EMRPOLYLINETO16, emr, 4)
8377     TEST_FIELD_OFFSET(EMRPOLYLINETO16, emr, 0)
8378     TEST_FIELD_SIZE  (EMRPOLYLINETO16, rclBounds, 16)
8379     TEST_FIELD_ALIGN (EMRPOLYLINETO16, rclBounds, 4)
8380     TEST_FIELD_OFFSET(EMRPOLYLINETO16, rclBounds, 8)
8381     TEST_FIELD_SIZE  (EMRPOLYLINETO16, cpts, 4)
8382     TEST_FIELD_ALIGN (EMRPOLYLINETO16, cpts, 4)
8383     TEST_FIELD_OFFSET(EMRPOLYLINETO16, cpts, 24)
8384     TEST_FIELD_SIZE  (EMRPOLYLINETO16, apts, 4)
8385     TEST_FIELD_ALIGN (EMRPOLYLINETO16, apts, 2)
8386     TEST_FIELD_OFFSET(EMRPOLYLINETO16, apts, 28)
8387 }
8388
8389 static void test_pack_EMRPOLYPOLYGON(void)
8390 {
8391     /* EMRPOLYPOLYGON */
8392     TEST_TYPE_SIZE   (EMRPOLYPOLYGON, 44)
8393     TEST_TYPE_ALIGN  (EMRPOLYPOLYGON, 4)
8394     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, emr, 8)
8395     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, emr, 4)
8396     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, emr, 0)
8397     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, rclBounds, 16)
8398     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, rclBounds, 4)
8399     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, rclBounds, 8)
8400     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, nPolys, 4)
8401     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, nPolys, 4)
8402     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, nPolys, 24)
8403     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, cptl, 4)
8404     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, cptl, 4)
8405     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, cptl, 28)
8406     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, aPolyCounts, 4)
8407     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, aPolyCounts, 4)
8408     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, aPolyCounts, 32)
8409     TEST_FIELD_SIZE  (EMRPOLYPOLYGON, aptl, 8)
8410     TEST_FIELD_ALIGN (EMRPOLYPOLYGON, aptl, 4)
8411     TEST_FIELD_OFFSET(EMRPOLYPOLYGON, aptl, 36)
8412 }
8413
8414 static void test_pack_EMRPOLYPOLYGON16(void)
8415 {
8416     /* EMRPOLYPOLYGON16 */
8417     TEST_TYPE_SIZE   (EMRPOLYPOLYGON16, 40)
8418     TEST_TYPE_ALIGN  (EMRPOLYPOLYGON16, 4)
8419     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, emr, 8)
8420     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, emr, 4)
8421     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, emr, 0)
8422     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, rclBounds, 16)
8423     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, rclBounds, 4)
8424     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, rclBounds, 8)
8425     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, nPolys, 4)
8426     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, nPolys, 4)
8427     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, nPolys, 24)
8428     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, cpts, 4)
8429     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, cpts, 4)
8430     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, cpts, 28)
8431     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, aPolyCounts, 4)
8432     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, aPolyCounts, 4)
8433     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, aPolyCounts, 32)
8434     TEST_FIELD_SIZE  (EMRPOLYPOLYGON16, apts, 4)
8435     TEST_FIELD_ALIGN (EMRPOLYPOLYGON16, apts, 2)
8436     TEST_FIELD_OFFSET(EMRPOLYPOLYGON16, apts, 36)
8437 }
8438
8439 static void test_pack_EMRPOLYPOLYLINE(void)
8440 {
8441     /* EMRPOLYPOLYLINE */
8442     TEST_TYPE_SIZE   (EMRPOLYPOLYLINE, 44)
8443     TEST_TYPE_ALIGN  (EMRPOLYPOLYLINE, 4)
8444     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, emr, 8)
8445     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, emr, 4)
8446     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, emr, 0)
8447     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, rclBounds, 16)
8448     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, rclBounds, 4)
8449     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, rclBounds, 8)
8450     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, nPolys, 4)
8451     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, nPolys, 4)
8452     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, nPolys, 24)
8453     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, cptl, 4)
8454     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, cptl, 4)
8455     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, cptl, 28)
8456     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, aPolyCounts, 4)
8457     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, aPolyCounts, 4)
8458     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, aPolyCounts, 32)
8459     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE, aptl, 8)
8460     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE, aptl, 4)
8461     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE, aptl, 36)
8462 }
8463
8464 static void test_pack_EMRPOLYPOLYLINE16(void)
8465 {
8466     /* EMRPOLYPOLYLINE16 */
8467     TEST_TYPE_SIZE   (EMRPOLYPOLYLINE16, 40)
8468     TEST_TYPE_ALIGN  (EMRPOLYPOLYLINE16, 4)
8469     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, emr, 8)
8470     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, emr, 4)
8471     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, emr, 0)
8472     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, rclBounds, 16)
8473     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, rclBounds, 4)
8474     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, rclBounds, 8)
8475     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, nPolys, 4)
8476     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, nPolys, 4)
8477     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, nPolys, 24)
8478     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, cpts, 4)
8479     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, cpts, 4)
8480     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, cpts, 28)
8481     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, aPolyCounts, 4)
8482     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, aPolyCounts, 4)
8483     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, aPolyCounts, 32)
8484     TEST_FIELD_SIZE  (EMRPOLYPOLYLINE16, apts, 4)
8485     TEST_FIELD_ALIGN (EMRPOLYPOLYLINE16, apts, 2)
8486     TEST_FIELD_OFFSET(EMRPOLYPOLYLINE16, apts, 36)
8487 }
8488
8489 static void test_pack_EMRPOLYTEXTOUTA(void)
8490 {
8491     /* EMRPOLYTEXTOUTA */
8492     TEST_TYPE_SIZE   (EMRPOLYTEXTOUTA, 80)
8493     TEST_TYPE_ALIGN  (EMRPOLYTEXTOUTA, 4)
8494     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, emr, 8)
8495     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, emr, 4)
8496     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, emr, 0)
8497     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, rclBounds, 16)
8498     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, rclBounds, 4)
8499     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, rclBounds, 8)
8500     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, iGraphicsMode, 4)
8501     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, iGraphicsMode, 4)
8502     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, iGraphicsMode, 24)
8503     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, exScale, 4)
8504     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, exScale, 4)
8505     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, exScale, 28)
8506     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, eyScale, 4)
8507     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, eyScale, 4)
8508     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, eyScale, 32)
8509     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, cStrings, 4)
8510     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, cStrings, 4)
8511     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, cStrings, 36)
8512     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTA, aemrtext, 40)
8513     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTA, aemrtext, 4)
8514     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTA, aemrtext, 40)
8515 }
8516
8517 static void test_pack_EMRPOLYTEXTOUTW(void)
8518 {
8519     /* EMRPOLYTEXTOUTW */
8520     TEST_TYPE_SIZE   (EMRPOLYTEXTOUTW, 80)
8521     TEST_TYPE_ALIGN  (EMRPOLYTEXTOUTW, 4)
8522     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, emr, 8)
8523     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, emr, 4)
8524     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, emr, 0)
8525     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, rclBounds, 16)
8526     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, rclBounds, 4)
8527     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, rclBounds, 8)
8528     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, iGraphicsMode, 4)
8529     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, iGraphicsMode, 4)
8530     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, iGraphicsMode, 24)
8531     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, exScale, 4)
8532     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, exScale, 4)
8533     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, exScale, 28)
8534     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, eyScale, 4)
8535     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, eyScale, 4)
8536     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, eyScale, 32)
8537     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, cStrings, 4)
8538     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, cStrings, 4)
8539     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, cStrings, 36)
8540     TEST_FIELD_SIZE  (EMRPOLYTEXTOUTW, aemrtext, 40)
8541     TEST_FIELD_ALIGN (EMRPOLYTEXTOUTW, aemrtext, 4)
8542     TEST_FIELD_OFFSET(EMRPOLYTEXTOUTW, aemrtext, 40)
8543 }
8544
8545 static void test_pack_EMRREALIZEPALETTE(void)
8546 {
8547     /* EMRREALIZEPALETTE */
8548     TEST_TYPE_SIZE   (EMRREALIZEPALETTE, 8)
8549     TEST_TYPE_ALIGN  (EMRREALIZEPALETTE, 4)
8550     TEST_FIELD_SIZE  (EMRREALIZEPALETTE, emr, 8)
8551     TEST_FIELD_ALIGN (EMRREALIZEPALETTE, emr, 4)
8552     TEST_FIELD_OFFSET(EMRREALIZEPALETTE, emr, 0)
8553 }
8554
8555 static void test_pack_EMRRECTANGLE(void)
8556 {
8557     /* EMRRECTANGLE */
8558     TEST_TYPE_SIZE   (EMRRECTANGLE, 24)
8559     TEST_TYPE_ALIGN  (EMRRECTANGLE, 4)
8560     TEST_FIELD_SIZE  (EMRRECTANGLE, emr, 8)
8561     TEST_FIELD_ALIGN (EMRRECTANGLE, emr, 4)
8562     TEST_FIELD_OFFSET(EMRRECTANGLE, emr, 0)
8563     TEST_FIELD_SIZE  (EMRRECTANGLE, rclBox, 16)
8564     TEST_FIELD_ALIGN (EMRRECTANGLE, rclBox, 4)
8565     TEST_FIELD_OFFSET(EMRRECTANGLE, rclBox, 8)
8566 }
8567
8568 static void test_pack_EMRRESIZEPALETTE(void)
8569 {
8570     /* EMRRESIZEPALETTE */
8571     TEST_TYPE_SIZE   (EMRRESIZEPALETTE, 16)
8572     TEST_TYPE_ALIGN  (EMRRESIZEPALETTE, 4)
8573     TEST_FIELD_SIZE  (EMRRESIZEPALETTE, emr, 8)
8574     TEST_FIELD_ALIGN (EMRRESIZEPALETTE, emr, 4)
8575     TEST_FIELD_OFFSET(EMRRESIZEPALETTE, emr, 0)
8576     TEST_FIELD_SIZE  (EMRRESIZEPALETTE, ihPal, 4)
8577     TEST_FIELD_ALIGN (EMRRESIZEPALETTE, ihPal, 4)
8578     TEST_FIELD_OFFSET(EMRRESIZEPALETTE, ihPal, 8)
8579     TEST_FIELD_SIZE  (EMRRESIZEPALETTE, cEntries, 4)
8580     TEST_FIELD_ALIGN (EMRRESIZEPALETTE, cEntries, 4)
8581     TEST_FIELD_OFFSET(EMRRESIZEPALETTE, cEntries, 12)
8582 }
8583
8584 static void test_pack_EMRRESTOREDC(void)
8585 {
8586     /* EMRRESTOREDC */
8587     TEST_TYPE_SIZE   (EMRRESTOREDC, 12)
8588     TEST_TYPE_ALIGN  (EMRRESTOREDC, 4)
8589     TEST_FIELD_SIZE  (EMRRESTOREDC, emr, 8)
8590     TEST_FIELD_ALIGN (EMRRESTOREDC, emr, 4)
8591     TEST_FIELD_OFFSET(EMRRESTOREDC, emr, 0)
8592     TEST_FIELD_SIZE  (EMRRESTOREDC, iRelative, 4)
8593     TEST_FIELD_ALIGN (EMRRESTOREDC, iRelative, 4)
8594     TEST_FIELD_OFFSET(EMRRESTOREDC, iRelative, 8)
8595 }
8596
8597 static void test_pack_EMRROUNDRECT(void)
8598 {
8599     /* EMRROUNDRECT */
8600     TEST_TYPE_SIZE   (EMRROUNDRECT, 32)
8601     TEST_TYPE_ALIGN  (EMRROUNDRECT, 4)
8602     TEST_FIELD_SIZE  (EMRROUNDRECT, emr, 8)
8603     TEST_FIELD_ALIGN (EMRROUNDRECT, emr, 4)
8604     TEST_FIELD_OFFSET(EMRROUNDRECT, emr, 0)
8605     TEST_FIELD_SIZE  (EMRROUNDRECT, rclBox, 16)
8606     TEST_FIELD_ALIGN (EMRROUNDRECT, rclBox, 4)
8607     TEST_FIELD_OFFSET(EMRROUNDRECT, rclBox, 8)
8608     TEST_FIELD_SIZE  (EMRROUNDRECT, szlCorner, 8)
8609     TEST_FIELD_ALIGN (EMRROUNDRECT, szlCorner, 4)
8610     TEST_FIELD_OFFSET(EMRROUNDRECT, szlCorner, 24)
8611 }
8612
8613 static void test_pack_EMRSAVEDC(void)
8614 {
8615     /* EMRSAVEDC */
8616     TEST_TYPE_SIZE   (EMRSAVEDC, 8)
8617     TEST_TYPE_ALIGN  (EMRSAVEDC, 4)
8618     TEST_FIELD_SIZE  (EMRSAVEDC, emr, 8)
8619     TEST_FIELD_ALIGN (EMRSAVEDC, emr, 4)
8620     TEST_FIELD_OFFSET(EMRSAVEDC, emr, 0)
8621 }
8622
8623 static void test_pack_EMRSCALEVIEWPORTEXTEX(void)
8624 {
8625     /* EMRSCALEVIEWPORTEXTEX */
8626     TEST_TYPE_SIZE   (EMRSCALEVIEWPORTEXTEX, 24)
8627     TEST_TYPE_ALIGN  (EMRSCALEVIEWPORTEXTEX, 4)
8628     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, emr, 8)
8629     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, emr, 4)
8630     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, emr, 0)
8631     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, xNum, 4)
8632     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, xNum, 4)
8633     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xNum, 8)
8634     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, xDenom, 4)
8635     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, xDenom, 4)
8636     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, xDenom, 12)
8637     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, yNum, 4)
8638     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, yNum, 4)
8639     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yNum, 16)
8640     TEST_FIELD_SIZE  (EMRSCALEVIEWPORTEXTEX, yDenom, 4)
8641     TEST_FIELD_ALIGN (EMRSCALEVIEWPORTEXTEX, yDenom, 4)
8642     TEST_FIELD_OFFSET(EMRSCALEVIEWPORTEXTEX, yDenom, 20)
8643 }
8644
8645 static void test_pack_EMRSCALEWINDOWEXTEX(void)
8646 {
8647     /* EMRSCALEWINDOWEXTEX */
8648     TEST_TYPE_SIZE   (EMRSCALEWINDOWEXTEX, 24)
8649     TEST_TYPE_ALIGN  (EMRSCALEWINDOWEXTEX, 4)
8650     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, emr, 8)
8651     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, emr, 4)
8652     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, emr, 0)
8653     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, xNum, 4)
8654     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, xNum, 4)
8655     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, xNum, 8)
8656     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, xDenom, 4)
8657     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, xDenom, 4)
8658     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, xDenom, 12)
8659     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, yNum, 4)
8660     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, yNum, 4)
8661     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, yNum, 16)
8662     TEST_FIELD_SIZE  (EMRSCALEWINDOWEXTEX, yDenom, 4)
8663     TEST_FIELD_ALIGN (EMRSCALEWINDOWEXTEX, yDenom, 4)
8664     TEST_FIELD_OFFSET(EMRSCALEWINDOWEXTEX, yDenom, 20)
8665 }
8666
8667 static void test_pack_EMRSELECTCLIPPATH(void)
8668 {
8669     /* EMRSELECTCLIPPATH */
8670     TEST_TYPE_SIZE   (EMRSELECTCLIPPATH, 12)
8671     TEST_TYPE_ALIGN  (EMRSELECTCLIPPATH, 4)
8672     TEST_FIELD_SIZE  (EMRSELECTCLIPPATH, emr, 8)
8673     TEST_FIELD_ALIGN (EMRSELECTCLIPPATH, emr, 4)
8674     TEST_FIELD_OFFSET(EMRSELECTCLIPPATH, emr, 0)
8675     TEST_FIELD_SIZE  (EMRSELECTCLIPPATH, iMode, 4)
8676     TEST_FIELD_ALIGN (EMRSELECTCLIPPATH, iMode, 4)
8677     TEST_FIELD_OFFSET(EMRSELECTCLIPPATH, iMode, 8)
8678 }
8679
8680 static void test_pack_EMRSELECTCOLORSPACE(void)
8681 {
8682     /* EMRSELECTCOLORSPACE */
8683     TEST_TYPE_SIZE   (EMRSELECTCOLORSPACE, 12)
8684     TEST_TYPE_ALIGN  (EMRSELECTCOLORSPACE, 4)
8685     TEST_FIELD_SIZE  (EMRSELECTCOLORSPACE, emr, 8)
8686     TEST_FIELD_ALIGN (EMRSELECTCOLORSPACE, emr, 4)
8687     TEST_FIELD_OFFSET(EMRSELECTCOLORSPACE, emr, 0)
8688     TEST_FIELD_SIZE  (EMRSELECTCOLORSPACE, ihCS, 4)
8689     TEST_FIELD_ALIGN (EMRSELECTCOLORSPACE, ihCS, 4)
8690     TEST_FIELD_OFFSET(EMRSELECTCOLORSPACE, ihCS, 8)
8691 }
8692
8693 static void test_pack_EMRSELECTOBJECT(void)
8694 {
8695     /* EMRSELECTOBJECT */
8696     TEST_TYPE_SIZE   (EMRSELECTOBJECT, 12)
8697     TEST_TYPE_ALIGN  (EMRSELECTOBJECT, 4)
8698     TEST_FIELD_SIZE  (EMRSELECTOBJECT, emr, 8)
8699     TEST_FIELD_ALIGN (EMRSELECTOBJECT, emr, 4)
8700     TEST_FIELD_OFFSET(EMRSELECTOBJECT, emr, 0)
8701     TEST_FIELD_SIZE  (EMRSELECTOBJECT, ihObject, 4)
8702     TEST_FIELD_ALIGN (EMRSELECTOBJECT, ihObject, 4)
8703     TEST_FIELD_OFFSET(EMRSELECTOBJECT, ihObject, 8)
8704 }
8705
8706 static void test_pack_EMRSELECTPALETTE(void)
8707 {
8708     /* EMRSELECTPALETTE */
8709     TEST_TYPE_SIZE   (EMRSELECTPALETTE, 12)
8710     TEST_TYPE_ALIGN  (EMRSELECTPALETTE, 4)
8711     TEST_FIELD_SIZE  (EMRSELECTPALETTE, emr, 8)
8712     TEST_FIELD_ALIGN (EMRSELECTPALETTE, emr, 4)
8713     TEST_FIELD_OFFSET(EMRSELECTPALETTE, emr, 0)
8714     TEST_FIELD_SIZE  (EMRSELECTPALETTE, ihPal, 4)
8715     TEST_FIELD_ALIGN (EMRSELECTPALETTE, ihPal, 4)
8716     TEST_FIELD_OFFSET(EMRSELECTPALETTE, ihPal, 8)
8717 }
8718
8719 static void test_pack_EMRSETARCDIRECTION(void)
8720 {
8721     /* EMRSETARCDIRECTION */
8722     TEST_TYPE_SIZE   (EMRSETARCDIRECTION, 12)
8723     TEST_TYPE_ALIGN  (EMRSETARCDIRECTION, 4)
8724     TEST_FIELD_SIZE  (EMRSETARCDIRECTION, emr, 8)
8725     TEST_FIELD_ALIGN (EMRSETARCDIRECTION, emr, 4)
8726     TEST_FIELD_OFFSET(EMRSETARCDIRECTION, emr, 0)
8727     TEST_FIELD_SIZE  (EMRSETARCDIRECTION, iArcDirection, 4)
8728     TEST_FIELD_ALIGN (EMRSETARCDIRECTION, iArcDirection, 4)
8729     TEST_FIELD_OFFSET(EMRSETARCDIRECTION, iArcDirection, 8)
8730 }
8731
8732 static void test_pack_EMRSETBKCOLOR(void)
8733 {
8734     /* EMRSETBKCOLOR */
8735     TEST_TYPE_SIZE   (EMRSETBKCOLOR, 12)
8736     TEST_TYPE_ALIGN  (EMRSETBKCOLOR, 4)
8737     TEST_FIELD_SIZE  (EMRSETBKCOLOR, emr, 8)
8738     TEST_FIELD_ALIGN (EMRSETBKCOLOR, emr, 4)
8739     TEST_FIELD_OFFSET(EMRSETBKCOLOR, emr, 0)
8740     TEST_FIELD_SIZE  (EMRSETBKCOLOR, crColor, 4)
8741     TEST_FIELD_ALIGN (EMRSETBKCOLOR, crColor, 4)
8742     TEST_FIELD_OFFSET(EMRSETBKCOLOR, crColor, 8)
8743 }
8744
8745 static void test_pack_EMRSETBKMODE(void)
8746 {
8747     /* EMRSETBKMODE */
8748     TEST_TYPE_SIZE   (EMRSETBKMODE, 12)
8749     TEST_TYPE_ALIGN  (EMRSETBKMODE, 4)
8750     TEST_FIELD_SIZE  (EMRSETBKMODE, emr, 8)
8751     TEST_FIELD_ALIGN (EMRSETBKMODE, emr, 4)
8752     TEST_FIELD_OFFSET(EMRSETBKMODE, emr, 0)
8753     TEST_FIELD_SIZE  (EMRSETBKMODE, iMode, 4)
8754     TEST_FIELD_ALIGN (EMRSETBKMODE, iMode, 4)
8755     TEST_FIELD_OFFSET(EMRSETBKMODE, iMode, 8)
8756 }
8757
8758 static void test_pack_EMRSETBRUSHORGEX(void)
8759 {
8760     /* EMRSETBRUSHORGEX */
8761     TEST_TYPE_SIZE   (EMRSETBRUSHORGEX, 16)
8762     TEST_TYPE_ALIGN  (EMRSETBRUSHORGEX, 4)
8763     TEST_FIELD_SIZE  (EMRSETBRUSHORGEX, emr, 8)
8764     TEST_FIELD_ALIGN (EMRSETBRUSHORGEX, emr, 4)
8765     TEST_FIELD_OFFSET(EMRSETBRUSHORGEX, emr, 0)
8766     TEST_FIELD_SIZE  (EMRSETBRUSHORGEX, ptlOrigin, 8)
8767     TEST_FIELD_ALIGN (EMRSETBRUSHORGEX, ptlOrigin, 4)
8768     TEST_FIELD_OFFSET(EMRSETBRUSHORGEX, ptlOrigin, 8)
8769 }
8770
8771 static void test_pack_EMRSETCOLORADJUSTMENT(void)
8772 {
8773     /* EMRSETCOLORADJUSTMENT */
8774     TEST_TYPE_SIZE   (EMRSETCOLORADJUSTMENT, 32)
8775     TEST_TYPE_ALIGN  (EMRSETCOLORADJUSTMENT, 4)
8776     TEST_FIELD_SIZE  (EMRSETCOLORADJUSTMENT, emr, 8)
8777     TEST_FIELD_ALIGN (EMRSETCOLORADJUSTMENT, emr, 4)
8778     TEST_FIELD_OFFSET(EMRSETCOLORADJUSTMENT, emr, 0)
8779     TEST_FIELD_SIZE  (EMRSETCOLORADJUSTMENT, ColorAdjustment, 24)
8780     TEST_FIELD_ALIGN (EMRSETCOLORADJUSTMENT, ColorAdjustment, 2)
8781     TEST_FIELD_OFFSET(EMRSETCOLORADJUSTMENT, ColorAdjustment, 8)
8782 }
8783
8784 static void test_pack_EMRSETCOLORSPACE(void)
8785 {
8786     /* EMRSETCOLORSPACE */
8787     TEST_TYPE_SIZE   (EMRSETCOLORSPACE, 12)
8788     TEST_TYPE_ALIGN  (EMRSETCOLORSPACE, 4)
8789     TEST_FIELD_SIZE  (EMRSETCOLORSPACE, emr, 8)
8790     TEST_FIELD_ALIGN (EMRSETCOLORSPACE, emr, 4)
8791     TEST_FIELD_OFFSET(EMRSETCOLORSPACE, emr, 0)
8792     TEST_FIELD_SIZE  (EMRSETCOLORSPACE, ihCS, 4)
8793     TEST_FIELD_ALIGN (EMRSETCOLORSPACE, ihCS, 4)
8794     TEST_FIELD_OFFSET(EMRSETCOLORSPACE, ihCS, 8)
8795 }
8796
8797 static void test_pack_EMRSETDIBITSTODEVICE(void)
8798 {
8799     /* EMRSETDIBITSTODEVICE */
8800     TEST_TYPE_SIZE   (EMRSETDIBITSTODEVICE, 76)
8801     TEST_TYPE_ALIGN  (EMRSETDIBITSTODEVICE, 4)
8802     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, emr, 8)
8803     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, emr, 4)
8804     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, emr, 0)
8805     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, rclBounds, 16)
8806     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, rclBounds, 4)
8807     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, rclBounds, 8)
8808     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, xDest, 4)
8809     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, xDest, 4)
8810     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, xDest, 24)
8811     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, yDest, 4)
8812     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, yDest, 4)
8813     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, yDest, 28)
8814     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, xSrc, 4)
8815     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, xSrc, 4)
8816     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, xSrc, 32)
8817     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, ySrc, 4)
8818     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, ySrc, 4)
8819     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, ySrc, 36)
8820     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cxSrc, 4)
8821     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cxSrc, 4)
8822     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cxSrc, 40)
8823     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cySrc, 4)
8824     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cySrc, 4)
8825     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cySrc, 44)
8826     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, offBmiSrc, 4)
8827     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, offBmiSrc, 4)
8828     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, offBmiSrc, 48)
8829     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cbBmiSrc, 4)
8830     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cbBmiSrc, 4)
8831     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cbBmiSrc, 52)
8832     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, offBitsSrc, 4)
8833     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, offBitsSrc, 4)
8834     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, offBitsSrc, 56)
8835     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cbBitsSrc, 4)
8836     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cbBitsSrc, 4)
8837     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cbBitsSrc, 60)
8838     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, iUsageSrc, 4)
8839     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, iUsageSrc, 4)
8840     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, iUsageSrc, 64)
8841     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, iStartScan, 4)
8842     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, iStartScan, 4)
8843     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, iStartScan, 68)
8844     TEST_FIELD_SIZE  (EMRSETDIBITSTODEVICE, cScans, 4)
8845     TEST_FIELD_ALIGN (EMRSETDIBITSTODEVICE, cScans, 4)
8846     TEST_FIELD_OFFSET(EMRSETDIBITSTODEVICE, cScans, 72)
8847 }
8848
8849 static void test_pack_EMRSETICMMODE(void)
8850 {
8851     /* EMRSETICMMODE */
8852     TEST_TYPE_SIZE   (EMRSETICMMODE, 12)
8853     TEST_TYPE_ALIGN  (EMRSETICMMODE, 4)
8854     TEST_FIELD_SIZE  (EMRSETICMMODE, emr, 8)
8855     TEST_FIELD_ALIGN (EMRSETICMMODE, emr, 4)
8856     TEST_FIELD_OFFSET(EMRSETICMMODE, emr, 0)
8857     TEST_FIELD_SIZE  (EMRSETICMMODE, iMode, 4)
8858     TEST_FIELD_ALIGN (EMRSETICMMODE, iMode, 4)
8859     TEST_FIELD_OFFSET(EMRSETICMMODE, iMode, 8)
8860 }
8861
8862 static void test_pack_EMRSETLAYOUT(void)
8863 {
8864     /* EMRSETLAYOUT */
8865     TEST_TYPE_SIZE   (EMRSETLAYOUT, 12)
8866     TEST_TYPE_ALIGN  (EMRSETLAYOUT, 4)
8867     TEST_FIELD_SIZE  (EMRSETLAYOUT, emr, 8)
8868     TEST_FIELD_ALIGN (EMRSETLAYOUT, emr, 4)
8869     TEST_FIELD_OFFSET(EMRSETLAYOUT, emr, 0)
8870     TEST_FIELD_SIZE  (EMRSETLAYOUT, iMode, 4)
8871     TEST_FIELD_ALIGN (EMRSETLAYOUT, iMode, 4)
8872     TEST_FIELD_OFFSET(EMRSETLAYOUT, iMode, 8)
8873 }
8874
8875 static void test_pack_EMRSETMAPMODE(void)
8876 {
8877     /* EMRSETMAPMODE */
8878     TEST_TYPE_SIZE   (EMRSETMAPMODE, 12)
8879     TEST_TYPE_ALIGN  (EMRSETMAPMODE, 4)
8880     TEST_FIELD_SIZE  (EMRSETMAPMODE, emr, 8)
8881     TEST_FIELD_ALIGN (EMRSETMAPMODE, emr, 4)
8882     TEST_FIELD_OFFSET(EMRSETMAPMODE, emr, 0)
8883     TEST_FIELD_SIZE  (EMRSETMAPMODE, iMode, 4)
8884     TEST_FIELD_ALIGN (EMRSETMAPMODE, iMode, 4)
8885     TEST_FIELD_OFFSET(EMRSETMAPMODE, iMode, 8)
8886 }
8887
8888 static void test_pack_EMRSETMAPPERFLAGS(void)
8889 {
8890     /* EMRSETMAPPERFLAGS */
8891     TEST_TYPE_SIZE   (EMRSETMAPPERFLAGS, 12)
8892     TEST_TYPE_ALIGN  (EMRSETMAPPERFLAGS, 4)
8893     TEST_FIELD_SIZE  (EMRSETMAPPERFLAGS, emr, 8)
8894     TEST_FIELD_ALIGN (EMRSETMAPPERFLAGS, emr, 4)
8895     TEST_FIELD_OFFSET(EMRSETMAPPERFLAGS, emr, 0)
8896     TEST_FIELD_SIZE  (EMRSETMAPPERFLAGS, dwFlags, 4)
8897     TEST_FIELD_ALIGN (EMRSETMAPPERFLAGS, dwFlags, 4)
8898     TEST_FIELD_OFFSET(EMRSETMAPPERFLAGS, dwFlags, 8)
8899 }
8900
8901 static void test_pack_EMRSETMETARGN(void)
8902 {
8903     /* EMRSETMETARGN */
8904     TEST_TYPE_SIZE   (EMRSETMETARGN, 8)
8905     TEST_TYPE_ALIGN  (EMRSETMETARGN, 4)
8906     TEST_FIELD_SIZE  (EMRSETMETARGN, emr, 8)
8907     TEST_FIELD_ALIGN (EMRSETMETARGN, emr, 4)
8908     TEST_FIELD_OFFSET(EMRSETMETARGN, emr, 0)
8909 }
8910
8911 static void test_pack_EMRSETMITERLIMIT(void)
8912 {
8913     /* EMRSETMITERLIMIT */
8914     TEST_TYPE_SIZE   (EMRSETMITERLIMIT, 12)
8915     TEST_TYPE_ALIGN  (EMRSETMITERLIMIT, 4)
8916     TEST_FIELD_SIZE  (EMRSETMITERLIMIT, emr, 8)
8917     TEST_FIELD_ALIGN (EMRSETMITERLIMIT, emr, 4)
8918     TEST_FIELD_OFFSET(EMRSETMITERLIMIT, emr, 0)
8919     TEST_FIELD_SIZE  (EMRSETMITERLIMIT, eMiterLimit, 4)
8920     TEST_FIELD_ALIGN (EMRSETMITERLIMIT, eMiterLimit, 4)
8921     TEST_FIELD_OFFSET(EMRSETMITERLIMIT, eMiterLimit, 8)
8922 }
8923
8924 static void test_pack_EMRSETPIXELV(void)
8925 {
8926     /* EMRSETPIXELV */
8927     TEST_TYPE_SIZE   (EMRSETPIXELV, 20)
8928     TEST_TYPE_ALIGN  (EMRSETPIXELV, 4)
8929     TEST_FIELD_SIZE  (EMRSETPIXELV, emr, 8)
8930     TEST_FIELD_ALIGN (EMRSETPIXELV, emr, 4)
8931     TEST_FIELD_OFFSET(EMRSETPIXELV, emr, 0)
8932     TEST_FIELD_SIZE  (EMRSETPIXELV, ptlPixel, 8)
8933     TEST_FIELD_ALIGN (EMRSETPIXELV, ptlPixel, 4)
8934     TEST_FIELD_OFFSET(EMRSETPIXELV, ptlPixel, 8)
8935     TEST_FIELD_SIZE  (EMRSETPIXELV, crColor, 4)
8936     TEST_FIELD_ALIGN (EMRSETPIXELV, crColor, 4)
8937     TEST_FIELD_OFFSET(EMRSETPIXELV, crColor, 16)
8938 }
8939
8940 static void test_pack_EMRSETPOLYFILLMODE(void)
8941 {
8942     /* EMRSETPOLYFILLMODE */
8943     TEST_TYPE_SIZE   (EMRSETPOLYFILLMODE, 12)
8944     TEST_TYPE_ALIGN  (EMRSETPOLYFILLMODE, 4)
8945     TEST_FIELD_SIZE  (EMRSETPOLYFILLMODE, emr, 8)
8946     TEST_FIELD_ALIGN (EMRSETPOLYFILLMODE, emr, 4)
8947     TEST_FIELD_OFFSET(EMRSETPOLYFILLMODE, emr, 0)
8948     TEST_FIELD_SIZE  (EMRSETPOLYFILLMODE, iMode, 4)
8949     TEST_FIELD_ALIGN (EMRSETPOLYFILLMODE, iMode, 4)
8950     TEST_FIELD_OFFSET(EMRSETPOLYFILLMODE, iMode, 8)
8951 }
8952
8953 static void test_pack_EMRSETROP2(void)
8954 {
8955     /* EMRSETROP2 */
8956     TEST_TYPE_SIZE   (EMRSETROP2, 12)
8957     TEST_TYPE_ALIGN  (EMRSETROP2, 4)
8958     TEST_FIELD_SIZE  (EMRSETROP2, emr, 8)
8959     TEST_FIELD_ALIGN (EMRSETROP2, emr, 4)
8960     TEST_FIELD_OFFSET(EMRSETROP2, emr, 0)
8961     TEST_FIELD_SIZE  (EMRSETROP2, iMode, 4)
8962     TEST_FIELD_ALIGN (EMRSETROP2, iMode, 4)
8963     TEST_FIELD_OFFSET(EMRSETROP2, iMode, 8)
8964 }
8965
8966 static void test_pack_EMRSETSTRETCHBLTMODE(void)
8967 {
8968     /* EMRSETSTRETCHBLTMODE */
8969     TEST_TYPE_SIZE   (EMRSETSTRETCHBLTMODE, 12)
8970     TEST_TYPE_ALIGN  (EMRSETSTRETCHBLTMODE, 4)
8971     TEST_FIELD_SIZE  (EMRSETSTRETCHBLTMODE, emr, 8)
8972     TEST_FIELD_ALIGN (EMRSETSTRETCHBLTMODE, emr, 4)
8973     TEST_FIELD_OFFSET(EMRSETSTRETCHBLTMODE, emr, 0)
8974     TEST_FIELD_SIZE  (EMRSETSTRETCHBLTMODE, iMode, 4)
8975     TEST_FIELD_ALIGN (EMRSETSTRETCHBLTMODE, iMode, 4)
8976     TEST_FIELD_OFFSET(EMRSETSTRETCHBLTMODE, iMode, 8)
8977 }
8978
8979 static void test_pack_EMRSETTEXTALIGN(void)
8980 {
8981     /* EMRSETTEXTALIGN */
8982     TEST_TYPE_SIZE   (EMRSETTEXTALIGN, 12)
8983     TEST_TYPE_ALIGN  (EMRSETTEXTALIGN, 4)
8984     TEST_FIELD_SIZE  (EMRSETTEXTALIGN, emr, 8)
8985     TEST_FIELD_ALIGN (EMRSETTEXTALIGN, emr, 4)
8986     TEST_FIELD_OFFSET(EMRSETTEXTALIGN, emr, 0)
8987     TEST_FIELD_SIZE  (EMRSETTEXTALIGN, iMode, 4)
8988     TEST_FIELD_ALIGN (EMRSETTEXTALIGN, iMode, 4)
8989     TEST_FIELD_OFFSET(EMRSETTEXTALIGN, iMode, 8)
8990 }
8991
8992 static void test_pack_EMRSETTEXTCOLOR(void)
8993 {
8994     /* EMRSETTEXTCOLOR */
8995     TEST_TYPE_SIZE   (EMRSETTEXTCOLOR, 12)
8996     TEST_TYPE_ALIGN  (EMRSETTEXTCOLOR, 4)
8997     TEST_FIELD_SIZE  (EMRSETTEXTCOLOR, emr, 8)
8998     TEST_FIELD_ALIGN (EMRSETTEXTCOLOR, emr, 4)
8999     TEST_FIELD_OFFSET(EMRSETTEXTCOLOR, emr, 0)
9000     TEST_FIELD_SIZE  (EMRSETTEXTCOLOR, crColor, 4)
9001     TEST_FIELD_ALIGN (EMRSETTEXTCOLOR, crColor, 4)
9002     TEST_FIELD_OFFSET(EMRSETTEXTCOLOR, crColor, 8)
9003 }
9004
9005 static void test_pack_EMRSETVIEWPORTEXTEX(void)
9006 {
9007     /* EMRSETVIEWPORTEXTEX */
9008     TEST_TYPE_SIZE   (EMRSETVIEWPORTEXTEX, 16)
9009     TEST_TYPE_ALIGN  (EMRSETVIEWPORTEXTEX, 4)
9010     TEST_FIELD_SIZE  (EMRSETVIEWPORTEXTEX, emr, 8)
9011     TEST_FIELD_ALIGN (EMRSETVIEWPORTEXTEX, emr, 4)
9012     TEST_FIELD_OFFSET(EMRSETVIEWPORTEXTEX, emr, 0)
9013     TEST_FIELD_SIZE  (EMRSETVIEWPORTEXTEX, szlExtent, 8)
9014     TEST_FIELD_ALIGN (EMRSETVIEWPORTEXTEX, szlExtent, 4)
9015     TEST_FIELD_OFFSET(EMRSETVIEWPORTEXTEX, szlExtent, 8)
9016 }
9017
9018 static void test_pack_EMRSETVIEWPORTORGEX(void)
9019 {
9020     /* EMRSETVIEWPORTORGEX */
9021     TEST_TYPE_SIZE   (EMRSETVIEWPORTORGEX, 16)
9022     TEST_TYPE_ALIGN  (EMRSETVIEWPORTORGEX, 4)
9023     TEST_FIELD_SIZE  (EMRSETVIEWPORTORGEX, emr, 8)
9024     TEST_FIELD_ALIGN (EMRSETVIEWPORTORGEX, emr, 4)
9025     TEST_FIELD_OFFSET(EMRSETVIEWPORTORGEX, emr, 0)
9026     TEST_FIELD_SIZE  (EMRSETVIEWPORTORGEX, ptlOrigin, 8)
9027     TEST_FIELD_ALIGN (EMRSETVIEWPORTORGEX, ptlOrigin, 4)
9028     TEST_FIELD_OFFSET(EMRSETVIEWPORTORGEX, ptlOrigin, 8)
9029 }
9030
9031 static void test_pack_EMRSETWINDOWEXTEX(void)
9032 {
9033     /* EMRSETWINDOWEXTEX */
9034     TEST_TYPE_SIZE   (EMRSETWINDOWEXTEX, 16)
9035     TEST_TYPE_ALIGN  (EMRSETWINDOWEXTEX, 4)
9036     TEST_FIELD_SIZE  (EMRSETWINDOWEXTEX, emr, 8)
9037     TEST_FIELD_ALIGN (EMRSETWINDOWEXTEX, emr, 4)
9038     TEST_FIELD_OFFSET(EMRSETWINDOWEXTEX, emr, 0)
9039     TEST_FIELD_SIZE  (EMRSETWINDOWEXTEX, szlExtent, 8)
9040     TEST_FIELD_ALIGN (EMRSETWINDOWEXTEX, szlExtent, 4)
9041     TEST_FIELD_OFFSET(EMRSETWINDOWEXTEX, szlExtent, 8)
9042 }
9043
9044 static void test_pack_EMRSETWINDOWORGEX(void)
9045 {
9046     /* EMRSETWINDOWORGEX */
9047     TEST_TYPE_SIZE   (EMRSETWINDOWORGEX, 16)
9048     TEST_TYPE_ALIGN  (EMRSETWINDOWORGEX, 4)
9049     TEST_FIELD_SIZE  (EMRSETWINDOWORGEX, emr, 8)
9050     TEST_FIELD_ALIGN (EMRSETWINDOWORGEX, emr, 4)
9051     TEST_FIELD_OFFSET(EMRSETWINDOWORGEX, emr, 0)
9052     TEST_FIELD_SIZE  (EMRSETWINDOWORGEX, ptlOrigin, 8)
9053     TEST_FIELD_ALIGN (EMRSETWINDOWORGEX, ptlOrigin, 4)
9054     TEST_FIELD_OFFSET(EMRSETWINDOWORGEX, ptlOrigin, 8)
9055 }
9056
9057 static void test_pack_EMRSETWORLDTRANSFORM(void)
9058 {
9059     /* EMRSETWORLDTRANSFORM */
9060     TEST_TYPE_SIZE   (EMRSETWORLDTRANSFORM, 32)
9061     TEST_TYPE_ALIGN  (EMRSETWORLDTRANSFORM, 4)
9062     TEST_FIELD_SIZE  (EMRSETWORLDTRANSFORM, emr, 8)
9063     TEST_FIELD_ALIGN (EMRSETWORLDTRANSFORM, emr, 4)
9064     TEST_FIELD_OFFSET(EMRSETWORLDTRANSFORM, emr, 0)
9065     TEST_FIELD_SIZE  (EMRSETWORLDTRANSFORM, xform, 24)
9066     TEST_FIELD_ALIGN (EMRSETWORLDTRANSFORM, xform, 4)
9067     TEST_FIELD_OFFSET(EMRSETWORLDTRANSFORM, xform, 8)
9068 }
9069
9070 static void test_pack_EMRSTRETCHBLT(void)
9071 {
9072     /* EMRSTRETCHBLT */
9073     TEST_TYPE_SIZE   (EMRSTRETCHBLT, 108)
9074     TEST_TYPE_ALIGN  (EMRSTRETCHBLT, 4)
9075     TEST_FIELD_SIZE  (EMRSTRETCHBLT, emr, 8)
9076     TEST_FIELD_ALIGN (EMRSTRETCHBLT, emr, 4)
9077     TEST_FIELD_OFFSET(EMRSTRETCHBLT, emr, 0)
9078     TEST_FIELD_SIZE  (EMRSTRETCHBLT, rclBounds, 16)
9079     TEST_FIELD_ALIGN (EMRSTRETCHBLT, rclBounds, 4)
9080     TEST_FIELD_OFFSET(EMRSTRETCHBLT, rclBounds, 8)
9081     TEST_FIELD_SIZE  (EMRSTRETCHBLT, xDest, 4)
9082     TEST_FIELD_ALIGN (EMRSTRETCHBLT, xDest, 4)
9083     TEST_FIELD_OFFSET(EMRSTRETCHBLT, xDest, 24)
9084     TEST_FIELD_SIZE  (EMRSTRETCHBLT, yDest, 4)
9085     TEST_FIELD_ALIGN (EMRSTRETCHBLT, yDest, 4)
9086     TEST_FIELD_OFFSET(EMRSTRETCHBLT, yDest, 28)
9087     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cxDest, 4)
9088     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cxDest, 4)
9089     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cxDest, 32)
9090     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cyDest, 4)
9091     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cyDest, 4)
9092     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cyDest, 36)
9093     TEST_FIELD_SIZE  (EMRSTRETCHBLT, dwRop, 4)
9094     TEST_FIELD_ALIGN (EMRSTRETCHBLT, dwRop, 4)
9095     TEST_FIELD_OFFSET(EMRSTRETCHBLT, dwRop, 40)
9096     TEST_FIELD_SIZE  (EMRSTRETCHBLT, xSrc, 4)
9097     TEST_FIELD_ALIGN (EMRSTRETCHBLT, xSrc, 4)
9098     TEST_FIELD_OFFSET(EMRSTRETCHBLT, xSrc, 44)
9099     TEST_FIELD_SIZE  (EMRSTRETCHBLT, ySrc, 4)
9100     TEST_FIELD_ALIGN (EMRSTRETCHBLT, ySrc, 4)
9101     TEST_FIELD_OFFSET(EMRSTRETCHBLT, ySrc, 48)
9102     TEST_FIELD_SIZE  (EMRSTRETCHBLT, xformSrc, 24)
9103     TEST_FIELD_ALIGN (EMRSTRETCHBLT, xformSrc, 4)
9104     TEST_FIELD_OFFSET(EMRSTRETCHBLT, xformSrc, 52)
9105     TEST_FIELD_SIZE  (EMRSTRETCHBLT, crBkColorSrc, 4)
9106     TEST_FIELD_ALIGN (EMRSTRETCHBLT, crBkColorSrc, 4)
9107     TEST_FIELD_OFFSET(EMRSTRETCHBLT, crBkColorSrc, 76)
9108     TEST_FIELD_SIZE  (EMRSTRETCHBLT, iUsageSrc, 4)
9109     TEST_FIELD_ALIGN (EMRSTRETCHBLT, iUsageSrc, 4)
9110     TEST_FIELD_OFFSET(EMRSTRETCHBLT, iUsageSrc, 80)
9111     TEST_FIELD_SIZE  (EMRSTRETCHBLT, offBmiSrc, 4)
9112     TEST_FIELD_ALIGN (EMRSTRETCHBLT, offBmiSrc, 4)
9113     TEST_FIELD_OFFSET(EMRSTRETCHBLT, offBmiSrc, 84)
9114     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cbBmiSrc, 4)
9115     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cbBmiSrc, 4)
9116     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cbBmiSrc, 88)
9117     TEST_FIELD_SIZE  (EMRSTRETCHBLT, offBitsSrc, 4)
9118     TEST_FIELD_ALIGN (EMRSTRETCHBLT, offBitsSrc, 4)
9119     TEST_FIELD_OFFSET(EMRSTRETCHBLT, offBitsSrc, 92)
9120     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cbBitsSrc, 4)
9121     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cbBitsSrc, 4)
9122     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cbBitsSrc, 96)
9123     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cxSrc, 4)
9124     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cxSrc, 4)
9125     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cxSrc, 100)
9126     TEST_FIELD_SIZE  (EMRSTRETCHBLT, cySrc, 4)
9127     TEST_FIELD_ALIGN (EMRSTRETCHBLT, cySrc, 4)
9128     TEST_FIELD_OFFSET(EMRSTRETCHBLT, cySrc, 104)
9129 }
9130
9131 static void test_pack_EMRSTRETCHDIBITS(void)
9132 {
9133     /* EMRSTRETCHDIBITS */
9134     TEST_TYPE_SIZE   (EMRSTRETCHDIBITS, 80)
9135     TEST_TYPE_ALIGN  (EMRSTRETCHDIBITS, 4)
9136     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, emr, 8)
9137     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, emr, 4)
9138     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, emr, 0)
9139     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, rclBounds, 16)
9140     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, rclBounds, 4)
9141     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, rclBounds, 8)
9142     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, xDest, 4)
9143     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, xDest, 4)
9144     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, xDest, 24)
9145     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, yDest, 4)
9146     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, yDest, 4)
9147     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, yDest, 28)
9148     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, xSrc, 4)
9149     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, xSrc, 4)
9150     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, xSrc, 32)
9151     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, ySrc, 4)
9152     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, ySrc, 4)
9153     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, ySrc, 36)
9154     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cxSrc, 4)
9155     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cxSrc, 4)
9156     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cxSrc, 40)
9157     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cySrc, 4)
9158     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cySrc, 4)
9159     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cySrc, 44)
9160     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, offBmiSrc, 4)
9161     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, offBmiSrc, 4)
9162     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, offBmiSrc, 48)
9163     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cbBmiSrc, 4)
9164     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cbBmiSrc, 4)
9165     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cbBmiSrc, 52)
9166     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, offBitsSrc, 4)
9167     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, offBitsSrc, 4)
9168     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, offBitsSrc, 56)
9169     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cbBitsSrc, 4)
9170     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cbBitsSrc, 4)
9171     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cbBitsSrc, 60)
9172     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, iUsageSrc, 4)
9173     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, iUsageSrc, 4)
9174     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, iUsageSrc, 64)
9175     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, dwRop, 4)
9176     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, dwRop, 4)
9177     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, dwRop, 68)
9178     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cxDest, 4)
9179     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cxDest, 4)
9180     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cxDest, 72)
9181     TEST_FIELD_SIZE  (EMRSTRETCHDIBITS, cyDest, 4)
9182     TEST_FIELD_ALIGN (EMRSTRETCHDIBITS, cyDest, 4)
9183     TEST_FIELD_OFFSET(EMRSTRETCHDIBITS, cyDest, 76)
9184 }
9185
9186 static void test_pack_EMRSTROKEANDFILLPATH(void)
9187 {
9188     /* EMRSTROKEANDFILLPATH */
9189     TEST_TYPE_SIZE   (EMRSTROKEANDFILLPATH, 24)
9190     TEST_TYPE_ALIGN  (EMRSTROKEANDFILLPATH, 4)
9191     TEST_FIELD_SIZE  (EMRSTROKEANDFILLPATH, emr, 8)
9192     TEST_FIELD_ALIGN (EMRSTROKEANDFILLPATH, emr, 4)
9193     TEST_FIELD_OFFSET(EMRSTROKEANDFILLPATH, emr, 0)
9194     TEST_FIELD_SIZE  (EMRSTROKEANDFILLPATH, rclBounds, 16)
9195     TEST_FIELD_ALIGN (EMRSTROKEANDFILLPATH, rclBounds, 4)
9196     TEST_FIELD_OFFSET(EMRSTROKEANDFILLPATH, rclBounds, 8)
9197 }
9198
9199 static void test_pack_EMRSTROKEPATH(void)
9200 {
9201     /* EMRSTROKEPATH */
9202     TEST_TYPE_SIZE   (EMRSTROKEPATH, 24)
9203     TEST_TYPE_ALIGN  (EMRSTROKEPATH, 4)
9204     TEST_FIELD_SIZE  (EMRSTROKEPATH, emr, 8)
9205     TEST_FIELD_ALIGN (EMRSTROKEPATH, emr, 4)
9206     TEST_FIELD_OFFSET(EMRSTROKEPATH, emr, 0)
9207     TEST_FIELD_SIZE  (EMRSTROKEPATH, rclBounds, 16)
9208     TEST_FIELD_ALIGN (EMRSTROKEPATH, rclBounds, 4)
9209     TEST_FIELD_OFFSET(EMRSTROKEPATH, rclBounds, 8)
9210 }
9211
9212 static void test_pack_EMRTEXT(void)
9213 {
9214     /* EMRTEXT */
9215     TEST_TYPE_SIZE   (EMRTEXT, 40)
9216     TEST_TYPE_ALIGN  (EMRTEXT, 4)
9217     TEST_FIELD_SIZE  (EMRTEXT, ptlReference, 8)
9218     TEST_FIELD_ALIGN (EMRTEXT, ptlReference, 4)
9219     TEST_FIELD_OFFSET(EMRTEXT, ptlReference, 0)
9220     TEST_FIELD_SIZE  (EMRTEXT, nChars, 4)
9221     TEST_FIELD_ALIGN (EMRTEXT, nChars, 4)
9222     TEST_FIELD_OFFSET(EMRTEXT, nChars, 8)
9223     TEST_FIELD_SIZE  (EMRTEXT, offString, 4)
9224     TEST_FIELD_ALIGN (EMRTEXT, offString, 4)
9225     TEST_FIELD_OFFSET(EMRTEXT, offString, 12)
9226     TEST_FIELD_SIZE  (EMRTEXT, fOptions, 4)
9227     TEST_FIELD_ALIGN (EMRTEXT, fOptions, 4)
9228     TEST_FIELD_OFFSET(EMRTEXT, fOptions, 16)
9229     TEST_FIELD_SIZE  (EMRTEXT, rcl, 16)
9230     TEST_FIELD_ALIGN (EMRTEXT, rcl, 4)
9231     TEST_FIELD_OFFSET(EMRTEXT, rcl, 20)
9232     TEST_FIELD_SIZE  (EMRTEXT, offDx, 4)
9233     TEST_FIELD_ALIGN (EMRTEXT, offDx, 4)
9234     TEST_FIELD_OFFSET(EMRTEXT, offDx, 36)
9235 }
9236
9237 static void test_pack_EMRWIDENPATH(void)
9238 {
9239     /* EMRWIDENPATH */
9240     TEST_TYPE_SIZE   (EMRWIDENPATH, 8)
9241     TEST_TYPE_ALIGN  (EMRWIDENPATH, 4)
9242     TEST_FIELD_SIZE  (EMRWIDENPATH, emr, 8)
9243     TEST_FIELD_ALIGN (EMRWIDENPATH, emr, 4)
9244     TEST_FIELD_OFFSET(EMRWIDENPATH, emr, 0)
9245 }
9246
9247 static void test_pack_ENHMETAHEADER(void)
9248 {
9249     /* ENHMETAHEADER */
9250     TEST_TYPE_SIZE   (ENHMETAHEADER, 108)
9251     TEST_TYPE_ALIGN  (ENHMETAHEADER, 4)
9252     TEST_FIELD_SIZE  (ENHMETAHEADER, iType, 4)
9253     TEST_FIELD_ALIGN (ENHMETAHEADER, iType, 4)
9254     TEST_FIELD_OFFSET(ENHMETAHEADER, iType, 0)
9255     TEST_FIELD_SIZE  (ENHMETAHEADER, nSize, 4)
9256     TEST_FIELD_ALIGN (ENHMETAHEADER, nSize, 4)
9257     TEST_FIELD_OFFSET(ENHMETAHEADER, nSize, 4)
9258     TEST_FIELD_SIZE  (ENHMETAHEADER, rclBounds, 16)
9259     TEST_FIELD_ALIGN (ENHMETAHEADER, rclBounds, 4)
9260     TEST_FIELD_OFFSET(ENHMETAHEADER, rclBounds, 8)
9261     TEST_FIELD_SIZE  (ENHMETAHEADER, rclFrame, 16)
9262     TEST_FIELD_ALIGN (ENHMETAHEADER, rclFrame, 4)
9263     TEST_FIELD_OFFSET(ENHMETAHEADER, rclFrame, 24)
9264     TEST_FIELD_SIZE  (ENHMETAHEADER, dSignature, 4)
9265     TEST_FIELD_ALIGN (ENHMETAHEADER, dSignature, 4)
9266     TEST_FIELD_OFFSET(ENHMETAHEADER, dSignature, 40)
9267     TEST_FIELD_SIZE  (ENHMETAHEADER, nVersion, 4)
9268     TEST_FIELD_ALIGN (ENHMETAHEADER, nVersion, 4)
9269     TEST_FIELD_OFFSET(ENHMETAHEADER, nVersion, 44)
9270     TEST_FIELD_SIZE  (ENHMETAHEADER, nBytes, 4)
9271     TEST_FIELD_ALIGN (ENHMETAHEADER, nBytes, 4)
9272     TEST_FIELD_OFFSET(ENHMETAHEADER, nBytes, 48)
9273     TEST_FIELD_SIZE  (ENHMETAHEADER, nRecords, 4)
9274     TEST_FIELD_ALIGN (ENHMETAHEADER, nRecords, 4)
9275     TEST_FIELD_OFFSET(ENHMETAHEADER, nRecords, 52)
9276     TEST_FIELD_SIZE  (ENHMETAHEADER, nHandles, 2)
9277     TEST_FIELD_ALIGN (ENHMETAHEADER, nHandles, 2)
9278     TEST_FIELD_OFFSET(ENHMETAHEADER, nHandles, 56)
9279     TEST_FIELD_SIZE  (ENHMETAHEADER, sReserved, 2)
9280     TEST_FIELD_ALIGN (ENHMETAHEADER, sReserved, 2)
9281     TEST_FIELD_OFFSET(ENHMETAHEADER, sReserved, 58)
9282     TEST_FIELD_SIZE  (ENHMETAHEADER, nDescription, 4)
9283     TEST_FIELD_ALIGN (ENHMETAHEADER, nDescription, 4)
9284     TEST_FIELD_OFFSET(ENHMETAHEADER, nDescription, 60)
9285     TEST_FIELD_SIZE  (ENHMETAHEADER, offDescription, 4)
9286     TEST_FIELD_ALIGN (ENHMETAHEADER, offDescription, 4)
9287     TEST_FIELD_OFFSET(ENHMETAHEADER, offDescription, 64)
9288     TEST_FIELD_SIZE  (ENHMETAHEADER, nPalEntries, 4)
9289     TEST_FIELD_ALIGN (ENHMETAHEADER, nPalEntries, 4)
9290     TEST_FIELD_OFFSET(ENHMETAHEADER, nPalEntries, 68)
9291     TEST_FIELD_SIZE  (ENHMETAHEADER, szlDevice, 8)
9292     TEST_FIELD_ALIGN (ENHMETAHEADER, szlDevice, 4)
9293     TEST_FIELD_OFFSET(ENHMETAHEADER, szlDevice, 72)
9294     TEST_FIELD_SIZE  (ENHMETAHEADER, szlMillimeters, 8)
9295     TEST_FIELD_ALIGN (ENHMETAHEADER, szlMillimeters, 4)
9296     TEST_FIELD_OFFSET(ENHMETAHEADER, szlMillimeters, 80)
9297     TEST_FIELD_SIZE  (ENHMETAHEADER, cbPixelFormat, 4)
9298     TEST_FIELD_ALIGN (ENHMETAHEADER, cbPixelFormat, 4)
9299     TEST_FIELD_OFFSET(ENHMETAHEADER, cbPixelFormat, 88)
9300     TEST_FIELD_SIZE  (ENHMETAHEADER, offPixelFormat, 4)
9301     TEST_FIELD_ALIGN (ENHMETAHEADER, offPixelFormat, 4)
9302     TEST_FIELD_OFFSET(ENHMETAHEADER, offPixelFormat, 92)
9303     TEST_FIELD_SIZE  (ENHMETAHEADER, bOpenGL, 4)
9304     TEST_FIELD_ALIGN (ENHMETAHEADER, bOpenGL, 4)
9305     TEST_FIELD_OFFSET(ENHMETAHEADER, bOpenGL, 96)
9306     TEST_FIELD_SIZE  (ENHMETAHEADER, szlMicrometers, 8)
9307     TEST_FIELD_ALIGN (ENHMETAHEADER, szlMicrometers, 4)
9308     TEST_FIELD_OFFSET(ENHMETAHEADER, szlMicrometers, 100)
9309 }
9310
9311 static void test_pack_ENHMETARECORD(void)
9312 {
9313     /* ENHMETARECORD */
9314     TEST_TYPE_SIZE   (ENHMETARECORD, 12)
9315     TEST_TYPE_ALIGN  (ENHMETARECORD, 4)
9316     TEST_FIELD_SIZE  (ENHMETARECORD, iType, 4)
9317     TEST_FIELD_ALIGN (ENHMETARECORD, iType, 4)
9318     TEST_FIELD_OFFSET(ENHMETARECORD, iType, 0)
9319     TEST_FIELD_SIZE  (ENHMETARECORD, nSize, 4)
9320     TEST_FIELD_ALIGN (ENHMETARECORD, nSize, 4)
9321     TEST_FIELD_OFFSET(ENHMETARECORD, nSize, 4)
9322     TEST_FIELD_SIZE  (ENHMETARECORD, dParm, 4)
9323     TEST_FIELD_ALIGN (ENHMETARECORD, dParm, 4)
9324     TEST_FIELD_OFFSET(ENHMETARECORD, dParm, 8)
9325 }
9326
9327 static void test_pack_ENHMFENUMPROC(void)
9328 {
9329     /* ENHMFENUMPROC */
9330     TEST_TYPE_SIZE   (ENHMFENUMPROC, 4)
9331     TEST_TYPE_ALIGN  (ENHMFENUMPROC, 4)
9332 }
9333
9334 static void test_pack_ENUMLOGFONTA(void)
9335 {
9336     /* ENUMLOGFONTA */
9337     TEST_TYPE_SIZE   (ENUMLOGFONTA, 156)
9338     TEST_TYPE_ALIGN  (ENUMLOGFONTA, 4)
9339     TEST_FIELD_SIZE  (ENUMLOGFONTA, elfLogFont, 60)
9340     TEST_FIELD_ALIGN (ENUMLOGFONTA, elfLogFont, 4)
9341     TEST_FIELD_OFFSET(ENUMLOGFONTA, elfLogFont, 0)
9342     TEST_FIELD_SIZE  (ENUMLOGFONTA, elfFullName, 64)
9343     TEST_FIELD_ALIGN (ENUMLOGFONTA, elfFullName, 1)
9344     TEST_FIELD_OFFSET(ENUMLOGFONTA, elfFullName, 60)
9345     TEST_FIELD_SIZE  (ENUMLOGFONTA, elfStyle, 32)
9346     TEST_FIELD_ALIGN (ENUMLOGFONTA, elfStyle, 1)
9347     TEST_FIELD_OFFSET(ENUMLOGFONTA, elfStyle, 124)
9348 }
9349
9350 static void test_pack_ENUMLOGFONTEXA(void)
9351 {
9352     /* ENUMLOGFONTEXA */
9353     TEST_TYPE_SIZE   (ENUMLOGFONTEXA, 188)
9354     TEST_TYPE_ALIGN  (ENUMLOGFONTEXA, 4)
9355     TEST_FIELD_SIZE  (ENUMLOGFONTEXA, elfLogFont, 60)
9356     TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfLogFont, 4)
9357     TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfLogFont, 0)
9358     TEST_FIELD_SIZE  (ENUMLOGFONTEXA, elfFullName, 64)
9359     TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfFullName, 1)
9360     TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfFullName, 60)
9361     TEST_FIELD_SIZE  (ENUMLOGFONTEXA, elfStyle, 32)
9362     TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfStyle, 1)
9363     TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfStyle, 124)
9364     TEST_FIELD_SIZE  (ENUMLOGFONTEXA, elfScript, 32)
9365     TEST_FIELD_ALIGN (ENUMLOGFONTEXA, elfScript, 1)
9366     TEST_FIELD_OFFSET(ENUMLOGFONTEXA, elfScript, 156)
9367 }
9368
9369 static void test_pack_ENUMLOGFONTEXW(void)
9370 {
9371     /* ENUMLOGFONTEXW */
9372     TEST_TYPE_SIZE   (ENUMLOGFONTEXW, 348)
9373     TEST_TYPE_ALIGN  (ENUMLOGFONTEXW, 4)
9374     TEST_FIELD_SIZE  (ENUMLOGFONTEXW, elfLogFont, 92)
9375     TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfLogFont, 4)
9376     TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfLogFont, 0)
9377     TEST_FIELD_SIZE  (ENUMLOGFONTEXW, elfFullName, 128)
9378     TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfFullName, 2)
9379     TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfFullName, 92)
9380     TEST_FIELD_SIZE  (ENUMLOGFONTEXW, elfStyle, 64)
9381     TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfStyle, 2)
9382     TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfStyle, 220)
9383     TEST_FIELD_SIZE  (ENUMLOGFONTEXW, elfScript, 64)
9384     TEST_FIELD_ALIGN (ENUMLOGFONTEXW, elfScript, 2)
9385     TEST_FIELD_OFFSET(ENUMLOGFONTEXW, elfScript, 284)
9386 }
9387
9388 static void test_pack_ENUMLOGFONTW(void)
9389 {
9390     /* ENUMLOGFONTW */
9391     TEST_TYPE_SIZE   (ENUMLOGFONTW, 284)
9392     TEST_TYPE_ALIGN  (ENUMLOGFONTW, 4)
9393     TEST_FIELD_SIZE  (ENUMLOGFONTW, elfLogFont, 92)
9394     TEST_FIELD_ALIGN (ENUMLOGFONTW, elfLogFont, 4)
9395     TEST_FIELD_OFFSET(ENUMLOGFONTW, elfLogFont, 0)
9396     TEST_FIELD_SIZE  (ENUMLOGFONTW, elfFullName, 128)
9397     TEST_FIELD_ALIGN (ENUMLOGFONTW, elfFullName, 2)
9398     TEST_FIELD_OFFSET(ENUMLOGFONTW, elfFullName, 92)
9399     TEST_FIELD_SIZE  (ENUMLOGFONTW, elfStyle, 64)
9400     TEST_FIELD_ALIGN (ENUMLOGFONTW, elfStyle, 2)
9401     TEST_FIELD_OFFSET(ENUMLOGFONTW, elfStyle, 220)
9402 }
9403
9404 static void test_pack_EXTLOGFONTA(void)
9405 {
9406     /* EXTLOGFONTA */
9407     TEST_TYPE_SIZE   (EXTLOGFONTA, 192)
9408     TEST_TYPE_ALIGN  (EXTLOGFONTA, 4)
9409     TEST_FIELD_SIZE  (EXTLOGFONTA, elfLogFont, 60)
9410     TEST_FIELD_ALIGN (EXTLOGFONTA, elfLogFont, 4)
9411     TEST_FIELD_OFFSET(EXTLOGFONTA, elfLogFont, 0)
9412     TEST_FIELD_SIZE  (EXTLOGFONTA, elfFullName, 64)
9413     TEST_FIELD_ALIGN (EXTLOGFONTA, elfFullName, 1)
9414     TEST_FIELD_OFFSET(EXTLOGFONTA, elfFullName, 60)
9415     TEST_FIELD_SIZE  (EXTLOGFONTA, elfStyle, 32)
9416     TEST_FIELD_ALIGN (EXTLOGFONTA, elfStyle, 1)
9417     TEST_FIELD_OFFSET(EXTLOGFONTA, elfStyle, 124)
9418     TEST_FIELD_SIZE  (EXTLOGFONTA, elfVersion, 4)
9419     TEST_FIELD_ALIGN (EXTLOGFONTA, elfVersion, 4)
9420     TEST_FIELD_OFFSET(EXTLOGFONTA, elfVersion, 156)
9421     TEST_FIELD_SIZE  (EXTLOGFONTA, elfStyleSize, 4)
9422     TEST_FIELD_ALIGN (EXTLOGFONTA, elfStyleSize, 4)
9423     TEST_FIELD_OFFSET(EXTLOGFONTA, elfStyleSize, 160)
9424     TEST_FIELD_SIZE  (EXTLOGFONTA, elfMatch, 4)
9425     TEST_FIELD_ALIGN (EXTLOGFONTA, elfMatch, 4)
9426     TEST_FIELD_OFFSET(EXTLOGFONTA, elfMatch, 164)
9427     TEST_FIELD_SIZE  (EXTLOGFONTA, elfReserved, 4)
9428     TEST_FIELD_ALIGN (EXTLOGFONTA, elfReserved, 4)
9429     TEST_FIELD_OFFSET(EXTLOGFONTA, elfReserved, 168)
9430     TEST_FIELD_SIZE  (EXTLOGFONTA, elfVendorId, 4)
9431     TEST_FIELD_ALIGN (EXTLOGFONTA, elfVendorId, 1)
9432     TEST_FIELD_OFFSET(EXTLOGFONTA, elfVendorId, 172)
9433     TEST_FIELD_SIZE  (EXTLOGFONTA, elfCulture, 4)
9434     TEST_FIELD_ALIGN (EXTLOGFONTA, elfCulture, 4)
9435     TEST_FIELD_OFFSET(EXTLOGFONTA, elfCulture, 176)
9436     TEST_FIELD_SIZE  (EXTLOGFONTA, elfPanose, 10)
9437     TEST_FIELD_ALIGN (EXTLOGFONTA, elfPanose, 1)
9438     TEST_FIELD_OFFSET(EXTLOGFONTA, elfPanose, 180)
9439 }
9440
9441 static void test_pack_EXTLOGFONTW(void)
9442 {
9443     /* EXTLOGFONTW */
9444     TEST_TYPE_SIZE   (EXTLOGFONTW, 320)
9445     TEST_TYPE_ALIGN  (EXTLOGFONTW, 4)
9446     TEST_FIELD_SIZE  (EXTLOGFONTW, elfLogFont, 92)
9447     TEST_FIELD_ALIGN (EXTLOGFONTW, elfLogFont, 4)
9448     TEST_FIELD_OFFSET(EXTLOGFONTW, elfLogFont, 0)
9449     TEST_FIELD_SIZE  (EXTLOGFONTW, elfFullName, 128)
9450     TEST_FIELD_ALIGN (EXTLOGFONTW, elfFullName, 2)
9451     TEST_FIELD_OFFSET(EXTLOGFONTW, elfFullName, 92)
9452     TEST_FIELD_SIZE  (EXTLOGFONTW, elfStyle, 64)
9453     TEST_FIELD_ALIGN (EXTLOGFONTW, elfStyle, 2)
9454     TEST_FIELD_OFFSET(EXTLOGFONTW, elfStyle, 220)
9455     TEST_FIELD_SIZE  (EXTLOGFONTW, elfVersion, 4)
9456     TEST_FIELD_ALIGN (EXTLOGFONTW, elfVersion, 4)
9457     TEST_FIELD_OFFSET(EXTLOGFONTW, elfVersion, 284)
9458     TEST_FIELD_SIZE  (EXTLOGFONTW, elfStyleSize, 4)
9459     TEST_FIELD_ALIGN (EXTLOGFONTW, elfStyleSize, 4)
9460     TEST_FIELD_OFFSET(EXTLOGFONTW, elfStyleSize, 288)
9461     TEST_FIELD_SIZE  (EXTLOGFONTW, elfMatch, 4)
9462     TEST_FIELD_ALIGN (EXTLOGFONTW, elfMatch, 4)
9463     TEST_FIELD_OFFSET(EXTLOGFONTW, elfMatch, 292)
9464     TEST_FIELD_SIZE  (EXTLOGFONTW, elfReserved, 4)
9465     TEST_FIELD_ALIGN (EXTLOGFONTW, elfReserved, 4)
9466     TEST_FIELD_OFFSET(EXTLOGFONTW, elfReserved, 296)
9467     TEST_FIELD_SIZE  (EXTLOGFONTW, elfVendorId, 4)
9468     TEST_FIELD_ALIGN (EXTLOGFONTW, elfVendorId, 1)
9469     TEST_FIELD_OFFSET(EXTLOGFONTW, elfVendorId, 300)
9470     TEST_FIELD_SIZE  (EXTLOGFONTW, elfCulture, 4)
9471     TEST_FIELD_ALIGN (EXTLOGFONTW, elfCulture, 4)
9472     TEST_FIELD_OFFSET(EXTLOGFONTW, elfCulture, 304)
9473     TEST_FIELD_SIZE  (EXTLOGFONTW, elfPanose, 10)
9474     TEST_FIELD_ALIGN (EXTLOGFONTW, elfPanose, 1)
9475     TEST_FIELD_OFFSET(EXTLOGFONTW, elfPanose, 308)
9476 }
9477
9478 static void test_pack_EXTLOGPEN(void)
9479 {
9480     /* EXTLOGPEN */
9481     TEST_TYPE_SIZE   (EXTLOGPEN, 28)
9482     TEST_TYPE_ALIGN  (EXTLOGPEN, 4)
9483     TEST_FIELD_SIZE  (EXTLOGPEN, elpPenStyle, 4)
9484     TEST_FIELD_ALIGN (EXTLOGPEN, elpPenStyle, 4)
9485     TEST_FIELD_OFFSET(EXTLOGPEN, elpPenStyle, 0)
9486     TEST_FIELD_SIZE  (EXTLOGPEN, elpWidth, 4)
9487     TEST_FIELD_ALIGN (EXTLOGPEN, elpWidth, 4)
9488     TEST_FIELD_OFFSET(EXTLOGPEN, elpWidth, 4)
9489     TEST_FIELD_SIZE  (EXTLOGPEN, elpBrushStyle, 4)
9490     TEST_FIELD_ALIGN (EXTLOGPEN, elpBrushStyle, 4)
9491     TEST_FIELD_OFFSET(EXTLOGPEN, elpBrushStyle, 8)
9492     TEST_FIELD_SIZE  (EXTLOGPEN, elpColor, 4)
9493     TEST_FIELD_ALIGN (EXTLOGPEN, elpColor, 4)
9494     TEST_FIELD_OFFSET(EXTLOGPEN, elpColor, 12)
9495     TEST_FIELD_SIZE  (EXTLOGPEN, elpHatch, 4)
9496     TEST_FIELD_ALIGN (EXTLOGPEN, elpHatch, 4)
9497     TEST_FIELD_OFFSET(EXTLOGPEN, elpHatch, 16)
9498     TEST_FIELD_SIZE  (EXTLOGPEN, elpNumEntries, 4)
9499     TEST_FIELD_ALIGN (EXTLOGPEN, elpNumEntries, 4)
9500     TEST_FIELD_OFFSET(EXTLOGPEN, elpNumEntries, 20)
9501     TEST_FIELD_SIZE  (EXTLOGPEN, elpStyleEntry, 4)
9502     TEST_FIELD_ALIGN (EXTLOGPEN, elpStyleEntry, 4)
9503     TEST_FIELD_OFFSET(EXTLOGPEN, elpStyleEntry, 24)
9504 }
9505
9506 static void test_pack_FIXED(void)
9507 {
9508     /* FIXED */
9509     TEST_TYPE_SIZE   (FIXED, 4)
9510     TEST_TYPE_ALIGN  (FIXED, 2)
9511     TEST_FIELD_SIZE  (FIXED, fract, 2)
9512     TEST_FIELD_ALIGN (FIXED, fract, 2)
9513     TEST_FIELD_OFFSET(FIXED, fract, 0)
9514     TEST_FIELD_SIZE  (FIXED, value, 2)
9515     TEST_FIELD_ALIGN (FIXED, value, 2)
9516     TEST_FIELD_OFFSET(FIXED, value, 2)
9517 }
9518
9519 static void test_pack_FONTENUMPROCA(void)
9520 {
9521     /* FONTENUMPROCA */
9522     TEST_TYPE_SIZE   (FONTENUMPROCA, 4)
9523     TEST_TYPE_ALIGN  (FONTENUMPROCA, 4)
9524 }
9525
9526 static void test_pack_FONTENUMPROCW(void)
9527 {
9528     /* FONTENUMPROCW */
9529     TEST_TYPE_SIZE   (FONTENUMPROCW, 4)
9530     TEST_TYPE_ALIGN  (FONTENUMPROCW, 4)
9531 }
9532
9533 static void test_pack_FONTSIGNATURE(void)
9534 {
9535     /* FONTSIGNATURE */
9536     TEST_TYPE_SIZE   (FONTSIGNATURE, 24)
9537     TEST_TYPE_ALIGN  (FONTSIGNATURE, 4)
9538     TEST_FIELD_SIZE  (FONTSIGNATURE, fsUsb, 16)
9539     TEST_FIELD_ALIGN (FONTSIGNATURE, fsUsb, 4)
9540     TEST_FIELD_OFFSET(FONTSIGNATURE, fsUsb, 0)
9541     TEST_FIELD_SIZE  (FONTSIGNATURE, fsCsb, 8)
9542     TEST_FIELD_ALIGN (FONTSIGNATURE, fsCsb, 4)
9543     TEST_FIELD_OFFSET(FONTSIGNATURE, fsCsb, 16)
9544 }
9545
9546 static void test_pack_FXPT16DOT16(void)
9547 {
9548     /* FXPT16DOT16 */
9549     TEST_TYPE_SIZE   (FXPT16DOT16, 4)
9550     TEST_TYPE_ALIGN  (FXPT16DOT16, 4)
9551 }
9552
9553 static void test_pack_FXPT2DOT30(void)
9554 {
9555     /* FXPT2DOT30 */
9556     TEST_TYPE_SIZE   (FXPT2DOT30, 4)
9557     TEST_TYPE_ALIGN  (FXPT2DOT30, 4)
9558 }
9559
9560 static void test_pack_GCP_RESULTSA(void)
9561 {
9562     /* GCP_RESULTSA */
9563     TEST_TYPE_SIZE   (GCP_RESULTSA, 36)
9564     TEST_TYPE_ALIGN  (GCP_RESULTSA, 4)
9565     TEST_FIELD_SIZE  (GCP_RESULTSA, lStructSize, 4)
9566     TEST_FIELD_ALIGN (GCP_RESULTSA, lStructSize, 4)
9567     TEST_FIELD_OFFSET(GCP_RESULTSA, lStructSize, 0)
9568     TEST_FIELD_SIZE  (GCP_RESULTSA, lpOutString, 4)
9569     TEST_FIELD_ALIGN (GCP_RESULTSA, lpOutString, 4)
9570     TEST_FIELD_OFFSET(GCP_RESULTSA, lpOutString, 4)
9571     TEST_FIELD_SIZE  (GCP_RESULTSA, lpOrder, 4)
9572     TEST_FIELD_ALIGN (GCP_RESULTSA, lpOrder, 4)
9573     TEST_FIELD_OFFSET(GCP_RESULTSA, lpOrder, 8)
9574     TEST_FIELD_SIZE  (GCP_RESULTSA, lpDx, 4)
9575     TEST_FIELD_ALIGN (GCP_RESULTSA, lpDx, 4)
9576     TEST_FIELD_OFFSET(GCP_RESULTSA, lpDx, 12)
9577     TEST_FIELD_SIZE  (GCP_RESULTSA, lpCaretPos, 4)
9578     TEST_FIELD_ALIGN (GCP_RESULTSA, lpCaretPos, 4)
9579     TEST_FIELD_OFFSET(GCP_RESULTSA, lpCaretPos, 16)
9580     TEST_FIELD_SIZE  (GCP_RESULTSA, lpClass, 4)
9581     TEST_FIELD_ALIGN (GCP_RESULTSA, lpClass, 4)
9582     TEST_FIELD_OFFSET(GCP_RESULTSA, lpClass, 20)
9583     TEST_FIELD_SIZE  (GCP_RESULTSA, lpGlyphs, 4)
9584     TEST_FIELD_ALIGN (GCP_RESULTSA, lpGlyphs, 4)
9585     TEST_FIELD_OFFSET(GCP_RESULTSA, lpGlyphs, 24)
9586     TEST_FIELD_SIZE  (GCP_RESULTSA, nGlyphs, 4)
9587     TEST_FIELD_ALIGN (GCP_RESULTSA, nGlyphs, 4)
9588     TEST_FIELD_OFFSET(GCP_RESULTSA, nGlyphs, 28)
9589     TEST_FIELD_SIZE  (GCP_RESULTSA, nMaxFit, 4)
9590     TEST_FIELD_ALIGN (GCP_RESULTSA, nMaxFit, 4)
9591     TEST_FIELD_OFFSET(GCP_RESULTSA, nMaxFit, 32)
9592 }
9593
9594 static void test_pack_GCP_RESULTSW(void)
9595 {
9596     /* GCP_RESULTSW */
9597     TEST_TYPE_SIZE   (GCP_RESULTSW, 36)
9598     TEST_TYPE_ALIGN  (GCP_RESULTSW, 4)
9599     TEST_FIELD_SIZE  (GCP_RESULTSW, lStructSize, 4)
9600     TEST_FIELD_ALIGN (GCP_RESULTSW, lStructSize, 4)
9601     TEST_FIELD_OFFSET(GCP_RESULTSW, lStructSize, 0)
9602     TEST_FIELD_SIZE  (GCP_RESULTSW, lpOutString, 4)
9603     TEST_FIELD_ALIGN (GCP_RESULTSW, lpOutString, 4)
9604     TEST_FIELD_OFFSET(GCP_RESULTSW, lpOutString, 4)
9605     TEST_FIELD_SIZE  (GCP_RESULTSW, lpOrder, 4)
9606     TEST_FIELD_ALIGN (GCP_RESULTSW, lpOrder, 4)
9607     TEST_FIELD_OFFSET(GCP_RESULTSW, lpOrder, 8)
9608     TEST_FIELD_SIZE  (GCP_RESULTSW, lpDx, 4)
9609     TEST_FIELD_ALIGN (GCP_RESULTSW, lpDx, 4)
9610     TEST_FIELD_OFFSET(GCP_RESULTSW, lpDx, 12)
9611     TEST_FIELD_SIZE  (GCP_RESULTSW, lpCaretPos, 4)
9612     TEST_FIELD_ALIGN (GCP_RESULTSW, lpCaretPos, 4)
9613     TEST_FIELD_OFFSET(GCP_RESULTSW, lpCaretPos, 16)
9614     TEST_FIELD_SIZE  (GCP_RESULTSW, lpClass, 4)
9615     TEST_FIELD_ALIGN (GCP_RESULTSW, lpClass, 4)
9616     TEST_FIELD_OFFSET(GCP_RESULTSW, lpClass, 20)
9617     TEST_FIELD_SIZE  (GCP_RESULTSW, lpGlyphs, 4)
9618     TEST_FIELD_ALIGN (GCP_RESULTSW, lpGlyphs, 4)
9619     TEST_FIELD_OFFSET(GCP_RESULTSW, lpGlyphs, 24)
9620     TEST_FIELD_SIZE  (GCP_RESULTSW, nGlyphs, 4)
9621     TEST_FIELD_ALIGN (GCP_RESULTSW, nGlyphs, 4)
9622     TEST_FIELD_OFFSET(GCP_RESULTSW, nGlyphs, 28)
9623     TEST_FIELD_SIZE  (GCP_RESULTSW, nMaxFit, 4)
9624     TEST_FIELD_ALIGN (GCP_RESULTSW, nMaxFit, 4)
9625     TEST_FIELD_OFFSET(GCP_RESULTSW, nMaxFit, 32)
9626 }
9627
9628 static void test_pack_GLYPHMETRICS(void)
9629 {
9630     /* GLYPHMETRICS */
9631     TEST_TYPE_SIZE   (GLYPHMETRICS, 20)
9632     TEST_TYPE_ALIGN  (GLYPHMETRICS, 4)
9633     TEST_FIELD_SIZE  (GLYPHMETRICS, gmBlackBoxX, 4)
9634     TEST_FIELD_ALIGN (GLYPHMETRICS, gmBlackBoxX, 4)
9635     TEST_FIELD_OFFSET(GLYPHMETRICS, gmBlackBoxX, 0)
9636     TEST_FIELD_SIZE  (GLYPHMETRICS, gmBlackBoxY, 4)
9637     TEST_FIELD_ALIGN (GLYPHMETRICS, gmBlackBoxY, 4)
9638     TEST_FIELD_OFFSET(GLYPHMETRICS, gmBlackBoxY, 4)
9639     TEST_FIELD_SIZE  (GLYPHMETRICS, gmptGlyphOrigin, 8)
9640     TEST_FIELD_ALIGN (GLYPHMETRICS, gmptGlyphOrigin, 4)
9641     TEST_FIELD_OFFSET(GLYPHMETRICS, gmptGlyphOrigin, 8)
9642     TEST_FIELD_SIZE  (GLYPHMETRICS, gmCellIncX, 2)
9643     TEST_FIELD_ALIGN (GLYPHMETRICS, gmCellIncX, 2)
9644     TEST_FIELD_OFFSET(GLYPHMETRICS, gmCellIncX, 16)
9645     TEST_FIELD_SIZE  (GLYPHMETRICS, gmCellIncY, 2)
9646     TEST_FIELD_ALIGN (GLYPHMETRICS, gmCellIncY, 2)
9647     TEST_FIELD_OFFSET(GLYPHMETRICS, gmCellIncY, 18)
9648 }
9649
9650 static void test_pack_GLYPHMETRICSFLOAT(void)
9651 {
9652     /* GLYPHMETRICSFLOAT */
9653     TEST_TYPE_SIZE   (GLYPHMETRICSFLOAT, 24)
9654     TEST_TYPE_ALIGN  (GLYPHMETRICSFLOAT, 4)
9655     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfBlackBoxX, 4)
9656     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfBlackBoxX, 4)
9657     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfBlackBoxX, 0)
9658     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfBlackBoxY, 4)
9659     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfBlackBoxY, 4)
9660     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfBlackBoxY, 4)
9661     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfptGlyphOrigin, 8)
9662     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfptGlyphOrigin, 4)
9663     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfptGlyphOrigin, 8)
9664     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfCellIncX, 4)
9665     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfCellIncX, 4)
9666     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfCellIncX, 16)
9667     TEST_FIELD_SIZE  (GLYPHMETRICSFLOAT, gmfCellIncY, 4)
9668     TEST_FIELD_ALIGN (GLYPHMETRICSFLOAT, gmfCellIncY, 4)
9669     TEST_FIELD_OFFSET(GLYPHMETRICSFLOAT, gmfCellIncY, 20)
9670 }
9671
9672 static void test_pack_GOBJENUMPROC(void)
9673 {
9674     /* GOBJENUMPROC */
9675     TEST_TYPE_SIZE   (GOBJENUMPROC, 4)
9676     TEST_TYPE_ALIGN  (GOBJENUMPROC, 4)
9677 }
9678
9679 static void test_pack_GRADIENT_RECT(void)
9680 {
9681     /* GRADIENT_RECT */
9682     TEST_TYPE_SIZE   (GRADIENT_RECT, 8)
9683     TEST_TYPE_ALIGN  (GRADIENT_RECT, 4)
9684     TEST_FIELD_SIZE  (GRADIENT_RECT, UpperLeft, 4)
9685     TEST_FIELD_ALIGN (GRADIENT_RECT, UpperLeft, 4)
9686     TEST_FIELD_OFFSET(GRADIENT_RECT, UpperLeft, 0)
9687     TEST_FIELD_SIZE  (GRADIENT_RECT, LowerRight, 4)
9688     TEST_FIELD_ALIGN (GRADIENT_RECT, LowerRight, 4)
9689     TEST_FIELD_OFFSET(GRADIENT_RECT, LowerRight, 4)
9690 }
9691
9692 static void test_pack_GRADIENT_TRIANGLE(void)
9693 {
9694     /* GRADIENT_TRIANGLE */
9695     TEST_TYPE_SIZE   (GRADIENT_TRIANGLE, 12)
9696     TEST_TYPE_ALIGN  (GRADIENT_TRIANGLE, 4)
9697     TEST_FIELD_SIZE  (GRADIENT_TRIANGLE, Vertex1, 4)
9698     TEST_FIELD_ALIGN (GRADIENT_TRIANGLE, Vertex1, 4)
9699     TEST_FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex1, 0)
9700     TEST_FIELD_SIZE  (GRADIENT_TRIANGLE, Vertex2, 4)
9701     TEST_FIELD_ALIGN (GRADIENT_TRIANGLE, Vertex2, 4)
9702     TEST_FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex2, 4)
9703     TEST_FIELD_SIZE  (GRADIENT_TRIANGLE, Vertex3, 4)
9704     TEST_FIELD_ALIGN (GRADIENT_TRIANGLE, Vertex3, 4)
9705     TEST_FIELD_OFFSET(GRADIENT_TRIANGLE, Vertex3, 8)
9706 }
9707
9708 static void test_pack_HANDLETABLE(void)
9709 {
9710     /* HANDLETABLE */
9711     TEST_TYPE_SIZE   (HANDLETABLE, 4)
9712     TEST_TYPE_ALIGN  (HANDLETABLE, 4)
9713     TEST_FIELD_SIZE  (HANDLETABLE, objectHandle, 4)
9714     TEST_FIELD_ALIGN (HANDLETABLE, objectHandle, 4)
9715     TEST_FIELD_OFFSET(HANDLETABLE, objectHandle, 0)
9716 }
9717
9718 static void test_pack_ICMENUMPROCA(void)
9719 {
9720     /* ICMENUMPROCA */
9721     TEST_TYPE_SIZE   (ICMENUMPROCA, 4)
9722     TEST_TYPE_ALIGN  (ICMENUMPROCA, 4)
9723 }
9724
9725 static void test_pack_ICMENUMPROCW(void)
9726 {
9727     /* ICMENUMPROCW */
9728     TEST_TYPE_SIZE   (ICMENUMPROCW, 4)
9729     TEST_TYPE_ALIGN  (ICMENUMPROCW, 4)
9730 }
9731
9732 static void test_pack_KERNINGPAIR(void)
9733 {
9734     /* KERNINGPAIR */
9735     TEST_TYPE_SIZE   (KERNINGPAIR, 8)
9736     TEST_TYPE_ALIGN  (KERNINGPAIR, 4)
9737     TEST_FIELD_SIZE  (KERNINGPAIR, wFirst, 2)
9738     TEST_FIELD_ALIGN (KERNINGPAIR, wFirst, 2)
9739     TEST_FIELD_OFFSET(KERNINGPAIR, wFirst, 0)
9740     TEST_FIELD_SIZE  (KERNINGPAIR, wSecond, 2)
9741     TEST_FIELD_ALIGN (KERNINGPAIR, wSecond, 2)
9742     TEST_FIELD_OFFSET(KERNINGPAIR, wSecond, 2)
9743     TEST_FIELD_SIZE  (KERNINGPAIR, iKernAmount, 4)
9744     TEST_FIELD_ALIGN (KERNINGPAIR, iKernAmount, 4)
9745     TEST_FIELD_OFFSET(KERNINGPAIR, iKernAmount, 4)
9746 }
9747
9748 static void test_pack_LAYERPLANEDESCRIPTOR(void)
9749 {
9750     /* LAYERPLANEDESCRIPTOR */
9751     TEST_TYPE_SIZE   (LAYERPLANEDESCRIPTOR, 32)
9752     TEST_TYPE_ALIGN  (LAYERPLANEDESCRIPTOR, 4)
9753     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, nSize, 2)
9754     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, nSize, 2)
9755     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, nSize, 0)
9756     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, nVersion, 2)
9757     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, nVersion, 2)
9758     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, nVersion, 2)
9759     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, dwFlags, 4)
9760     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, dwFlags, 4)
9761     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, dwFlags, 4)
9762     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, iPixelType, 1)
9763     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, iPixelType, 1)
9764     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, iPixelType, 8)
9765     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cColorBits, 1)
9766     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cColorBits, 1)
9767     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cColorBits, 9)
9768     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cRedBits, 1)
9769     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cRedBits, 1)
9770     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cRedBits, 10)
9771     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cRedShift, 1)
9772     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cRedShift, 1)
9773     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cRedShift, 11)
9774     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cGreenBits, 1)
9775     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cGreenBits, 1)
9776     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cGreenBits, 12)
9777     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cGreenShift, 1)
9778     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cGreenShift, 1)
9779     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cGreenShift, 13)
9780     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cBlueBits, 1)
9781     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cBlueBits, 1)
9782     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cBlueBits, 14)
9783     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cBlueShift, 1)
9784     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cBlueShift, 1)
9785     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cBlueShift, 15)
9786     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAlphaBits, 1)
9787     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAlphaBits, 1)
9788     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAlphaBits, 16)
9789     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAlphaShift, 1)
9790     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAlphaShift, 1)
9791     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAlphaShift, 17)
9792     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumBits, 1)
9793     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumBits, 1)
9794     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumBits, 18)
9795     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumRedBits, 1)
9796     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumRedBits, 1)
9797     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumRedBits, 19)
9798     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumGreenBits, 1)
9799     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumGreenBits, 1)
9800     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumGreenBits, 20)
9801     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumBlueBits, 1)
9802     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumBlueBits, 1)
9803     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumBlueBits, 21)
9804     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAccumAlphaBits, 1)
9805     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAccumAlphaBits, 1)
9806     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAccumAlphaBits, 22)
9807     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cDepthBits, 1)
9808     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cDepthBits, 1)
9809     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cDepthBits, 23)
9810     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cStencilBits, 1)
9811     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cStencilBits, 1)
9812     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cStencilBits, 24)
9813     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, cAuxBuffers, 1)
9814     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, cAuxBuffers, 1)
9815     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, cAuxBuffers, 25)
9816     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, iLayerPlane, 1)
9817     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, iLayerPlane, 1)
9818     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, iLayerPlane, 26)
9819     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, bReserved, 1)
9820     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, bReserved, 1)
9821     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, bReserved, 27)
9822     TEST_FIELD_SIZE  (LAYERPLANEDESCRIPTOR, crTransparent, 4)
9823     TEST_FIELD_ALIGN (LAYERPLANEDESCRIPTOR, crTransparent, 4)
9824     TEST_FIELD_OFFSET(LAYERPLANEDESCRIPTOR, crTransparent, 28)
9825 }
9826
9827 static void test_pack_LCSCSTYPE(void)
9828 {
9829     /* LCSCSTYPE */
9830     TEST_TYPE_SIZE   (LCSCSTYPE, 4)
9831     TEST_TYPE_ALIGN  (LCSCSTYPE, 4)
9832 }
9833
9834 static void test_pack_LCSGAMUTMATCH(void)
9835 {
9836     /* LCSGAMUTMATCH */
9837     TEST_TYPE_SIZE   (LCSGAMUTMATCH, 4)
9838     TEST_TYPE_ALIGN  (LCSGAMUTMATCH, 4)
9839 }
9840
9841 static void test_pack_LINEDDAPROC(void)
9842 {
9843     /* LINEDDAPROC */
9844     TEST_TYPE_SIZE   (LINEDDAPROC, 4)
9845     TEST_TYPE_ALIGN  (LINEDDAPROC, 4)
9846 }
9847
9848 static void test_pack_LOCALESIGNATURE(void)
9849 {
9850     /* LOCALESIGNATURE */
9851     TEST_TYPE_SIZE   (LOCALESIGNATURE, 32)
9852     TEST_TYPE_ALIGN  (LOCALESIGNATURE, 4)
9853     TEST_FIELD_SIZE  (LOCALESIGNATURE, lsUsb, 16)
9854     TEST_FIELD_ALIGN (LOCALESIGNATURE, lsUsb, 4)
9855     TEST_FIELD_OFFSET(LOCALESIGNATURE, lsUsb, 0)
9856     TEST_FIELD_SIZE  (LOCALESIGNATURE, lsCsbDefault, 8)
9857     TEST_FIELD_ALIGN (LOCALESIGNATURE, lsCsbDefault, 4)
9858     TEST_FIELD_OFFSET(LOCALESIGNATURE, lsCsbDefault, 16)
9859     TEST_FIELD_SIZE  (LOCALESIGNATURE, lsCsbSupported, 8)
9860     TEST_FIELD_ALIGN (LOCALESIGNATURE, lsCsbSupported, 4)
9861     TEST_FIELD_OFFSET(LOCALESIGNATURE, lsCsbSupported, 24)
9862 }
9863
9864 static void test_pack_LOGBRUSH(void)
9865 {
9866     /* LOGBRUSH */
9867     TEST_TYPE_SIZE   (LOGBRUSH, 12)
9868     TEST_TYPE_ALIGN  (LOGBRUSH, 4)
9869     TEST_FIELD_SIZE  (LOGBRUSH, lbStyle, 4)
9870     TEST_FIELD_ALIGN (LOGBRUSH, lbStyle, 4)
9871     TEST_FIELD_OFFSET(LOGBRUSH, lbStyle, 0)
9872     TEST_FIELD_SIZE  (LOGBRUSH, lbColor, 4)
9873     TEST_FIELD_ALIGN (LOGBRUSH, lbColor, 4)
9874     TEST_FIELD_OFFSET(LOGBRUSH, lbColor, 4)
9875     TEST_FIELD_SIZE  (LOGBRUSH, lbHatch, 4)
9876     TEST_FIELD_ALIGN (LOGBRUSH, lbHatch, 4)
9877     TEST_FIELD_OFFSET(LOGBRUSH, lbHatch, 8)
9878 }
9879
9880 static void test_pack_LOGCOLORSPACEA(void)
9881 {
9882     /* LOGCOLORSPACEA */
9883     TEST_TYPE_SIZE   (LOGCOLORSPACEA, 328)
9884     TEST_TYPE_ALIGN  (LOGCOLORSPACEA, 4)
9885     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsSignature, 4)
9886     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsSignature, 4)
9887     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsSignature, 0)
9888     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsVersion, 4)
9889     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsVersion, 4)
9890     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsVersion, 4)
9891     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsSize, 4)
9892     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsSize, 4)
9893     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsSize, 8)
9894     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsCSType, 4)
9895     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsCSType, 4)
9896     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsCSType, 12)
9897     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsIntent, 4)
9898     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsIntent, 4)
9899     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsIntent, 16)
9900     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsEndpoints, 36)
9901     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsEndpoints, 4)
9902     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsEndpoints, 20)
9903     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsGammaRed, 4)
9904     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsGammaRed, 4)
9905     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsGammaRed, 56)
9906     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsGammaGreen, 4)
9907     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsGammaGreen, 4)
9908     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsGammaGreen, 60)
9909     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsGammaBlue, 4)
9910     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsGammaBlue, 4)
9911     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsGammaBlue, 64)
9912     TEST_FIELD_SIZE  (LOGCOLORSPACEA, lcsFilename, 260)
9913     TEST_FIELD_ALIGN (LOGCOLORSPACEA, lcsFilename, 1)
9914     TEST_FIELD_OFFSET(LOGCOLORSPACEA, lcsFilename, 68)
9915 }
9916
9917 static void test_pack_LOGCOLORSPACEW(void)
9918 {
9919     /* LOGCOLORSPACEW */
9920     TEST_TYPE_SIZE   (LOGCOLORSPACEW, 588)
9921     TEST_TYPE_ALIGN  (LOGCOLORSPACEW, 4)
9922     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsSignature, 4)
9923     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsSignature, 4)
9924     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsSignature, 0)
9925     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsVersion, 4)
9926     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsVersion, 4)
9927     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsVersion, 4)
9928     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsSize, 4)
9929     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsSize, 4)
9930     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsSize, 8)
9931     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsCSType, 4)
9932     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsCSType, 4)
9933     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsCSType, 12)
9934     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsIntent, 4)
9935     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsIntent, 4)
9936     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsIntent, 16)
9937     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsEndpoints, 36)
9938     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsEndpoints, 4)
9939     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsEndpoints, 20)
9940     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsGammaRed, 4)
9941     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsGammaRed, 4)
9942     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsGammaRed, 56)
9943     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsGammaGreen, 4)
9944     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsGammaGreen, 4)
9945     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsGammaGreen, 60)
9946     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsGammaBlue, 4)
9947     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsGammaBlue, 4)
9948     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsGammaBlue, 64)
9949     TEST_FIELD_SIZE  (LOGCOLORSPACEW, lcsFilename, 520)
9950     TEST_FIELD_ALIGN (LOGCOLORSPACEW, lcsFilename, 2)
9951     TEST_FIELD_OFFSET(LOGCOLORSPACEW, lcsFilename, 68)
9952 }
9953
9954 static void test_pack_LOGFONTA(void)
9955 {
9956     /* LOGFONTA */
9957     TEST_TYPE_SIZE   (LOGFONTA, 60)
9958     TEST_TYPE_ALIGN  (LOGFONTA, 4)
9959     TEST_FIELD_SIZE  (LOGFONTA, lfHeight, 4)
9960     TEST_FIELD_ALIGN (LOGFONTA, lfHeight, 4)
9961     TEST_FIELD_OFFSET(LOGFONTA, lfHeight, 0)
9962     TEST_FIELD_SIZE  (LOGFONTA, lfWidth, 4)
9963     TEST_FIELD_ALIGN (LOGFONTA, lfWidth, 4)
9964     TEST_FIELD_OFFSET(LOGFONTA, lfWidth, 4)
9965     TEST_FIELD_SIZE  (LOGFONTA, lfEscapement, 4)
9966     TEST_FIELD_ALIGN (LOGFONTA, lfEscapement, 4)
9967     TEST_FIELD_OFFSET(LOGFONTA, lfEscapement, 8)
9968     TEST_FIELD_SIZE  (LOGFONTA, lfOrientation, 4)
9969     TEST_FIELD_ALIGN (LOGFONTA, lfOrientation, 4)
9970     TEST_FIELD_OFFSET(LOGFONTA, lfOrientation, 12)
9971     TEST_FIELD_SIZE  (LOGFONTA, lfWeight, 4)
9972     TEST_FIELD_ALIGN (LOGFONTA, lfWeight, 4)
9973     TEST_FIELD_OFFSET(LOGFONTA, lfWeight, 16)
9974     TEST_FIELD_SIZE  (LOGFONTA, lfItalic, 1)
9975     TEST_FIELD_ALIGN (LOGFONTA, lfItalic, 1)
9976     TEST_FIELD_OFFSET(LOGFONTA, lfItalic, 20)
9977     TEST_FIELD_SIZE  (LOGFONTA, lfUnderline, 1)
9978     TEST_FIELD_ALIGN (LOGFONTA, lfUnderline, 1)
9979     TEST_FIELD_OFFSET(LOGFONTA, lfUnderline, 21)
9980     TEST_FIELD_SIZE  (LOGFONTA, lfStrikeOut, 1)
9981     TEST_FIELD_ALIGN (LOGFONTA, lfStrikeOut, 1)
9982     TEST_FIELD_OFFSET(LOGFONTA, lfStrikeOut, 22)
9983     TEST_FIELD_SIZE  (LOGFONTA, lfCharSet, 1)
9984     TEST_FIELD_ALIGN (LOGFONTA, lfCharSet, 1)
9985     TEST_FIELD_OFFSET(LOGFONTA, lfCharSet, 23)
9986     TEST_FIELD_SIZE  (LOGFONTA, lfOutPrecision, 1)
9987     TEST_FIELD_ALIGN (LOGFONTA, lfOutPrecision, 1)
9988     TEST_FIELD_OFFSET(LOGFONTA, lfOutPrecision, 24)
9989     TEST_FIELD_SIZE  (LOGFONTA, lfClipPrecision, 1)
9990     TEST_FIELD_ALIGN (LOGFONTA, lfClipPrecision, 1)
9991     TEST_FIELD_OFFSET(LOGFONTA, lfClipPrecision, 25)
9992     TEST_FIELD_SIZE  (LOGFONTA, lfQuality, 1)
9993     TEST_FIELD_ALIGN (LOGFONTA, lfQuality, 1)
9994     TEST_FIELD_OFFSET(LOGFONTA, lfQuality, 26)
9995     TEST_FIELD_SIZE  (LOGFONTA, lfPitchAndFamily, 1)
9996     TEST_FIELD_ALIGN (LOGFONTA, lfPitchAndFamily, 1)
9997     TEST_FIELD_OFFSET(LOGFONTA, lfPitchAndFamily, 27)
9998     TEST_FIELD_SIZE  (LOGFONTA, lfFaceName, 32)
9999     TEST_FIELD_ALIGN (LOGFONTA, lfFaceName, 1)
10000     TEST_FIELD_OFFSET(LOGFONTA, lfFaceName, 28)
10001 }
10002
10003 static void test_pack_LOGFONTW(void)
10004 {
10005     /* LOGFONTW */
10006     TEST_TYPE_SIZE   (LOGFONTW, 92)
10007     TEST_TYPE_ALIGN  (LOGFONTW, 4)
10008     TEST_FIELD_SIZE  (LOGFONTW, lfHeight, 4)
10009     TEST_FIELD_ALIGN (LOGFONTW, lfHeight, 4)
10010     TEST_FIELD_OFFSET(LOGFONTW, lfHeight, 0)
10011     TEST_FIELD_SIZE  (LOGFONTW, lfWidth, 4)
10012     TEST_FIELD_ALIGN (LOGFONTW, lfWidth, 4)
10013     TEST_FIELD_OFFSET(LOGFONTW, lfWidth, 4)
10014     TEST_FIELD_SIZE  (LOGFONTW, lfEscapement, 4)
10015     TEST_FIELD_ALIGN (LOGFONTW, lfEscapement, 4)
10016     TEST_FIELD_OFFSET(LOGFONTW, lfEscapement, 8)
10017     TEST_FIELD_SIZE  (LOGFONTW, lfOrientation, 4)
10018     TEST_FIELD_ALIGN (LOGFONTW, lfOrientation, 4)
10019     TEST_FIELD_OFFSET(LOGFONTW, lfOrientation, 12)
10020     TEST_FIELD_SIZE  (LOGFONTW, lfWeight, 4)
10021     TEST_FIELD_ALIGN (LOGFONTW, lfWeight, 4)
10022     TEST_FIELD_OFFSET(LOGFONTW, lfWeight, 16)
10023     TEST_FIELD_SIZE  (LOGFONTW, lfItalic, 1)
10024     TEST_FIELD_ALIGN (LOGFONTW, lfItalic, 1)
10025     TEST_FIELD_OFFSET(LOGFONTW, lfItalic, 20)
10026     TEST_FIELD_SIZE  (LOGFONTW, lfUnderline, 1)
10027     TEST_FIELD_ALIGN (LOGFONTW, lfUnderline, 1)
10028     TEST_FIELD_OFFSET(LOGFONTW, lfUnderline, 21)
10029     TEST_FIELD_SIZE  (LOGFONTW, lfStrikeOut, 1)
10030     TEST_FIELD_ALIGN (LOGFONTW, lfStrikeOut, 1)
10031     TEST_FIELD_OFFSET(LOGFONTW, lfStrikeOut, 22)
10032     TEST_FIELD_SIZE  (LOGFONTW, lfCharSet, 1)
10033     TEST_FIELD_ALIGN (LOGFONTW, lfCharSet, 1)
10034     TEST_FIELD_OFFSET(LOGFONTW, lfCharSet, 23)
10035     TEST_FIELD_SIZE  (LOGFONTW, lfOutPrecision, 1)
10036     TEST_FIELD_ALIGN (LOGFONTW, lfOutPrecision, 1)
10037     TEST_FIELD_OFFSET(LOGFONTW, lfOutPrecision, 24)
10038     TEST_FIELD_SIZE  (LOGFONTW, lfClipPrecision, 1)
10039     TEST_FIELD_ALIGN (LOGFONTW, lfClipPrecision, 1)
10040     TEST_FIELD_OFFSET(LOGFONTW, lfClipPrecision, 25)
10041     TEST_FIELD_SIZE  (LOGFONTW, lfQuality, 1)
10042     TEST_FIELD_ALIGN (LOGFONTW, lfQuality, 1)
10043     TEST_FIELD_OFFSET(LOGFONTW, lfQuality, 26)
10044     TEST_FIELD_SIZE  (LOGFONTW, lfPitchAndFamily, 1)
10045     TEST_FIELD_ALIGN (LOGFONTW, lfPitchAndFamily, 1)
10046     TEST_FIELD_OFFSET(LOGFONTW, lfPitchAndFamily, 27)
10047     TEST_FIELD_SIZE  (LOGFONTW, lfFaceName, 64)
10048     TEST_FIELD_ALIGN (LOGFONTW, lfFaceName, 2)
10049     TEST_FIELD_OFFSET(LOGFONTW, lfFaceName, 28)
10050 }
10051
10052 static void test_pack_LOGPEN(void)
10053 {
10054     /* LOGPEN */
10055     TEST_TYPE_SIZE   (LOGPEN, 16)
10056     TEST_TYPE_ALIGN  (LOGPEN, 4)
10057     TEST_FIELD_SIZE  (LOGPEN, lopnStyle, 4)
10058     TEST_FIELD_ALIGN (LOGPEN, lopnStyle, 4)
10059     TEST_FIELD_OFFSET(LOGPEN, lopnStyle, 0)
10060     TEST_FIELD_SIZE  (LOGPEN, lopnWidth, 8)
10061     TEST_FIELD_ALIGN (LOGPEN, lopnWidth, 4)
10062     TEST_FIELD_OFFSET(LOGPEN, lopnWidth, 4)
10063     TEST_FIELD_SIZE  (LOGPEN, lopnColor, 4)
10064     TEST_FIELD_ALIGN (LOGPEN, lopnColor, 4)
10065     TEST_FIELD_OFFSET(LOGPEN, lopnColor, 12)
10066 }
10067
10068 static void test_pack_LPABC(void)
10069 {
10070     /* LPABC */
10071     TEST_TYPE_SIZE   (LPABC, 4)
10072     TEST_TYPE_ALIGN  (LPABC, 4)
10073     TEST_TARGET_SIZE (LPABC, 12)
10074     TEST_TARGET_ALIGN(LPABC, 4)
10075 }
10076
10077 static void test_pack_LPABCFLOAT(void)
10078 {
10079     /* LPABCFLOAT */
10080     TEST_TYPE_SIZE   (LPABCFLOAT, 4)
10081     TEST_TYPE_ALIGN  (LPABCFLOAT, 4)
10082     TEST_TARGET_SIZE (LPABCFLOAT, 12)
10083     TEST_TARGET_ALIGN(LPABCFLOAT, 4)
10084 }
10085
10086 static void test_pack_LPBITMAP(void)
10087 {
10088     /* LPBITMAP */
10089     TEST_TYPE_SIZE   (LPBITMAP, 4)
10090     TEST_TYPE_ALIGN  (LPBITMAP, 4)
10091     TEST_TARGET_SIZE (LPBITMAP, 24)
10092     TEST_TARGET_ALIGN(LPBITMAP, 4)
10093 }
10094
10095 static void test_pack_LPBITMAPCOREHEADER(void)
10096 {
10097     /* LPBITMAPCOREHEADER */
10098     TEST_TYPE_SIZE   (LPBITMAPCOREHEADER, 4)
10099     TEST_TYPE_ALIGN  (LPBITMAPCOREHEADER, 4)
10100     TEST_TARGET_SIZE (LPBITMAPCOREHEADER, 12)
10101     TEST_TARGET_ALIGN(LPBITMAPCOREHEADER, 4)
10102 }
10103
10104 static void test_pack_LPBITMAPCOREINFO(void)
10105 {
10106     /* LPBITMAPCOREINFO */
10107     TEST_TYPE_SIZE   (LPBITMAPCOREINFO, 4)
10108     TEST_TYPE_ALIGN  (LPBITMAPCOREINFO, 4)
10109     TEST_TARGET_SIZE (LPBITMAPCOREINFO, 16)
10110     TEST_TARGET_ALIGN(LPBITMAPCOREINFO, 4)
10111 }
10112
10113 static void test_pack_LPBITMAPFILEHEADER(void)
10114 {
10115     /* LPBITMAPFILEHEADER */
10116     TEST_TYPE_SIZE   (LPBITMAPFILEHEADER, 4)
10117     TEST_TYPE_ALIGN  (LPBITMAPFILEHEADER, 4)
10118     TEST_TARGET_SIZE (LPBITMAPFILEHEADER, 14)
10119     TEST_TARGET_ALIGN(LPBITMAPFILEHEADER, 2)
10120 }
10121
10122 static void test_pack_LPBITMAPINFO(void)
10123 {
10124     /* LPBITMAPINFO */
10125     TEST_TYPE_SIZE   (LPBITMAPINFO, 4)
10126     TEST_TYPE_ALIGN  (LPBITMAPINFO, 4)
10127     TEST_TARGET_SIZE (LPBITMAPINFO, 44)
10128     TEST_TARGET_ALIGN(LPBITMAPINFO, 4)
10129 }
10130
10131 static void test_pack_LPBITMAPINFOHEADER(void)
10132 {
10133     /* LPBITMAPINFOHEADER */
10134     TEST_TYPE_SIZE   (LPBITMAPINFOHEADER, 4)
10135     TEST_TYPE_ALIGN  (LPBITMAPINFOHEADER, 4)
10136     TEST_TARGET_SIZE (LPBITMAPINFOHEADER, 40)
10137     TEST_TARGET_ALIGN(LPBITMAPINFOHEADER, 4)
10138 }
10139
10140 static void test_pack_LPBITMAPV5HEADER(void)
10141 {
10142     /* LPBITMAPV5HEADER */
10143     TEST_TYPE_SIZE   (LPBITMAPV5HEADER, 4)
10144     TEST_TYPE_ALIGN  (LPBITMAPV5HEADER, 4)
10145     TEST_TARGET_SIZE (LPBITMAPV5HEADER, 124)
10146     TEST_TARGET_ALIGN(LPBITMAPV5HEADER, 4)
10147 }
10148
10149 static void test_pack_LPCHARSETINFO(void)
10150 {
10151     /* LPCHARSETINFO */
10152     TEST_TYPE_SIZE   (LPCHARSETINFO, 4)
10153     TEST_TYPE_ALIGN  (LPCHARSETINFO, 4)
10154     TEST_TARGET_SIZE (LPCHARSETINFO, 32)
10155     TEST_TARGET_ALIGN(LPCHARSETINFO, 4)
10156 }
10157
10158 static void test_pack_LPCIEXYZ(void)
10159 {
10160     /* LPCIEXYZ */
10161     TEST_TYPE_SIZE   (LPCIEXYZ, 4)
10162     TEST_TYPE_ALIGN  (LPCIEXYZ, 4)
10163     TEST_TARGET_SIZE (LPCIEXYZ, 12)
10164     TEST_TARGET_ALIGN(LPCIEXYZ, 4)
10165 }
10166
10167 static void test_pack_LPCIEXYZTRIPLE(void)
10168 {
10169     /* LPCIEXYZTRIPLE */
10170     TEST_TYPE_SIZE   (LPCIEXYZTRIPLE, 4)
10171     TEST_TYPE_ALIGN  (LPCIEXYZTRIPLE, 4)
10172     TEST_TARGET_SIZE (LPCIEXYZTRIPLE, 36)
10173     TEST_TARGET_ALIGN(LPCIEXYZTRIPLE, 4)
10174 }
10175
10176 static void test_pack_LPCOLORADJUSTMENT(void)
10177 {
10178     /* LPCOLORADJUSTMENT */
10179     TEST_TYPE_SIZE   (LPCOLORADJUSTMENT, 4)
10180     TEST_TYPE_ALIGN  (LPCOLORADJUSTMENT, 4)
10181     TEST_TARGET_SIZE (LPCOLORADJUSTMENT, 24)
10182     TEST_TARGET_ALIGN(LPCOLORADJUSTMENT, 2)
10183 }
10184
10185 static void test_pack_LPDEVMODEA(void)
10186 {
10187     /* LPDEVMODEA */
10188     TEST_TYPE_SIZE   (LPDEVMODEA, 4)
10189     TEST_TYPE_ALIGN  (LPDEVMODEA, 4)
10190 }
10191
10192 static void test_pack_LPDEVMODEW(void)
10193 {
10194     /* LPDEVMODEW */
10195     TEST_TYPE_SIZE   (LPDEVMODEW, 4)
10196     TEST_TYPE_ALIGN  (LPDEVMODEW, 4)
10197 }
10198
10199 static void test_pack_LPDIBSECTION(void)
10200 {
10201     /* LPDIBSECTION */
10202     TEST_TYPE_SIZE   (LPDIBSECTION, 4)
10203     TEST_TYPE_ALIGN  (LPDIBSECTION, 4)
10204     TEST_TARGET_SIZE (LPDIBSECTION, 84)
10205     TEST_TARGET_ALIGN(LPDIBSECTION, 4)
10206 }
10207
10208 static void test_pack_LPDISPLAY_DEVICEA(void)
10209 {
10210     /* LPDISPLAY_DEVICEA */
10211     TEST_TYPE_SIZE   (LPDISPLAY_DEVICEA, 4)
10212     TEST_TYPE_ALIGN  (LPDISPLAY_DEVICEA, 4)
10213     TEST_TARGET_SIZE (LPDISPLAY_DEVICEA, 424)
10214     TEST_TARGET_ALIGN(LPDISPLAY_DEVICEA, 4)
10215 }
10216
10217 static void test_pack_LPDISPLAY_DEVICEW(void)
10218 {
10219     /* LPDISPLAY_DEVICEW */
10220     TEST_TYPE_SIZE   (LPDISPLAY_DEVICEW, 4)
10221     TEST_TYPE_ALIGN  (LPDISPLAY_DEVICEW, 4)
10222     TEST_TARGET_SIZE (LPDISPLAY_DEVICEW, 840)
10223     TEST_TARGET_ALIGN(LPDISPLAY_DEVICEW, 4)
10224 }
10225
10226 static void test_pack_LPDOCINFOA(void)
10227 {
10228     /* LPDOCINFOA */
10229     TEST_TYPE_SIZE   (LPDOCINFOA, 4)
10230     TEST_TYPE_ALIGN  (LPDOCINFOA, 4)
10231     TEST_TARGET_SIZE (LPDOCINFOA, 20)
10232     TEST_TARGET_ALIGN(LPDOCINFOA, 4)
10233 }
10234
10235 static void test_pack_LPDOCINFOW(void)
10236 {
10237     /* LPDOCINFOW */
10238     TEST_TYPE_SIZE   (LPDOCINFOW, 4)
10239     TEST_TYPE_ALIGN  (LPDOCINFOW, 4)
10240     TEST_TARGET_SIZE (LPDOCINFOW, 20)
10241     TEST_TARGET_ALIGN(LPDOCINFOW, 4)
10242 }
10243
10244 static void test_pack_LPENHMETAHEADER(void)
10245 {
10246     /* LPENHMETAHEADER */
10247     TEST_TYPE_SIZE   (LPENHMETAHEADER, 4)
10248     TEST_TYPE_ALIGN  (LPENHMETAHEADER, 4)
10249     TEST_TARGET_SIZE (LPENHMETAHEADER, 108)
10250     TEST_TARGET_ALIGN(LPENHMETAHEADER, 4)
10251 }
10252
10253 static void test_pack_LPENHMETARECORD(void)
10254 {
10255     /* LPENHMETARECORD */
10256     TEST_TYPE_SIZE   (LPENHMETARECORD, 4)
10257     TEST_TYPE_ALIGN  (LPENHMETARECORD, 4)
10258     TEST_TARGET_SIZE (LPENHMETARECORD, 12)
10259     TEST_TARGET_ALIGN(LPENHMETARECORD, 4)
10260 }
10261
10262 static void test_pack_LPENUMLOGFONTA(void)
10263 {
10264     /* LPENUMLOGFONTA */
10265     TEST_TYPE_SIZE   (LPENUMLOGFONTA, 4)
10266     TEST_TYPE_ALIGN  (LPENUMLOGFONTA, 4)
10267     TEST_TARGET_SIZE (LPENUMLOGFONTA, 156)
10268     TEST_TARGET_ALIGN(LPENUMLOGFONTA, 4)
10269 }
10270
10271 static void test_pack_LPENUMLOGFONTEXA(void)
10272 {
10273     /* LPENUMLOGFONTEXA */
10274     TEST_TYPE_SIZE   (LPENUMLOGFONTEXA, 4)
10275     TEST_TYPE_ALIGN  (LPENUMLOGFONTEXA, 4)
10276     TEST_TARGET_SIZE (LPENUMLOGFONTEXA, 188)
10277     TEST_TARGET_ALIGN(LPENUMLOGFONTEXA, 4)
10278 }
10279
10280 static void test_pack_LPENUMLOGFONTEXW(void)
10281 {
10282     /* LPENUMLOGFONTEXW */
10283     TEST_TYPE_SIZE   (LPENUMLOGFONTEXW, 4)
10284     TEST_TYPE_ALIGN  (LPENUMLOGFONTEXW, 4)
10285     TEST_TARGET_SIZE (LPENUMLOGFONTEXW, 348)
10286     TEST_TARGET_ALIGN(LPENUMLOGFONTEXW, 4)
10287 }
10288
10289 static void test_pack_LPENUMLOGFONTW(void)
10290 {
10291     /* LPENUMLOGFONTW */
10292     TEST_TYPE_SIZE   (LPENUMLOGFONTW, 4)
10293     TEST_TYPE_ALIGN  (LPENUMLOGFONTW, 4)
10294     TEST_TARGET_SIZE (LPENUMLOGFONTW, 284)
10295     TEST_TARGET_ALIGN(LPENUMLOGFONTW, 4)
10296 }
10297
10298 static void test_pack_LPEXTLOGFONTA(void)
10299 {
10300     /* LPEXTLOGFONTA */
10301     TEST_TYPE_SIZE   (LPEXTLOGFONTA, 4)
10302     TEST_TYPE_ALIGN  (LPEXTLOGFONTA, 4)
10303     TEST_TARGET_SIZE (LPEXTLOGFONTA, 192)
10304     TEST_TARGET_ALIGN(LPEXTLOGFONTA, 4)
10305 }
10306
10307 static void test_pack_LPEXTLOGFONTW(void)
10308 {
10309     /* LPEXTLOGFONTW */
10310     TEST_TYPE_SIZE   (LPEXTLOGFONTW, 4)
10311     TEST_TYPE_ALIGN  (LPEXTLOGFONTW, 4)
10312     TEST_TARGET_SIZE (LPEXTLOGFONTW, 320)
10313     TEST_TARGET_ALIGN(LPEXTLOGFONTW, 4)
10314 }
10315
10316 static void test_pack_LPEXTLOGPEN(void)
10317 {
10318     /* LPEXTLOGPEN */
10319     TEST_TYPE_SIZE   (LPEXTLOGPEN, 4)
10320     TEST_TYPE_ALIGN  (LPEXTLOGPEN, 4)
10321     TEST_TARGET_SIZE (LPEXTLOGPEN, 28)
10322     TEST_TARGET_ALIGN(LPEXTLOGPEN, 4)
10323 }
10324
10325 static void test_pack_LPFONTSIGNATURE(void)
10326 {
10327     /* LPFONTSIGNATURE */
10328     TEST_TYPE_SIZE   (LPFONTSIGNATURE, 4)
10329     TEST_TYPE_ALIGN  (LPFONTSIGNATURE, 4)
10330     TEST_TARGET_SIZE (LPFONTSIGNATURE, 24)
10331     TEST_TARGET_ALIGN(LPFONTSIGNATURE, 4)
10332 }
10333
10334 static void test_pack_LPGCP_RESULTSA(void)
10335 {
10336     /* LPGCP_RESULTSA */
10337     TEST_TYPE_SIZE   (LPGCP_RESULTSA, 4)
10338     TEST_TYPE_ALIGN  (LPGCP_RESULTSA, 4)
10339     TEST_TARGET_SIZE (LPGCP_RESULTSA, 36)
10340     TEST_TARGET_ALIGN(LPGCP_RESULTSA, 4)
10341 }
10342
10343 static void test_pack_LPGCP_RESULTSW(void)
10344 {
10345     /* LPGCP_RESULTSW */
10346     TEST_TYPE_SIZE   (LPGCP_RESULTSW, 4)
10347     TEST_TYPE_ALIGN  (LPGCP_RESULTSW, 4)
10348     TEST_TARGET_SIZE (LPGCP_RESULTSW, 36)
10349     TEST_TARGET_ALIGN(LPGCP_RESULTSW, 4)
10350 }
10351
10352 static void test_pack_LPGLYPHMETRICS(void)
10353 {
10354     /* LPGLYPHMETRICS */
10355     TEST_TYPE_SIZE   (LPGLYPHMETRICS, 4)
10356     TEST_TYPE_ALIGN  (LPGLYPHMETRICS, 4)
10357     TEST_TARGET_SIZE (LPGLYPHMETRICS, 20)
10358     TEST_TARGET_ALIGN(LPGLYPHMETRICS, 4)
10359 }
10360
10361 static void test_pack_LPGLYPHMETRICSFLOAT(void)
10362 {
10363     /* LPGLYPHMETRICSFLOAT */
10364     TEST_TYPE_SIZE   (LPGLYPHMETRICSFLOAT, 4)
10365     TEST_TYPE_ALIGN  (LPGLYPHMETRICSFLOAT, 4)
10366     TEST_TARGET_SIZE (LPGLYPHMETRICSFLOAT, 24)
10367     TEST_TARGET_ALIGN(LPGLYPHMETRICSFLOAT, 4)
10368 }
10369
10370 static void test_pack_LPGRADIENT_RECT(void)
10371 {
10372     /* LPGRADIENT_RECT */
10373     TEST_TYPE_SIZE   (LPGRADIENT_RECT, 4)
10374     TEST_TYPE_ALIGN  (LPGRADIENT_RECT, 4)
10375     TEST_TARGET_SIZE (LPGRADIENT_RECT, 8)
10376     TEST_TARGET_ALIGN(LPGRADIENT_RECT, 4)
10377 }
10378
10379 static void test_pack_LPGRADIENT_TRIANGLE(void)
10380 {
10381     /* LPGRADIENT_TRIANGLE */
10382     TEST_TYPE_SIZE   (LPGRADIENT_TRIANGLE, 4)
10383     TEST_TYPE_ALIGN  (LPGRADIENT_TRIANGLE, 4)
10384     TEST_TARGET_SIZE (LPGRADIENT_TRIANGLE, 12)
10385     TEST_TARGET_ALIGN(LPGRADIENT_TRIANGLE, 4)
10386 }
10387
10388 static void test_pack_LPHANDLETABLE(void)
10389 {
10390     /* LPHANDLETABLE */
10391     TEST_TYPE_SIZE   (LPHANDLETABLE, 4)
10392     TEST_TYPE_ALIGN  (LPHANDLETABLE, 4)
10393     TEST_TARGET_SIZE (LPHANDLETABLE, 4)
10394     TEST_TARGET_ALIGN(LPHANDLETABLE, 4)
10395 }
10396
10397 static void test_pack_LPKERNINGPAIR(void)
10398 {
10399     /* LPKERNINGPAIR */
10400     TEST_TYPE_SIZE   (LPKERNINGPAIR, 4)
10401     TEST_TYPE_ALIGN  (LPKERNINGPAIR, 4)
10402     TEST_TARGET_SIZE (LPKERNINGPAIR, 8)
10403     TEST_TARGET_ALIGN(LPKERNINGPAIR, 4)
10404 }
10405
10406 static void test_pack_LPLAYERPLANEDESCRIPTOR(void)
10407 {
10408     /* LPLAYERPLANEDESCRIPTOR */
10409     TEST_TYPE_SIZE   (LPLAYERPLANEDESCRIPTOR, 4)
10410     TEST_TYPE_ALIGN  (LPLAYERPLANEDESCRIPTOR, 4)
10411     TEST_TARGET_SIZE (LPLAYERPLANEDESCRIPTOR, 32)
10412     TEST_TARGET_ALIGN(LPLAYERPLANEDESCRIPTOR, 4)
10413 }
10414
10415 static void test_pack_LPLOCALESIGNATURE(void)
10416 {
10417     /* LPLOCALESIGNATURE */
10418     TEST_TYPE_SIZE   (LPLOCALESIGNATURE, 4)
10419     TEST_TYPE_ALIGN  (LPLOCALESIGNATURE, 4)
10420     TEST_TARGET_SIZE (LPLOCALESIGNATURE, 32)
10421     TEST_TARGET_ALIGN(LPLOCALESIGNATURE, 4)
10422 }
10423
10424 static void test_pack_LPLOGBRUSH(void)
10425 {
10426     /* LPLOGBRUSH */
10427     TEST_TYPE_SIZE   (LPLOGBRUSH, 4)
10428     TEST_TYPE_ALIGN  (LPLOGBRUSH, 4)
10429     TEST_TARGET_SIZE (LPLOGBRUSH, 12)
10430     TEST_TARGET_ALIGN(LPLOGBRUSH, 4)
10431 }
10432
10433 static void test_pack_LPLOGCOLORSPACEA(void)
10434 {
10435     /* LPLOGCOLORSPACEA */
10436     TEST_TYPE_SIZE   (LPLOGCOLORSPACEA, 4)
10437     TEST_TYPE_ALIGN  (LPLOGCOLORSPACEA, 4)
10438     TEST_TARGET_SIZE (LPLOGCOLORSPACEA, 328)
10439     TEST_TARGET_ALIGN(LPLOGCOLORSPACEA, 4)
10440 }
10441
10442 static void test_pack_LPLOGCOLORSPACEW(void)
10443 {
10444     /* LPLOGCOLORSPACEW */
10445     TEST_TYPE_SIZE   (LPLOGCOLORSPACEW, 4)
10446     TEST_TYPE_ALIGN  (LPLOGCOLORSPACEW, 4)
10447     TEST_TARGET_SIZE (LPLOGCOLORSPACEW, 588)
10448     TEST_TARGET_ALIGN(LPLOGCOLORSPACEW, 4)
10449 }
10450
10451 static void test_pack_LPLOGFONTA(void)
10452 {
10453     /* LPLOGFONTA */
10454     TEST_TYPE_SIZE   (LPLOGFONTA, 4)
10455     TEST_TYPE_ALIGN  (LPLOGFONTA, 4)
10456     TEST_TARGET_SIZE (LPLOGFONTA, 60)
10457     TEST_TARGET_ALIGN(LPLOGFONTA, 4)
10458 }
10459
10460 static void test_pack_LPLOGFONTW(void)
10461 {
10462     /* LPLOGFONTW */
10463     TEST_TYPE_SIZE   (LPLOGFONTW, 4)
10464     TEST_TYPE_ALIGN  (LPLOGFONTW, 4)
10465     TEST_TARGET_SIZE (LPLOGFONTW, 92)
10466     TEST_TARGET_ALIGN(LPLOGFONTW, 4)
10467 }
10468
10469 static void test_pack_LPLOGPEN(void)
10470 {
10471     /* LPLOGPEN */
10472     TEST_TYPE_SIZE   (LPLOGPEN, 4)
10473     TEST_TYPE_ALIGN  (LPLOGPEN, 4)
10474     TEST_TARGET_SIZE (LPLOGPEN, 16)
10475     TEST_TARGET_ALIGN(LPLOGPEN, 4)
10476 }
10477
10478 static void test_pack_LPMAT2(void)
10479 {
10480     /* LPMAT2 */
10481     TEST_TYPE_SIZE   (LPMAT2, 4)
10482     TEST_TYPE_ALIGN  (LPMAT2, 4)
10483     TEST_TARGET_SIZE (LPMAT2, 16)
10484     TEST_TARGET_ALIGN(LPMAT2, 2)
10485 }
10486
10487 static void test_pack_LPMETAFILEPICT(void)
10488 {
10489     /* LPMETAFILEPICT */
10490     TEST_TYPE_SIZE   (LPMETAFILEPICT, 4)
10491     TEST_TYPE_ALIGN  (LPMETAFILEPICT, 4)
10492     TEST_TARGET_SIZE (LPMETAFILEPICT, 16)
10493     TEST_TARGET_ALIGN(LPMETAFILEPICT, 4)
10494 }
10495
10496 static void test_pack_LPMETAHEADER(void)
10497 {
10498     /* LPMETAHEADER */
10499     TEST_TYPE_SIZE   (LPMETAHEADER, 4)
10500     TEST_TYPE_ALIGN  (LPMETAHEADER, 4)
10501     TEST_TARGET_SIZE (LPMETAHEADER, 18)
10502     TEST_TARGET_ALIGN(LPMETAHEADER, 2)
10503 }
10504
10505 static void test_pack_LPMETARECORD(void)
10506 {
10507     /* LPMETARECORD */
10508     TEST_TYPE_SIZE   (LPMETARECORD, 4)
10509     TEST_TYPE_ALIGN  (LPMETARECORD, 4)
10510     TEST_TARGET_SIZE (LPMETARECORD, 8)
10511     TEST_TARGET_ALIGN(LPMETARECORD, 4)
10512 }
10513
10514 static void test_pack_LPNEWTEXTMETRICA(void)
10515 {
10516     /* LPNEWTEXTMETRICA */
10517     TEST_TYPE_SIZE   (LPNEWTEXTMETRICA, 4)
10518     TEST_TYPE_ALIGN  (LPNEWTEXTMETRICA, 4)
10519     TEST_TARGET_SIZE (LPNEWTEXTMETRICA, 72)
10520     TEST_TARGET_ALIGN(LPNEWTEXTMETRICA, 4)
10521 }
10522
10523 static void test_pack_LPNEWTEXTMETRICW(void)
10524 {
10525     /* LPNEWTEXTMETRICW */
10526     TEST_TYPE_SIZE   (LPNEWTEXTMETRICW, 4)
10527     TEST_TYPE_ALIGN  (LPNEWTEXTMETRICW, 4)
10528     TEST_TARGET_SIZE (LPNEWTEXTMETRICW, 76)
10529     TEST_TARGET_ALIGN(LPNEWTEXTMETRICW, 4)
10530 }
10531
10532 static void test_pack_LPOUTLINETEXTMETRICA(void)
10533 {
10534     /* LPOUTLINETEXTMETRICA */
10535     TEST_TYPE_SIZE   (LPOUTLINETEXTMETRICA, 4)
10536     TEST_TYPE_ALIGN  (LPOUTLINETEXTMETRICA, 4)
10537     TEST_TARGET_SIZE (LPOUTLINETEXTMETRICA, 212)
10538     TEST_TARGET_ALIGN(LPOUTLINETEXTMETRICA, 4)
10539 }
10540
10541 static void test_pack_LPOUTLINETEXTMETRICW(void)
10542 {
10543     /* LPOUTLINETEXTMETRICW */
10544     TEST_TYPE_SIZE   (LPOUTLINETEXTMETRICW, 4)
10545     TEST_TYPE_ALIGN  (LPOUTLINETEXTMETRICW, 4)
10546     TEST_TARGET_SIZE (LPOUTLINETEXTMETRICW, 216)
10547     TEST_TARGET_ALIGN(LPOUTLINETEXTMETRICW, 4)
10548 }
10549
10550 static void test_pack_LPPANOSE(void)
10551 {
10552     /* LPPANOSE */
10553     TEST_TYPE_SIZE   (LPPANOSE, 4)
10554     TEST_TYPE_ALIGN  (LPPANOSE, 4)
10555     TEST_TARGET_SIZE (LPPANOSE, 10)
10556     TEST_TARGET_ALIGN(LPPANOSE, 1)
10557 }
10558
10559 static void test_pack_LPPELARRAY(void)
10560 {
10561     /* LPPELARRAY */
10562     TEST_TYPE_SIZE   (LPPELARRAY, 4)
10563     TEST_TYPE_ALIGN  (LPPELARRAY, 4)
10564     TEST_TARGET_SIZE (LPPELARRAY, 20)
10565     TEST_TARGET_ALIGN(LPPELARRAY, 4)
10566 }
10567
10568 static void test_pack_LPPIXELFORMATDESCRIPTOR(void)
10569 {
10570     /* LPPIXELFORMATDESCRIPTOR */
10571     TEST_TYPE_SIZE   (LPPIXELFORMATDESCRIPTOR, 4)
10572     TEST_TYPE_ALIGN  (LPPIXELFORMATDESCRIPTOR, 4)
10573     TEST_TARGET_SIZE (LPPIXELFORMATDESCRIPTOR, 40)
10574     TEST_TARGET_ALIGN(LPPIXELFORMATDESCRIPTOR, 4)
10575 }
10576
10577 static void test_pack_LPPOINTFX(void)
10578 {
10579     /* LPPOINTFX */
10580     TEST_TYPE_SIZE   (LPPOINTFX, 4)
10581     TEST_TYPE_ALIGN  (LPPOINTFX, 4)
10582     TEST_TARGET_SIZE (LPPOINTFX, 8)
10583     TEST_TARGET_ALIGN(LPPOINTFX, 2)
10584 }
10585
10586 static void test_pack_LPPOLYTEXTA(void)
10587 {
10588     /* LPPOLYTEXTA */
10589     TEST_TYPE_SIZE   (LPPOLYTEXTA, 4)
10590     TEST_TYPE_ALIGN  (LPPOLYTEXTA, 4)
10591     TEST_TARGET_SIZE (LPPOLYTEXTA, 40)
10592     TEST_TARGET_ALIGN(LPPOLYTEXTA, 4)
10593 }
10594
10595 static void test_pack_LPPOLYTEXTW(void)
10596 {
10597     /* LPPOLYTEXTW */
10598     TEST_TYPE_SIZE   (LPPOLYTEXTW, 4)
10599     TEST_TYPE_ALIGN  (LPPOLYTEXTW, 4)
10600     TEST_TARGET_SIZE (LPPOLYTEXTW, 40)
10601     TEST_TARGET_ALIGN(LPPOLYTEXTW, 4)
10602 }
10603
10604 static void test_pack_LPRASTERIZER_STATUS(void)
10605 {
10606     /* LPRASTERIZER_STATUS */
10607     TEST_TYPE_SIZE   (LPRASTERIZER_STATUS, 4)
10608     TEST_TYPE_ALIGN  (LPRASTERIZER_STATUS, 4)
10609     TEST_TARGET_SIZE (LPRASTERIZER_STATUS, 6)
10610     TEST_TARGET_ALIGN(LPRASTERIZER_STATUS, 2)
10611 }
10612
10613 static void test_pack_LPRGBQUAD(void)
10614 {
10615     /* LPRGBQUAD */
10616     TEST_TYPE_SIZE   (LPRGBQUAD, 4)
10617     TEST_TYPE_ALIGN  (LPRGBQUAD, 4)
10618     TEST_TARGET_SIZE (LPRGBQUAD, 4)
10619     TEST_TARGET_ALIGN(LPRGBQUAD, 1)
10620 }
10621
10622 static void test_pack_LPRGNDATA(void)
10623 {
10624     /* LPRGNDATA */
10625     TEST_TYPE_SIZE   (LPRGNDATA, 4)
10626     TEST_TYPE_ALIGN  (LPRGNDATA, 4)
10627     TEST_TARGET_SIZE (LPRGNDATA, 36)
10628     TEST_TARGET_ALIGN(LPRGNDATA, 4)
10629 }
10630
10631 static void test_pack_LPTEXTMETRICA(void)
10632 {
10633     /* LPTEXTMETRICA */
10634     TEST_TYPE_SIZE   (LPTEXTMETRICA, 4)
10635     TEST_TYPE_ALIGN  (LPTEXTMETRICA, 4)
10636     TEST_TARGET_SIZE (LPTEXTMETRICA, 56)
10637     TEST_TARGET_ALIGN(LPTEXTMETRICA, 4)
10638 }
10639
10640 static void test_pack_LPTEXTMETRICW(void)
10641 {
10642     /* LPTEXTMETRICW */
10643     TEST_TYPE_SIZE   (LPTEXTMETRICW, 4)
10644     TEST_TYPE_ALIGN  (LPTEXTMETRICW, 4)
10645     TEST_TARGET_SIZE (LPTEXTMETRICW, 60)
10646     TEST_TARGET_ALIGN(LPTEXTMETRICW, 4)
10647 }
10648
10649 static void test_pack_LPTRIVERTEX(void)
10650 {
10651     /* LPTRIVERTEX */
10652     TEST_TYPE_SIZE   (LPTRIVERTEX, 4)
10653     TEST_TYPE_ALIGN  (LPTRIVERTEX, 4)
10654     TEST_TARGET_SIZE (LPTRIVERTEX, 16)
10655     TEST_TARGET_ALIGN(LPTRIVERTEX, 4)
10656 }
10657
10658 static void test_pack_LPTTPOLYCURVE(void)
10659 {
10660     /* LPTTPOLYCURVE */
10661     TEST_TYPE_SIZE   (LPTTPOLYCURVE, 4)
10662     TEST_TYPE_ALIGN  (LPTTPOLYCURVE, 4)
10663     TEST_TARGET_SIZE (LPTTPOLYCURVE, 12)
10664     TEST_TARGET_ALIGN(LPTTPOLYCURVE, 2)
10665 }
10666
10667 static void test_pack_LPTTPOLYGONHEADER(void)
10668 {
10669     /* LPTTPOLYGONHEADER */
10670     TEST_TYPE_SIZE   (LPTTPOLYGONHEADER, 4)
10671     TEST_TYPE_ALIGN  (LPTTPOLYGONHEADER, 4)
10672     TEST_TARGET_SIZE (LPTTPOLYGONHEADER, 16)
10673     TEST_TARGET_ALIGN(LPTTPOLYGONHEADER, 4)
10674 }
10675
10676 static void test_pack_LPXFORM(void)
10677 {
10678     /* LPXFORM */
10679     TEST_TYPE_SIZE   (LPXFORM, 4)
10680     TEST_TYPE_ALIGN  (LPXFORM, 4)
10681     TEST_TARGET_SIZE (LPXFORM, 24)
10682     TEST_TARGET_ALIGN(LPXFORM, 4)
10683 }
10684
10685 static void test_pack_MAT2(void)
10686 {
10687     /* MAT2 */
10688     TEST_TYPE_SIZE   (MAT2, 16)
10689     TEST_TYPE_ALIGN  (MAT2, 2)
10690     TEST_FIELD_SIZE  (MAT2, eM11, 4)
10691     TEST_FIELD_ALIGN (MAT2, eM11, 2)
10692     TEST_FIELD_OFFSET(MAT2, eM11, 0)
10693     TEST_FIELD_SIZE  (MAT2, eM12, 4)
10694     TEST_FIELD_ALIGN (MAT2, eM12, 2)
10695     TEST_FIELD_OFFSET(MAT2, eM12, 4)
10696     TEST_FIELD_SIZE  (MAT2, eM21, 4)
10697     TEST_FIELD_ALIGN (MAT2, eM21, 2)
10698     TEST_FIELD_OFFSET(MAT2, eM21, 8)
10699     TEST_FIELD_SIZE  (MAT2, eM22, 4)
10700     TEST_FIELD_ALIGN (MAT2, eM22, 2)
10701     TEST_FIELD_OFFSET(MAT2, eM22, 12)
10702 }
10703
10704 static void test_pack_METAFILEPICT(void)
10705 {
10706     /* METAFILEPICT */
10707     TEST_TYPE_SIZE   (METAFILEPICT, 16)
10708     TEST_TYPE_ALIGN  (METAFILEPICT, 4)
10709     TEST_FIELD_SIZE  (METAFILEPICT, mm, 4)
10710     TEST_FIELD_ALIGN (METAFILEPICT, mm, 4)
10711     TEST_FIELD_OFFSET(METAFILEPICT, mm, 0)
10712     TEST_FIELD_SIZE  (METAFILEPICT, xExt, 4)
10713     TEST_FIELD_ALIGN (METAFILEPICT, xExt, 4)
10714     TEST_FIELD_OFFSET(METAFILEPICT, xExt, 4)
10715     TEST_FIELD_SIZE  (METAFILEPICT, yExt, 4)
10716     TEST_FIELD_ALIGN (METAFILEPICT, yExt, 4)
10717     TEST_FIELD_OFFSET(METAFILEPICT, yExt, 8)
10718     TEST_FIELD_SIZE  (METAFILEPICT, hMF, 4)
10719     TEST_FIELD_ALIGN (METAFILEPICT, hMF, 4)
10720     TEST_FIELD_OFFSET(METAFILEPICT, hMF, 12)
10721 }
10722
10723 static void test_pack_METAHEADER(void)
10724 {
10725     /* METAHEADER (pack 2) */
10726     TEST_TYPE_SIZE   (METAHEADER, 18)
10727     TEST_TYPE_ALIGN  (METAHEADER, 2)
10728     TEST_FIELD_SIZE  (METAHEADER, mtType, 2)
10729     TEST_FIELD_ALIGN (METAHEADER, mtType, 2)
10730     TEST_FIELD_OFFSET(METAHEADER, mtType, 0)
10731     TEST_FIELD_SIZE  (METAHEADER, mtHeaderSize, 2)
10732     TEST_FIELD_ALIGN (METAHEADER, mtHeaderSize, 2)
10733     TEST_FIELD_OFFSET(METAHEADER, mtHeaderSize, 2)
10734     TEST_FIELD_SIZE  (METAHEADER, mtVersion, 2)
10735     TEST_FIELD_ALIGN (METAHEADER, mtVersion, 2)
10736     TEST_FIELD_OFFSET(METAHEADER, mtVersion, 4)
10737     TEST_FIELD_SIZE  (METAHEADER, mtSize, 4)
10738     TEST_FIELD_ALIGN (METAHEADER, mtSize, 2)
10739     TEST_FIELD_OFFSET(METAHEADER, mtSize, 6)
10740     TEST_FIELD_SIZE  (METAHEADER, mtNoObjects, 2)
10741     TEST_FIELD_ALIGN (METAHEADER, mtNoObjects, 2)
10742     TEST_FIELD_OFFSET(METAHEADER, mtNoObjects, 10)
10743     TEST_FIELD_SIZE  (METAHEADER, mtMaxRecord, 4)
10744     TEST_FIELD_ALIGN (METAHEADER, mtMaxRecord, 2)
10745     TEST_FIELD_OFFSET(METAHEADER, mtMaxRecord, 12)
10746     TEST_FIELD_SIZE  (METAHEADER, mtNoParameters, 2)
10747     TEST_FIELD_ALIGN (METAHEADER, mtNoParameters, 2)
10748     TEST_FIELD_OFFSET(METAHEADER, mtNoParameters, 16)
10749 }
10750
10751 static void test_pack_METARECORD(void)
10752 {
10753     /* METARECORD */
10754     TEST_TYPE_SIZE   (METARECORD, 8)
10755     TEST_TYPE_ALIGN  (METARECORD, 4)
10756     TEST_FIELD_SIZE  (METARECORD, rdSize, 4)
10757     TEST_FIELD_ALIGN (METARECORD, rdSize, 4)
10758     TEST_FIELD_OFFSET(METARECORD, rdSize, 0)
10759     TEST_FIELD_SIZE  (METARECORD, rdFunction, 2)
10760     TEST_FIELD_ALIGN (METARECORD, rdFunction, 2)
10761     TEST_FIELD_OFFSET(METARECORD, rdFunction, 4)
10762     TEST_FIELD_SIZE  (METARECORD, rdParm, 2)
10763     TEST_FIELD_ALIGN (METARECORD, rdParm, 2)
10764     TEST_FIELD_OFFSET(METARECORD, rdParm, 6)
10765 }
10766
10767 static void test_pack_MFENUMPROC(void)
10768 {
10769     /* MFENUMPROC */
10770     TEST_TYPE_SIZE   (MFENUMPROC, 4)
10771     TEST_TYPE_ALIGN  (MFENUMPROC, 4)
10772 }
10773
10774 static void test_pack_NEWTEXTMETRICA(void)
10775 {
10776     /* NEWTEXTMETRICA */
10777     TEST_TYPE_SIZE   (NEWTEXTMETRICA, 72)
10778     TEST_TYPE_ALIGN  (NEWTEXTMETRICA, 4)
10779     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmHeight, 4)
10780     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmHeight, 4)
10781     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmHeight, 0)
10782     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmAscent, 4)
10783     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmAscent, 4)
10784     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmAscent, 4)
10785     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmDescent, 4)
10786     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmDescent, 4)
10787     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmDescent, 8)
10788     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmInternalLeading, 4)
10789     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmInternalLeading, 4)
10790     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmInternalLeading, 12)
10791     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmExternalLeading, 4)
10792     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmExternalLeading, 4)
10793     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmExternalLeading, 16)
10794     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmAveCharWidth, 4)
10795     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmAveCharWidth, 4)
10796     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmAveCharWidth, 20)
10797     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmMaxCharWidth, 4)
10798     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmMaxCharWidth, 4)
10799     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmMaxCharWidth, 24)
10800     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmWeight, 4)
10801     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmWeight, 4)
10802     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmWeight, 28)
10803     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmOverhang, 4)
10804     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmOverhang, 4)
10805     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmOverhang, 32)
10806     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmDigitizedAspectX, 4)
10807     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmDigitizedAspectX, 4)
10808     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmDigitizedAspectX, 36)
10809     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmDigitizedAspectY, 4)
10810     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmDigitizedAspectY, 4)
10811     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmDigitizedAspectY, 40)
10812     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmFirstChar, 1)
10813     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmFirstChar, 1)
10814     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmFirstChar, 44)
10815     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmLastChar, 1)
10816     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmLastChar, 1)
10817     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmLastChar, 45)
10818     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmDefaultChar, 1)
10819     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmDefaultChar, 1)
10820     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmDefaultChar, 46)
10821     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmBreakChar, 1)
10822     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmBreakChar, 1)
10823     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmBreakChar, 47)
10824     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmItalic, 1)
10825     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmItalic, 1)
10826     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmItalic, 48)
10827     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmUnderlined, 1)
10828     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmUnderlined, 1)
10829     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmUnderlined, 49)
10830     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmStruckOut, 1)
10831     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmStruckOut, 1)
10832     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmStruckOut, 50)
10833     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmPitchAndFamily, 1)
10834     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmPitchAndFamily, 1)
10835     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmPitchAndFamily, 51)
10836     TEST_FIELD_SIZE  (NEWTEXTMETRICA, tmCharSet, 1)
10837     TEST_FIELD_ALIGN (NEWTEXTMETRICA, tmCharSet, 1)
10838     TEST_FIELD_OFFSET(NEWTEXTMETRICA, tmCharSet, 52)
10839     TEST_FIELD_SIZE  (NEWTEXTMETRICA, ntmFlags, 4)
10840     TEST_FIELD_ALIGN (NEWTEXTMETRICA, ntmFlags, 4)
10841     TEST_FIELD_OFFSET(NEWTEXTMETRICA, ntmFlags, 56)
10842     TEST_FIELD_SIZE  (NEWTEXTMETRICA, ntmSizeEM, 4)
10843     TEST_FIELD_ALIGN (NEWTEXTMETRICA, ntmSizeEM, 4)
10844     TEST_FIELD_OFFSET(NEWTEXTMETRICA, ntmSizeEM, 60)
10845     TEST_FIELD_SIZE  (NEWTEXTMETRICA, ntmCellHeight, 4)
10846     TEST_FIELD_ALIGN (NEWTEXTMETRICA, ntmCellHeight, 4)
10847     TEST_FIELD_OFFSET(NEWTEXTMETRICA, ntmCellHeight, 64)
10848     TEST_FIELD_SIZE  (NEWTEXTMETRICA, ntmAvgWidth, 4)
10849     TEST_FIELD_ALIGN (NEWTEXTMETRICA, ntmAvgWidth, 4)
10850     TEST_FIELD_OFFSET(NEWTEXTMETRICA, ntmAvgWidth, 68)
10851 }
10852
10853 static void test_pack_NEWTEXTMETRICEXA(void)
10854 {
10855     /* NEWTEXTMETRICEXA */
10856     TEST_TYPE_SIZE   (NEWTEXTMETRICEXA, 96)
10857     TEST_TYPE_ALIGN  (NEWTEXTMETRICEXA, 4)
10858     TEST_FIELD_SIZE  (NEWTEXTMETRICEXA, ntmTm, 72)
10859     TEST_FIELD_ALIGN (NEWTEXTMETRICEXA, ntmTm, 4)
10860     TEST_FIELD_OFFSET(NEWTEXTMETRICEXA, ntmTm, 0)
10861     TEST_FIELD_SIZE  (NEWTEXTMETRICEXA, ntmFontSig, 24)
10862     TEST_FIELD_ALIGN (NEWTEXTMETRICEXA, ntmFontSig, 4)
10863     TEST_FIELD_OFFSET(NEWTEXTMETRICEXA, ntmFontSig, 72)
10864 }
10865
10866 static void test_pack_NEWTEXTMETRICEXW(void)
10867 {
10868     /* NEWTEXTMETRICEXW */
10869     TEST_TYPE_SIZE   (NEWTEXTMETRICEXW, 100)
10870     TEST_TYPE_ALIGN  (NEWTEXTMETRICEXW, 4)
10871     TEST_FIELD_SIZE  (NEWTEXTMETRICEXW, ntmTm, 76)
10872     TEST_FIELD_ALIGN (NEWTEXTMETRICEXW, ntmTm, 4)
10873     TEST_FIELD_OFFSET(NEWTEXTMETRICEXW, ntmTm, 0)
10874     TEST_FIELD_SIZE  (NEWTEXTMETRICEXW, ntmFontSig, 24)
10875     TEST_FIELD_ALIGN (NEWTEXTMETRICEXW, ntmFontSig, 4)
10876     TEST_FIELD_OFFSET(NEWTEXTMETRICEXW, ntmFontSig, 76)
10877 }
10878
10879 static void test_pack_NEWTEXTMETRICW(void)
10880 {
10881     /* NEWTEXTMETRICW */
10882     TEST_TYPE_SIZE   (NEWTEXTMETRICW, 76)
10883     TEST_TYPE_ALIGN  (NEWTEXTMETRICW, 4)
10884     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmHeight, 4)
10885     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmHeight, 4)
10886     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmHeight, 0)
10887     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmAscent, 4)
10888     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmAscent, 4)
10889     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmAscent, 4)
10890     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmDescent, 4)
10891     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmDescent, 4)
10892     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmDescent, 8)
10893     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmInternalLeading, 4)
10894     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmInternalLeading, 4)
10895     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmInternalLeading, 12)
10896     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmExternalLeading, 4)
10897     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmExternalLeading, 4)
10898     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmExternalLeading, 16)
10899     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmAveCharWidth, 4)
10900     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmAveCharWidth, 4)
10901     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmAveCharWidth, 20)
10902     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmMaxCharWidth, 4)
10903     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmMaxCharWidth, 4)
10904     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmMaxCharWidth, 24)
10905     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmWeight, 4)
10906     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmWeight, 4)
10907     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmWeight, 28)
10908     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmOverhang, 4)
10909     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmOverhang, 4)
10910     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmOverhang, 32)
10911     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmDigitizedAspectX, 4)
10912     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmDigitizedAspectX, 4)
10913     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmDigitizedAspectX, 36)
10914     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmDigitizedAspectY, 4)
10915     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmDigitizedAspectY, 4)
10916     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmDigitizedAspectY, 40)
10917     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmFirstChar, 2)
10918     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmFirstChar, 2)
10919     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmFirstChar, 44)
10920     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmLastChar, 2)
10921     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmLastChar, 2)
10922     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmLastChar, 46)
10923     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmDefaultChar, 2)
10924     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmDefaultChar, 2)
10925     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmDefaultChar, 48)
10926     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmBreakChar, 2)
10927     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmBreakChar, 2)
10928     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmBreakChar, 50)
10929     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmItalic, 1)
10930     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmItalic, 1)
10931     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmItalic, 52)
10932     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmUnderlined, 1)
10933     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmUnderlined, 1)
10934     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmUnderlined, 53)
10935     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmStruckOut, 1)
10936     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmStruckOut, 1)
10937     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmStruckOut, 54)
10938     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmPitchAndFamily, 1)
10939     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmPitchAndFamily, 1)
10940     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmPitchAndFamily, 55)
10941     TEST_FIELD_SIZE  (NEWTEXTMETRICW, tmCharSet, 1)
10942     TEST_FIELD_ALIGN (NEWTEXTMETRICW, tmCharSet, 1)
10943     TEST_FIELD_OFFSET(NEWTEXTMETRICW, tmCharSet, 56)
10944     TEST_FIELD_SIZE  (NEWTEXTMETRICW, ntmFlags, 4)
10945     TEST_FIELD_ALIGN (NEWTEXTMETRICW, ntmFlags, 4)
10946     TEST_FIELD_OFFSET(NEWTEXTMETRICW, ntmFlags, 60)
10947     TEST_FIELD_SIZE  (NEWTEXTMETRICW, ntmSizeEM, 4)
10948     TEST_FIELD_ALIGN (NEWTEXTMETRICW, ntmSizeEM, 4)
10949     TEST_FIELD_OFFSET(NEWTEXTMETRICW, ntmSizeEM, 64)
10950     TEST_FIELD_SIZE  (NEWTEXTMETRICW, ntmCellHeight, 4)
10951     TEST_FIELD_ALIGN (NEWTEXTMETRICW, ntmCellHeight, 4)
10952     TEST_FIELD_OFFSET(NEWTEXTMETRICW, ntmCellHeight, 68)
10953     TEST_FIELD_SIZE  (NEWTEXTMETRICW, ntmAvgWidth, 4)
10954     TEST_FIELD_ALIGN (NEWTEXTMETRICW, ntmAvgWidth, 4)
10955     TEST_FIELD_OFFSET(NEWTEXTMETRICW, ntmAvgWidth, 72)
10956 }
10957
10958 static void test_pack_NPEXTLOGPEN(void)
10959 {
10960     /* NPEXTLOGPEN */
10961     TEST_TYPE_SIZE   (NPEXTLOGPEN, 4)
10962     TEST_TYPE_ALIGN  (NPEXTLOGPEN, 4)
10963     TEST_TARGET_SIZE (NPEXTLOGPEN, 28)
10964     TEST_TARGET_ALIGN(NPEXTLOGPEN, 4)
10965 }
10966
10967 static void test_pack_OLDFONTENUMPROC(void)
10968 {
10969     /* OLDFONTENUMPROC */
10970     TEST_TYPE_SIZE   (OLDFONTENUMPROC, 4)
10971     TEST_TYPE_ALIGN  (OLDFONTENUMPROC, 4)
10972 }
10973
10974 static void test_pack_OLDFONTENUMPROCA(void)
10975 {
10976     /* OLDFONTENUMPROCA */
10977     TEST_TYPE_SIZE   (OLDFONTENUMPROCA, 4)
10978     TEST_TYPE_ALIGN  (OLDFONTENUMPROCA, 4)
10979 }
10980
10981 static void test_pack_OLDFONTENUMPROCW(void)
10982 {
10983     /* OLDFONTENUMPROCW */
10984     TEST_TYPE_SIZE   (OLDFONTENUMPROCW, 4)
10985     TEST_TYPE_ALIGN  (OLDFONTENUMPROCW, 4)
10986 }
10987
10988 static void test_pack_OUTLINETEXTMETRICA(void)
10989 {
10990     /* OUTLINETEXTMETRICA */
10991     TEST_TYPE_SIZE   (OUTLINETEXTMETRICA, 212)
10992     TEST_TYPE_ALIGN  (OUTLINETEXTMETRICA, 4)
10993     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmSize, 4)
10994     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmSize, 4)
10995     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmSize, 0)
10996     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmTextMetrics, 56)
10997     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmTextMetrics, 4)
10998     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmTextMetrics, 4)
10999     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmFiller, 1)
11000     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmFiller, 1)
11001     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmFiller, 60)
11002     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmPanoseNumber, 10)
11003     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmPanoseNumber, 1)
11004     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmPanoseNumber, 61)
11005     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmfsSelection, 4)
11006     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmfsSelection, 4)
11007     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmfsSelection, 72)
11008     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmfsType, 4)
11009     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmfsType, 4)
11010     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmfsType, 76)
11011     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsCharSlopeRise, 4)
11012     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsCharSlopeRise, 4)
11013     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsCharSlopeRise, 80)
11014     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsCharSlopeRun, 4)
11015     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsCharSlopeRun, 4)
11016     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsCharSlopeRun, 84)
11017     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmItalicAngle, 4)
11018     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmItalicAngle, 4)
11019     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmItalicAngle, 88)
11020     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmEMSquare, 4)
11021     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmEMSquare, 4)
11022     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmEMSquare, 92)
11023     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmAscent, 4)
11024     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmAscent, 4)
11025     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmAscent, 96)
11026     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmDescent, 4)
11027     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmDescent, 4)
11028     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmDescent, 100)
11029     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmLineGap, 4)
11030     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmLineGap, 4)
11031     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmLineGap, 104)
11032     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsCapEmHeight, 4)
11033     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsCapEmHeight, 4)
11034     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsCapEmHeight, 108)
11035     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsXHeight, 4)
11036     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsXHeight, 4)
11037     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsXHeight, 112)
11038     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmrcFontBox, 16)
11039     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmrcFontBox, 4)
11040     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmrcFontBox, 116)
11041     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmMacAscent, 4)
11042     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmMacAscent, 4)
11043     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmMacAscent, 132)
11044     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmMacDescent, 4)
11045     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmMacDescent, 4)
11046     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmMacDescent, 136)
11047     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmMacLineGap, 4)
11048     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmMacLineGap, 4)
11049     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmMacLineGap, 140)
11050     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmusMinimumPPEM, 4)
11051     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmusMinimumPPEM, 4)
11052     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmusMinimumPPEM, 144)
11053     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmptSubscriptSize, 8)
11054     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmptSubscriptSize, 4)
11055     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmptSubscriptSize, 148)
11056     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmptSubscriptOffset, 8)
11057     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmptSubscriptOffset, 4)
11058     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmptSubscriptOffset, 156)
11059     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmptSuperscriptSize, 8)
11060     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmptSuperscriptSize, 4)
11061     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmptSuperscriptSize, 164)
11062     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmptSuperscriptOffset, 8)
11063     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmptSuperscriptOffset, 4)
11064     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmptSuperscriptOffset, 172)
11065     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsStrikeoutSize, 4)
11066     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsStrikeoutSize, 4)
11067     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsStrikeoutSize, 180)
11068     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsStrikeoutPosition, 4)
11069     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsStrikeoutPosition, 4)
11070     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsStrikeoutPosition, 184)
11071     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsUnderscoreSize, 4)
11072     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsUnderscoreSize, 4)
11073     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsUnderscoreSize, 188)
11074     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmsUnderscorePosition, 4)
11075     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmsUnderscorePosition, 4)
11076     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmsUnderscorePosition, 192)
11077     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmpFamilyName, 4)
11078     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmpFamilyName, 4)
11079     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmpFamilyName, 196)
11080     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmpFaceName, 4)
11081     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmpFaceName, 4)
11082     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmpFaceName, 200)
11083     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmpStyleName, 4)
11084     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmpStyleName, 4)
11085     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmpStyleName, 204)
11086     TEST_FIELD_SIZE  (OUTLINETEXTMETRICA, otmpFullName, 4)
11087     TEST_FIELD_ALIGN (OUTLINETEXTMETRICA, otmpFullName, 4)
11088     TEST_FIELD_OFFSET(OUTLINETEXTMETRICA, otmpFullName, 208)
11089 }
11090
11091 static void test_pack_OUTLINETEXTMETRICW(void)
11092 {
11093     /* OUTLINETEXTMETRICW */
11094     TEST_TYPE_SIZE   (OUTLINETEXTMETRICW, 216)
11095     TEST_TYPE_ALIGN  (OUTLINETEXTMETRICW, 4)
11096     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmSize, 4)
11097     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmSize, 4)
11098     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmSize, 0)
11099     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmTextMetrics, 60)
11100     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmTextMetrics, 4)
11101     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmTextMetrics, 4)
11102     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmFiller, 1)
11103     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmFiller, 1)
11104     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmFiller, 64)
11105     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmPanoseNumber, 10)
11106     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmPanoseNumber, 1)
11107     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmPanoseNumber, 65)
11108     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmfsSelection, 4)
11109     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmfsSelection, 4)
11110     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmfsSelection, 76)
11111     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmfsType, 4)
11112     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmfsType, 4)
11113     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmfsType, 80)
11114     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsCharSlopeRise, 4)
11115     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsCharSlopeRise, 4)
11116     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsCharSlopeRise, 84)
11117     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsCharSlopeRun, 4)
11118     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsCharSlopeRun, 4)
11119     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsCharSlopeRun, 88)
11120     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmItalicAngle, 4)
11121     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmItalicAngle, 4)
11122     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmItalicAngle, 92)
11123     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmEMSquare, 4)
11124     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmEMSquare, 4)
11125     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmEMSquare, 96)
11126     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmAscent, 4)
11127     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmAscent, 4)
11128     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmAscent, 100)
11129     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmDescent, 4)
11130     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmDescent, 4)
11131     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmDescent, 104)
11132     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmLineGap, 4)
11133     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmLineGap, 4)
11134     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmLineGap, 108)
11135     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsCapEmHeight, 4)
11136     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsCapEmHeight, 4)
11137     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsCapEmHeight, 112)
11138     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsXHeight, 4)
11139     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsXHeight, 4)
11140     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsXHeight, 116)
11141     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmrcFontBox, 16)
11142     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmrcFontBox, 4)
11143     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmrcFontBox, 120)
11144     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmMacAscent, 4)
11145     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmMacAscent, 4)
11146     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmMacAscent, 136)
11147     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmMacDescent, 4)
11148     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmMacDescent, 4)
11149     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmMacDescent, 140)
11150     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmMacLineGap, 4)
11151     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmMacLineGap, 4)
11152     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmMacLineGap, 144)
11153     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmusMinimumPPEM, 4)
11154     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmusMinimumPPEM, 4)
11155     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmusMinimumPPEM, 148)
11156     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmptSubscriptSize, 8)
11157     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmptSubscriptSize, 4)
11158     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmptSubscriptSize, 152)
11159     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmptSubscriptOffset, 8)
11160     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmptSubscriptOffset, 4)
11161     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmptSubscriptOffset, 160)
11162     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmptSuperscriptSize, 8)
11163     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmptSuperscriptSize, 4)
11164     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmptSuperscriptSize, 168)
11165     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmptSuperscriptOffset, 8)
11166     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmptSuperscriptOffset, 4)
11167     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmptSuperscriptOffset, 176)
11168     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsStrikeoutSize, 4)
11169     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsStrikeoutSize, 4)
11170     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsStrikeoutSize, 184)
11171     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsStrikeoutPosition, 4)
11172     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsStrikeoutPosition, 4)
11173     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsStrikeoutPosition, 188)
11174     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsUnderscoreSize, 4)
11175     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsUnderscoreSize, 4)
11176     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsUnderscoreSize, 192)
11177     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmsUnderscorePosition, 4)
11178     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmsUnderscorePosition, 4)
11179     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmsUnderscorePosition, 196)
11180     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmpFamilyName, 4)
11181     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmpFamilyName, 4)
11182     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmpFamilyName, 200)
11183     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmpFaceName, 4)
11184     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmpFaceName, 4)
11185     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmpFaceName, 204)
11186     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmpStyleName, 4)
11187     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmpStyleName, 4)
11188     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmpStyleName, 208)
11189     TEST_FIELD_SIZE  (OUTLINETEXTMETRICW, otmpFullName, 4)
11190     TEST_FIELD_ALIGN (OUTLINETEXTMETRICW, otmpFullName, 4)
11191     TEST_FIELD_OFFSET(OUTLINETEXTMETRICW, otmpFullName, 212)
11192 }
11193
11194 static void test_pack_PABC(void)
11195 {
11196     /* PABC */
11197     TEST_TYPE_SIZE   (PABC, 4)
11198     TEST_TYPE_ALIGN  (PABC, 4)
11199     TEST_TARGET_SIZE (PABC, 12)
11200     TEST_TARGET_ALIGN(PABC, 4)
11201 }
11202
11203 static void test_pack_PABCFLOAT(void)
11204 {
11205     /* PABCFLOAT */
11206     TEST_TYPE_SIZE   (PABCFLOAT, 4)
11207     TEST_TYPE_ALIGN  (PABCFLOAT, 4)
11208     TEST_TARGET_SIZE (PABCFLOAT, 12)
11209     TEST_TARGET_ALIGN(PABCFLOAT, 4)
11210 }
11211
11212 static void test_pack_PANOSE(void)
11213 {
11214     /* PANOSE */
11215     TEST_TYPE_SIZE   (PANOSE, 10)
11216     TEST_TYPE_ALIGN  (PANOSE, 1)
11217     TEST_FIELD_SIZE  (PANOSE, bFamilyType, 1)
11218     TEST_FIELD_ALIGN (PANOSE, bFamilyType, 1)
11219     TEST_FIELD_OFFSET(PANOSE, bFamilyType, 0)
11220     TEST_FIELD_SIZE  (PANOSE, bSerifStyle, 1)
11221     TEST_FIELD_ALIGN (PANOSE, bSerifStyle, 1)
11222     TEST_FIELD_OFFSET(PANOSE, bSerifStyle, 1)
11223     TEST_FIELD_SIZE  (PANOSE, bWeight, 1)
11224     TEST_FIELD_ALIGN (PANOSE, bWeight, 1)
11225     TEST_FIELD_OFFSET(PANOSE, bWeight, 2)
11226     TEST_FIELD_SIZE  (PANOSE, bProportion, 1)
11227     TEST_FIELD_ALIGN (PANOSE, bProportion, 1)
11228     TEST_FIELD_OFFSET(PANOSE, bProportion, 3)
11229     TEST_FIELD_SIZE  (PANOSE, bContrast, 1)
11230     TEST_FIELD_ALIGN (PANOSE, bContrast, 1)
11231     TEST_FIELD_OFFSET(PANOSE, bContrast, 4)
11232     TEST_FIELD_SIZE  (PANOSE, bStrokeVariation, 1)
11233     TEST_FIELD_ALIGN (PANOSE, bStrokeVariation, 1)
11234     TEST_FIELD_OFFSET(PANOSE, bStrokeVariation, 5)
11235     TEST_FIELD_SIZE  (PANOSE, bArmStyle, 1)
11236     TEST_FIELD_ALIGN (PANOSE, bArmStyle, 1)
11237     TEST_FIELD_OFFSET(PANOSE, bArmStyle, 6)
11238     TEST_FIELD_SIZE  (PANOSE, bLetterform, 1)
11239     TEST_FIELD_ALIGN (PANOSE, bLetterform, 1)
11240     TEST_FIELD_OFFSET(PANOSE, bLetterform, 7)
11241     TEST_FIELD_SIZE  (PANOSE, bMidline, 1)
11242     TEST_FIELD_ALIGN (PANOSE, bMidline, 1)
11243     TEST_FIELD_OFFSET(PANOSE, bMidline, 8)
11244     TEST_FIELD_SIZE  (PANOSE, bXHeight, 1)
11245     TEST_FIELD_ALIGN (PANOSE, bXHeight, 1)
11246     TEST_FIELD_OFFSET(PANOSE, bXHeight, 9)
11247 }
11248
11249 static void test_pack_PATTERN(void)
11250 {
11251     /* PATTERN */
11252     TEST_TYPE_SIZE   (PATTERN, 12)
11253     TEST_TYPE_ALIGN  (PATTERN, 4)
11254 }
11255
11256 static void test_pack_PBITMAP(void)
11257 {
11258     /* PBITMAP */
11259     TEST_TYPE_SIZE   (PBITMAP, 4)
11260     TEST_TYPE_ALIGN  (PBITMAP, 4)
11261     TEST_TARGET_SIZE (PBITMAP, 24)
11262     TEST_TARGET_ALIGN(PBITMAP, 4)
11263 }
11264
11265 static void test_pack_PBITMAPCOREHEADER(void)
11266 {
11267     /* PBITMAPCOREHEADER */
11268     TEST_TYPE_SIZE   (PBITMAPCOREHEADER, 4)
11269     TEST_TYPE_ALIGN  (PBITMAPCOREHEADER, 4)
11270     TEST_TARGET_SIZE (PBITMAPCOREHEADER, 12)
11271     TEST_TARGET_ALIGN(PBITMAPCOREHEADER, 4)
11272 }
11273
11274 static void test_pack_PBITMAPCOREINFO(void)
11275 {
11276     /* PBITMAPCOREINFO */
11277     TEST_TYPE_SIZE   (PBITMAPCOREINFO, 4)
11278     TEST_TYPE_ALIGN  (PBITMAPCOREINFO, 4)
11279     TEST_TARGET_SIZE (PBITMAPCOREINFO, 16)
11280     TEST_TARGET_ALIGN(PBITMAPCOREINFO, 4)
11281 }
11282
11283 static void test_pack_PBITMAPFILEHEADER(void)
11284 {
11285     /* PBITMAPFILEHEADER */
11286     TEST_TYPE_SIZE   (PBITMAPFILEHEADER, 4)
11287     TEST_TYPE_ALIGN  (PBITMAPFILEHEADER, 4)
11288     TEST_TARGET_SIZE (PBITMAPFILEHEADER, 14)
11289     TEST_TARGET_ALIGN(PBITMAPFILEHEADER, 2)
11290 }
11291
11292 static void test_pack_PBITMAPINFO(void)
11293 {
11294     /* PBITMAPINFO */
11295     TEST_TYPE_SIZE   (PBITMAPINFO, 4)
11296     TEST_TYPE_ALIGN  (PBITMAPINFO, 4)
11297     TEST_TARGET_SIZE (PBITMAPINFO, 44)
11298     TEST_TARGET_ALIGN(PBITMAPINFO, 4)
11299 }
11300
11301 static void test_pack_PBITMAPINFOHEADER(void)
11302 {
11303     /* PBITMAPINFOHEADER */
11304     TEST_TYPE_SIZE   (PBITMAPINFOHEADER, 4)
11305     TEST_TYPE_ALIGN  (PBITMAPINFOHEADER, 4)
11306     TEST_TARGET_SIZE (PBITMAPINFOHEADER, 40)
11307     TEST_TARGET_ALIGN(PBITMAPINFOHEADER, 4)
11308 }
11309
11310 static void test_pack_PBITMAPV4HEADER(void)
11311 {
11312     /* PBITMAPV4HEADER */
11313     TEST_TYPE_SIZE   (PBITMAPV4HEADER, 4)
11314     TEST_TYPE_ALIGN  (PBITMAPV4HEADER, 4)
11315     TEST_TARGET_SIZE (PBITMAPV4HEADER, 108)
11316     TEST_TARGET_ALIGN(PBITMAPV4HEADER, 4)
11317 }
11318
11319 static void test_pack_PBITMAPV5HEADER(void)
11320 {
11321     /* PBITMAPV5HEADER */
11322     TEST_TYPE_SIZE   (PBITMAPV5HEADER, 4)
11323     TEST_TYPE_ALIGN  (PBITMAPV5HEADER, 4)
11324     TEST_TARGET_SIZE (PBITMAPV5HEADER, 124)
11325     TEST_TARGET_ALIGN(PBITMAPV5HEADER, 4)
11326 }
11327
11328 static void test_pack_PBLENDFUNCTION(void)
11329 {
11330     /* PBLENDFUNCTION */
11331     TEST_TYPE_SIZE   (PBLENDFUNCTION, 4)
11332     TEST_TYPE_ALIGN  (PBLENDFUNCTION, 4)
11333     TEST_TARGET_SIZE (PBLENDFUNCTION, 4)
11334     TEST_TARGET_ALIGN(PBLENDFUNCTION, 1)
11335 }
11336
11337 static void test_pack_PCHARSETINFO(void)
11338 {
11339     /* PCHARSETINFO */
11340     TEST_TYPE_SIZE   (PCHARSETINFO, 4)
11341     TEST_TYPE_ALIGN  (PCHARSETINFO, 4)
11342     TEST_TARGET_SIZE (PCHARSETINFO, 32)
11343     TEST_TARGET_ALIGN(PCHARSETINFO, 4)
11344 }
11345
11346 static void test_pack_PCOLORADJUSTMENT(void)
11347 {
11348     /* PCOLORADJUSTMENT */
11349     TEST_TYPE_SIZE   (PCOLORADJUSTMENT, 4)
11350     TEST_TYPE_ALIGN  (PCOLORADJUSTMENT, 4)
11351     TEST_TARGET_SIZE (PCOLORADJUSTMENT, 24)
11352     TEST_TARGET_ALIGN(PCOLORADJUSTMENT, 2)
11353 }
11354
11355 static void test_pack_PDEVMODEA(void)
11356 {
11357     /* PDEVMODEA */
11358     TEST_TYPE_SIZE   (PDEVMODEA, 4)
11359     TEST_TYPE_ALIGN  (PDEVMODEA, 4)
11360 }
11361
11362 static void test_pack_PDEVMODEW(void)
11363 {
11364     /* PDEVMODEW */
11365     TEST_TYPE_SIZE   (PDEVMODEW, 4)
11366     TEST_TYPE_ALIGN  (PDEVMODEW, 4)
11367 }
11368
11369 static void test_pack_PDIBSECTION(void)
11370 {
11371     /* PDIBSECTION */
11372     TEST_TYPE_SIZE   (PDIBSECTION, 4)
11373     TEST_TYPE_ALIGN  (PDIBSECTION, 4)
11374     TEST_TARGET_SIZE (PDIBSECTION, 84)
11375     TEST_TARGET_ALIGN(PDIBSECTION, 4)
11376 }
11377
11378 static void test_pack_PDISPLAY_DEVICEA(void)
11379 {
11380     /* PDISPLAY_DEVICEA */
11381     TEST_TYPE_SIZE   (PDISPLAY_DEVICEA, 4)
11382     TEST_TYPE_ALIGN  (PDISPLAY_DEVICEA, 4)
11383     TEST_TARGET_SIZE (PDISPLAY_DEVICEA, 424)
11384     TEST_TARGET_ALIGN(PDISPLAY_DEVICEA, 4)
11385 }
11386
11387 static void test_pack_PDISPLAY_DEVICEW(void)
11388 {
11389     /* PDISPLAY_DEVICEW */
11390     TEST_TYPE_SIZE   (PDISPLAY_DEVICEW, 4)
11391     TEST_TYPE_ALIGN  (PDISPLAY_DEVICEW, 4)
11392     TEST_TARGET_SIZE (PDISPLAY_DEVICEW, 840)
11393     TEST_TARGET_ALIGN(PDISPLAY_DEVICEW, 4)
11394 }
11395
11396 static void test_pack_PELARRAY(void)
11397 {
11398     /* PELARRAY */
11399     TEST_TYPE_SIZE   (PELARRAY, 20)
11400     TEST_TYPE_ALIGN  (PELARRAY, 4)
11401     TEST_FIELD_SIZE  (PELARRAY, paXCount, 4)
11402     TEST_FIELD_ALIGN (PELARRAY, paXCount, 4)
11403     TEST_FIELD_OFFSET(PELARRAY, paXCount, 0)
11404     TEST_FIELD_SIZE  (PELARRAY, paYCount, 4)
11405     TEST_FIELD_ALIGN (PELARRAY, paYCount, 4)
11406     TEST_FIELD_OFFSET(PELARRAY, paYCount, 4)
11407     TEST_FIELD_SIZE  (PELARRAY, paXExt, 4)
11408     TEST_FIELD_ALIGN (PELARRAY, paXExt, 4)
11409     TEST_FIELD_OFFSET(PELARRAY, paXExt, 8)
11410     TEST_FIELD_SIZE  (PELARRAY, paYExt, 4)
11411     TEST_FIELD_ALIGN (PELARRAY, paYExt, 4)
11412     TEST_FIELD_OFFSET(PELARRAY, paYExt, 12)
11413     TEST_FIELD_SIZE  (PELARRAY, paRGBs, 1)
11414     TEST_FIELD_ALIGN (PELARRAY, paRGBs, 1)
11415     TEST_FIELD_OFFSET(PELARRAY, paRGBs, 16)
11416 }
11417
11418 static void test_pack_PEMR(void)
11419 {
11420     /* PEMR */
11421     TEST_TYPE_SIZE   (PEMR, 4)
11422     TEST_TYPE_ALIGN  (PEMR, 4)
11423     TEST_TARGET_SIZE (PEMR, 8)
11424     TEST_TARGET_ALIGN(PEMR, 4)
11425 }
11426
11427 static void test_pack_PEMRABORTPATH(void)
11428 {
11429     /* PEMRABORTPATH */
11430     TEST_TYPE_SIZE   (PEMRABORTPATH, 4)
11431     TEST_TYPE_ALIGN  (PEMRABORTPATH, 4)
11432     TEST_TARGET_SIZE (PEMRABORTPATH, 8)
11433     TEST_TARGET_ALIGN(PEMRABORTPATH, 4)
11434 }
11435
11436 static void test_pack_PEMRANGLEARC(void)
11437 {
11438     /* PEMRANGLEARC */
11439     TEST_TYPE_SIZE   (PEMRANGLEARC, 4)
11440     TEST_TYPE_ALIGN  (PEMRANGLEARC, 4)
11441     TEST_TARGET_SIZE (PEMRANGLEARC, 28)
11442     TEST_TARGET_ALIGN(PEMRANGLEARC, 4)
11443 }
11444
11445 static void test_pack_PEMRARC(void)
11446 {
11447     /* PEMRARC */
11448     TEST_TYPE_SIZE   (PEMRARC, 4)
11449     TEST_TYPE_ALIGN  (PEMRARC, 4)
11450     TEST_TARGET_SIZE (PEMRARC, 40)
11451     TEST_TARGET_ALIGN(PEMRARC, 4)
11452 }
11453
11454 static void test_pack_PEMRARCTO(void)
11455 {
11456     /* PEMRARCTO */
11457     TEST_TYPE_SIZE   (PEMRARCTO, 4)
11458     TEST_TYPE_ALIGN  (PEMRARCTO, 4)
11459     TEST_TARGET_SIZE (PEMRARCTO, 40)
11460     TEST_TARGET_ALIGN(PEMRARCTO, 4)
11461 }
11462
11463 static void test_pack_PEMRBEGINPATH(void)
11464 {
11465     /* PEMRBEGINPATH */
11466     TEST_TYPE_SIZE   (PEMRBEGINPATH, 4)
11467     TEST_TYPE_ALIGN  (PEMRBEGINPATH, 4)
11468     TEST_TARGET_SIZE (PEMRBEGINPATH, 8)
11469     TEST_TARGET_ALIGN(PEMRBEGINPATH, 4)
11470 }
11471
11472 static void test_pack_PEMRBITBLT(void)
11473 {
11474     /* PEMRBITBLT */
11475     TEST_TYPE_SIZE   (PEMRBITBLT, 4)
11476     TEST_TYPE_ALIGN  (PEMRBITBLT, 4)
11477     TEST_TARGET_SIZE (PEMRBITBLT, 100)
11478     TEST_TARGET_ALIGN(PEMRBITBLT, 4)
11479 }
11480
11481 static void test_pack_PEMRCHORD(void)
11482 {
11483     /* PEMRCHORD */
11484     TEST_TYPE_SIZE   (PEMRCHORD, 4)
11485     TEST_TYPE_ALIGN  (PEMRCHORD, 4)
11486     TEST_TARGET_SIZE (PEMRCHORD, 40)
11487     TEST_TARGET_ALIGN(PEMRCHORD, 4)
11488 }
11489
11490 static void test_pack_PEMRCLOSEFIGURE(void)
11491 {
11492     /* PEMRCLOSEFIGURE */
11493     TEST_TYPE_SIZE   (PEMRCLOSEFIGURE, 4)
11494     TEST_TYPE_ALIGN  (PEMRCLOSEFIGURE, 4)
11495     TEST_TARGET_SIZE (PEMRCLOSEFIGURE, 8)
11496     TEST_TARGET_ALIGN(PEMRCLOSEFIGURE, 4)
11497 }
11498
11499 static void test_pack_PEMRCREATEBRUSHINDIRECT(void)
11500 {
11501     /* PEMRCREATEBRUSHINDIRECT */
11502     TEST_TYPE_SIZE   (PEMRCREATEBRUSHINDIRECT, 4)
11503     TEST_TYPE_ALIGN  (PEMRCREATEBRUSHINDIRECT, 4)
11504     TEST_TARGET_SIZE (PEMRCREATEBRUSHINDIRECT, 24)
11505     TEST_TARGET_ALIGN(PEMRCREATEBRUSHINDIRECT, 4)
11506 }
11507
11508 static void test_pack_PEMRCREATECOLORSPACE(void)
11509 {
11510     /* PEMRCREATECOLORSPACE */
11511     TEST_TYPE_SIZE   (PEMRCREATECOLORSPACE, 4)
11512     TEST_TYPE_ALIGN  (PEMRCREATECOLORSPACE, 4)
11513     TEST_TARGET_SIZE (PEMRCREATECOLORSPACE, 340)
11514     TEST_TARGET_ALIGN(PEMRCREATECOLORSPACE, 4)
11515 }
11516
11517 static void test_pack_PEMRCREATECOLORSPACEW(void)
11518 {
11519     /* PEMRCREATECOLORSPACEW */
11520     TEST_TYPE_SIZE   (PEMRCREATECOLORSPACEW, 4)
11521     TEST_TYPE_ALIGN  (PEMRCREATECOLORSPACEW, 4)
11522     TEST_TARGET_SIZE (PEMRCREATECOLORSPACEW, 612)
11523     TEST_TARGET_ALIGN(PEMRCREATECOLORSPACEW, 4)
11524 }
11525
11526 static void test_pack_PEMRCREATEDIBPATTERNBRUSHPT(void)
11527 {
11528     /* PEMRCREATEDIBPATTERNBRUSHPT */
11529     TEST_TYPE_SIZE   (PEMRCREATEDIBPATTERNBRUSHPT, 4)
11530     TEST_TYPE_ALIGN  (PEMRCREATEDIBPATTERNBRUSHPT, 4)
11531     TEST_TARGET_SIZE (PEMRCREATEDIBPATTERNBRUSHPT, 32)
11532     TEST_TARGET_ALIGN(PEMRCREATEDIBPATTERNBRUSHPT, 4)
11533 }
11534
11535 static void test_pack_PEMRCREATEMONOBRUSH(void)
11536 {
11537     /* PEMRCREATEMONOBRUSH */
11538     TEST_TYPE_SIZE   (PEMRCREATEMONOBRUSH, 4)
11539     TEST_TYPE_ALIGN  (PEMRCREATEMONOBRUSH, 4)
11540     TEST_TARGET_SIZE (PEMRCREATEMONOBRUSH, 32)
11541     TEST_TARGET_ALIGN(PEMRCREATEMONOBRUSH, 4)
11542 }
11543
11544 static void test_pack_PEMRCREATEPALETTE(void)
11545 {
11546     /* PEMRCREATEPALETTE */
11547     TEST_TYPE_SIZE   (PEMRCREATEPALETTE, 4)
11548     TEST_TYPE_ALIGN  (PEMRCREATEPALETTE, 4)
11549     TEST_TARGET_SIZE (PEMRCREATEPALETTE, 20)
11550     TEST_TARGET_ALIGN(PEMRCREATEPALETTE, 4)
11551 }
11552
11553 static void test_pack_PEMRCREATEPEN(void)
11554 {
11555     /* PEMRCREATEPEN */
11556     TEST_TYPE_SIZE   (PEMRCREATEPEN, 4)
11557     TEST_TYPE_ALIGN  (PEMRCREATEPEN, 4)
11558     TEST_TARGET_SIZE (PEMRCREATEPEN, 28)
11559     TEST_TARGET_ALIGN(PEMRCREATEPEN, 4)
11560 }
11561
11562 static void test_pack_PEMRDELETECOLORSPACE(void)
11563 {
11564     /* PEMRDELETECOLORSPACE */
11565     TEST_TYPE_SIZE   (PEMRDELETECOLORSPACE, 4)
11566     TEST_TYPE_ALIGN  (PEMRDELETECOLORSPACE, 4)
11567     TEST_TARGET_SIZE (PEMRDELETECOLORSPACE, 12)
11568     TEST_TARGET_ALIGN(PEMRDELETECOLORSPACE, 4)
11569 }
11570
11571 static void test_pack_PEMRDELETEOBJECT(void)
11572 {
11573     /* PEMRDELETEOBJECT */
11574     TEST_TYPE_SIZE   (PEMRDELETEOBJECT, 4)
11575     TEST_TYPE_ALIGN  (PEMRDELETEOBJECT, 4)
11576     TEST_TARGET_SIZE (PEMRDELETEOBJECT, 12)
11577     TEST_TARGET_ALIGN(PEMRDELETEOBJECT, 4)
11578 }
11579
11580 static void test_pack_PEMRELLIPSE(void)
11581 {
11582     /* PEMRELLIPSE */
11583     TEST_TYPE_SIZE   (PEMRELLIPSE, 4)
11584     TEST_TYPE_ALIGN  (PEMRELLIPSE, 4)
11585     TEST_TARGET_SIZE (PEMRELLIPSE, 24)
11586     TEST_TARGET_ALIGN(PEMRELLIPSE, 4)
11587 }
11588
11589 static void test_pack_PEMRENDPATH(void)
11590 {
11591     /* PEMRENDPATH */
11592     TEST_TYPE_SIZE   (PEMRENDPATH, 4)
11593     TEST_TYPE_ALIGN  (PEMRENDPATH, 4)
11594     TEST_TARGET_SIZE (PEMRENDPATH, 8)
11595     TEST_TARGET_ALIGN(PEMRENDPATH, 4)
11596 }
11597
11598 static void test_pack_PEMREOF(void)
11599 {
11600     /* PEMREOF */
11601     TEST_TYPE_SIZE   (PEMREOF, 4)
11602     TEST_TYPE_ALIGN  (PEMREOF, 4)
11603     TEST_TARGET_SIZE (PEMREOF, 20)
11604     TEST_TARGET_ALIGN(PEMREOF, 4)
11605 }
11606
11607 static void test_pack_PEMREXCLUDECLIPRECT(void)
11608 {
11609     /* PEMREXCLUDECLIPRECT */
11610     TEST_TYPE_SIZE   (PEMREXCLUDECLIPRECT, 4)
11611     TEST_TYPE_ALIGN  (PEMREXCLUDECLIPRECT, 4)
11612     TEST_TARGET_SIZE (PEMREXCLUDECLIPRECT, 24)
11613     TEST_TARGET_ALIGN(PEMREXCLUDECLIPRECT, 4)
11614 }
11615
11616 static void test_pack_PEMREXTCREATEFONTINDIRECTW(void)
11617 {
11618     /* PEMREXTCREATEFONTINDIRECTW */
11619     TEST_TYPE_SIZE   (PEMREXTCREATEFONTINDIRECTW, 4)
11620     TEST_TYPE_ALIGN  (PEMREXTCREATEFONTINDIRECTW, 4)
11621     TEST_TARGET_SIZE (PEMREXTCREATEFONTINDIRECTW, 332)
11622     TEST_TARGET_ALIGN(PEMREXTCREATEFONTINDIRECTW, 4)
11623 }
11624
11625 static void test_pack_PEMREXTCREATEPEN(void)
11626 {
11627     /* PEMREXTCREATEPEN */
11628     TEST_TYPE_SIZE   (PEMREXTCREATEPEN, 4)
11629     TEST_TYPE_ALIGN  (PEMREXTCREATEPEN, 4)
11630     TEST_TARGET_SIZE (PEMREXTCREATEPEN, 56)
11631     TEST_TARGET_ALIGN(PEMREXTCREATEPEN, 4)
11632 }
11633
11634 static void test_pack_PEMREXTFLOODFILL(void)
11635 {
11636     /* PEMREXTFLOODFILL */
11637     TEST_TYPE_SIZE   (PEMREXTFLOODFILL, 4)
11638     TEST_TYPE_ALIGN  (PEMREXTFLOODFILL, 4)
11639     TEST_TARGET_SIZE (PEMREXTFLOODFILL, 24)
11640     TEST_TARGET_ALIGN(PEMREXTFLOODFILL, 4)
11641 }
11642
11643 static void test_pack_PEMREXTSELECTCLIPRGN(void)
11644 {
11645     /* PEMREXTSELECTCLIPRGN */
11646     TEST_TYPE_SIZE   (PEMREXTSELECTCLIPRGN, 4)
11647     TEST_TYPE_ALIGN  (PEMREXTSELECTCLIPRGN, 4)
11648     TEST_TARGET_SIZE (PEMREXTSELECTCLIPRGN, 20)
11649     TEST_TARGET_ALIGN(PEMREXTSELECTCLIPRGN, 4)
11650 }
11651
11652 static void test_pack_PEMREXTTEXTOUTA(void)
11653 {
11654     /* PEMREXTTEXTOUTA */
11655     TEST_TYPE_SIZE   (PEMREXTTEXTOUTA, 4)
11656     TEST_TYPE_ALIGN  (PEMREXTTEXTOUTA, 4)
11657     TEST_TARGET_SIZE (PEMREXTTEXTOUTA, 76)
11658     TEST_TARGET_ALIGN(PEMREXTTEXTOUTA, 4)
11659 }
11660
11661 static void test_pack_PEMREXTTEXTOUTW(void)
11662 {
11663     /* PEMREXTTEXTOUTW */
11664     TEST_TYPE_SIZE   (PEMREXTTEXTOUTW, 4)
11665     TEST_TYPE_ALIGN  (PEMREXTTEXTOUTW, 4)
11666     TEST_TARGET_SIZE (PEMREXTTEXTOUTW, 76)
11667     TEST_TARGET_ALIGN(PEMREXTTEXTOUTW, 4)
11668 }
11669
11670 static void test_pack_PEMRFILLPATH(void)
11671 {
11672     /* PEMRFILLPATH */
11673     TEST_TYPE_SIZE   (PEMRFILLPATH, 4)
11674     TEST_TYPE_ALIGN  (PEMRFILLPATH, 4)
11675     TEST_TARGET_SIZE (PEMRFILLPATH, 24)
11676     TEST_TARGET_ALIGN(PEMRFILLPATH, 4)
11677 }
11678
11679 static void test_pack_PEMRFILLRGN(void)
11680 {
11681     /* PEMRFILLRGN */
11682     TEST_TYPE_SIZE   (PEMRFILLRGN, 4)
11683     TEST_TYPE_ALIGN  (PEMRFILLRGN, 4)
11684     TEST_TARGET_SIZE (PEMRFILLRGN, 36)
11685     TEST_TARGET_ALIGN(PEMRFILLRGN, 4)
11686 }
11687
11688 static void test_pack_PEMRFLATTENPATH(void)
11689 {
11690     /* PEMRFLATTENPATH */
11691     TEST_TYPE_SIZE   (PEMRFLATTENPATH, 4)
11692     TEST_TYPE_ALIGN  (PEMRFLATTENPATH, 4)
11693     TEST_TARGET_SIZE (PEMRFLATTENPATH, 8)
11694     TEST_TARGET_ALIGN(PEMRFLATTENPATH, 4)
11695 }
11696
11697 static void test_pack_PEMRFORMAT(void)
11698 {
11699     /* PEMRFORMAT */
11700     TEST_TYPE_SIZE   (PEMRFORMAT, 4)
11701     TEST_TYPE_ALIGN  (PEMRFORMAT, 4)
11702     TEST_TARGET_SIZE (PEMRFORMAT, 16)
11703     TEST_TARGET_ALIGN(PEMRFORMAT, 4)
11704 }
11705
11706 static void test_pack_PEMRFRAMERGN(void)
11707 {
11708     /* PEMRFRAMERGN */
11709     TEST_TYPE_SIZE   (PEMRFRAMERGN, 4)
11710     TEST_TYPE_ALIGN  (PEMRFRAMERGN, 4)
11711     TEST_TARGET_SIZE (PEMRFRAMERGN, 44)
11712     TEST_TARGET_ALIGN(PEMRFRAMERGN, 4)
11713 }
11714
11715 static void test_pack_PEMRGDICOMMENT(void)
11716 {
11717     /* PEMRGDICOMMENT */
11718     TEST_TYPE_SIZE   (PEMRGDICOMMENT, 4)
11719     TEST_TYPE_ALIGN  (PEMRGDICOMMENT, 4)
11720     TEST_TARGET_SIZE (PEMRGDICOMMENT, 16)
11721     TEST_TARGET_ALIGN(PEMRGDICOMMENT, 4)
11722 }
11723
11724 static void test_pack_PEMRGLSBOUNDEDRECORD(void)
11725 {
11726     /* PEMRGLSBOUNDEDRECORD */
11727     TEST_TYPE_SIZE   (PEMRGLSBOUNDEDRECORD, 4)
11728     TEST_TYPE_ALIGN  (PEMRGLSBOUNDEDRECORD, 4)
11729     TEST_TARGET_SIZE (PEMRGLSBOUNDEDRECORD, 32)
11730     TEST_TARGET_ALIGN(PEMRGLSBOUNDEDRECORD, 4)
11731 }
11732
11733 static void test_pack_PEMRGLSRECORD(void)
11734 {
11735     /* PEMRGLSRECORD */
11736     TEST_TYPE_SIZE   (PEMRGLSRECORD, 4)
11737     TEST_TYPE_ALIGN  (PEMRGLSRECORD, 4)
11738     TEST_TARGET_SIZE (PEMRGLSRECORD, 16)
11739     TEST_TARGET_ALIGN(PEMRGLSRECORD, 4)
11740 }
11741
11742 static void test_pack_PEMRINTERSECTCLIPRECT(void)
11743 {
11744     /* PEMRINTERSECTCLIPRECT */
11745     TEST_TYPE_SIZE   (PEMRINTERSECTCLIPRECT, 4)
11746     TEST_TYPE_ALIGN  (PEMRINTERSECTCLIPRECT, 4)
11747     TEST_TARGET_SIZE (PEMRINTERSECTCLIPRECT, 24)
11748     TEST_TARGET_ALIGN(PEMRINTERSECTCLIPRECT, 4)
11749 }
11750
11751 static void test_pack_PEMRINVERTRGN(void)
11752 {
11753     /* PEMRINVERTRGN */
11754     TEST_TYPE_SIZE   (PEMRINVERTRGN, 4)
11755     TEST_TYPE_ALIGN  (PEMRINVERTRGN, 4)
11756     TEST_TARGET_SIZE (PEMRINVERTRGN, 32)
11757     TEST_TARGET_ALIGN(PEMRINVERTRGN, 4)
11758 }
11759
11760 static void test_pack_PEMRLINETO(void)
11761 {
11762     /* PEMRLINETO */
11763     TEST_TYPE_SIZE   (PEMRLINETO, 4)
11764     TEST_TYPE_ALIGN  (PEMRLINETO, 4)
11765     TEST_TARGET_SIZE (PEMRLINETO, 16)
11766     TEST_TARGET_ALIGN(PEMRLINETO, 4)
11767 }
11768
11769 static void test_pack_PEMRMASKBLT(void)
11770 {
11771     /* PEMRMASKBLT */
11772     TEST_TYPE_SIZE   (PEMRMASKBLT, 4)
11773     TEST_TYPE_ALIGN  (PEMRMASKBLT, 4)
11774     TEST_TARGET_SIZE (PEMRMASKBLT, 128)
11775     TEST_TARGET_ALIGN(PEMRMASKBLT, 4)
11776 }
11777
11778 static void test_pack_PEMRMODIFYWORLDTRANSFORM(void)
11779 {
11780     /* PEMRMODIFYWORLDTRANSFORM */
11781     TEST_TYPE_SIZE   (PEMRMODIFYWORLDTRANSFORM, 4)
11782     TEST_TYPE_ALIGN  (PEMRMODIFYWORLDTRANSFORM, 4)
11783     TEST_TARGET_SIZE (PEMRMODIFYWORLDTRANSFORM, 36)
11784     TEST_TARGET_ALIGN(PEMRMODIFYWORLDTRANSFORM, 4)
11785 }
11786
11787 static void test_pack_PEMRMOVETOEX(void)
11788 {
11789     /* PEMRMOVETOEX */
11790     TEST_TYPE_SIZE   (PEMRMOVETOEX, 4)
11791     TEST_TYPE_ALIGN  (PEMRMOVETOEX, 4)
11792     TEST_TARGET_SIZE (PEMRMOVETOEX, 16)
11793     TEST_TARGET_ALIGN(PEMRMOVETOEX, 4)
11794 }
11795
11796 static void test_pack_PEMROFFSETCLIPRGN(void)
11797 {
11798     /* PEMROFFSETCLIPRGN */
11799     TEST_TYPE_SIZE   (PEMROFFSETCLIPRGN, 4)
11800     TEST_TYPE_ALIGN  (PEMROFFSETCLIPRGN, 4)
11801     TEST_TARGET_SIZE (PEMROFFSETCLIPRGN, 16)
11802     TEST_TARGET_ALIGN(PEMROFFSETCLIPRGN, 4)
11803 }
11804
11805 static void test_pack_PEMRPAINTRGN(void)
11806 {
11807     /* PEMRPAINTRGN */
11808     TEST_TYPE_SIZE   (PEMRPAINTRGN, 4)
11809     TEST_TYPE_ALIGN  (PEMRPAINTRGN, 4)
11810     TEST_TARGET_SIZE (PEMRPAINTRGN, 32)
11811     TEST_TARGET_ALIGN(PEMRPAINTRGN, 4)
11812 }
11813
11814 static void test_pack_PEMRPIE(void)
11815 {
11816     /* PEMRPIE */
11817     TEST_TYPE_SIZE   (PEMRPIE, 4)
11818     TEST_TYPE_ALIGN  (PEMRPIE, 4)
11819     TEST_TARGET_SIZE (PEMRPIE, 40)
11820     TEST_TARGET_ALIGN(PEMRPIE, 4)
11821 }
11822
11823 static void test_pack_PEMRPIXELFORMAT(void)
11824 {
11825     /* PEMRPIXELFORMAT */
11826     TEST_TYPE_SIZE   (PEMRPIXELFORMAT, 4)
11827     TEST_TYPE_ALIGN  (PEMRPIXELFORMAT, 4)
11828     TEST_TARGET_SIZE (PEMRPIXELFORMAT, 48)
11829     TEST_TARGET_ALIGN(PEMRPIXELFORMAT, 4)
11830 }
11831
11832 static void test_pack_PEMRPLGBLT(void)
11833 {
11834     /* PEMRPLGBLT */
11835     TEST_TYPE_SIZE   (PEMRPLGBLT, 4)
11836     TEST_TYPE_ALIGN  (PEMRPLGBLT, 4)
11837     TEST_TARGET_SIZE (PEMRPLGBLT, 140)
11838     TEST_TARGET_ALIGN(PEMRPLGBLT, 4)
11839 }
11840
11841 static void test_pack_PEMRPOLYBEZIER(void)
11842 {
11843     /* PEMRPOLYBEZIER */
11844     TEST_TYPE_SIZE   (PEMRPOLYBEZIER, 4)
11845     TEST_TYPE_ALIGN  (PEMRPOLYBEZIER, 4)
11846     TEST_TARGET_SIZE (PEMRPOLYBEZIER, 36)
11847     TEST_TARGET_ALIGN(PEMRPOLYBEZIER, 4)
11848 }
11849
11850 static void test_pack_PEMRPOLYBEZIER16(void)
11851 {
11852     /* PEMRPOLYBEZIER16 */
11853     TEST_TYPE_SIZE   (PEMRPOLYBEZIER16, 4)
11854     TEST_TYPE_ALIGN  (PEMRPOLYBEZIER16, 4)
11855     TEST_TARGET_SIZE (PEMRPOLYBEZIER16, 32)
11856     TEST_TARGET_ALIGN(PEMRPOLYBEZIER16, 4)
11857 }
11858
11859 static void test_pack_PEMRPOLYBEZIERTO(void)
11860 {
11861     /* PEMRPOLYBEZIERTO */
11862     TEST_TYPE_SIZE   (PEMRPOLYBEZIERTO, 4)
11863     TEST_TYPE_ALIGN  (PEMRPOLYBEZIERTO, 4)
11864     TEST_TARGET_SIZE (PEMRPOLYBEZIERTO, 36)
11865     TEST_TARGET_ALIGN(PEMRPOLYBEZIERTO, 4)
11866 }
11867
11868 static void test_pack_PEMRPOLYBEZIERTO16(void)
11869 {
11870     /* PEMRPOLYBEZIERTO16 */
11871     TEST_TYPE_SIZE   (PEMRPOLYBEZIERTO16, 4)
11872     TEST_TYPE_ALIGN  (PEMRPOLYBEZIERTO16, 4)
11873     TEST_TARGET_SIZE (PEMRPOLYBEZIERTO16, 32)
11874     TEST_TARGET_ALIGN(PEMRPOLYBEZIERTO16, 4)
11875 }
11876
11877 static void test_pack_PEMRPOLYDRAW(void)
11878 {
11879     /* PEMRPOLYDRAW */
11880     TEST_TYPE_SIZE   (PEMRPOLYDRAW, 4)
11881     TEST_TYPE_ALIGN  (PEMRPOLYDRAW, 4)
11882     TEST_TARGET_SIZE (PEMRPOLYDRAW, 40)
11883     TEST_TARGET_ALIGN(PEMRPOLYDRAW, 4)
11884 }
11885
11886 static void test_pack_PEMRPOLYDRAW16(void)
11887 {
11888     /* PEMRPOLYDRAW16 */
11889     TEST_TYPE_SIZE   (PEMRPOLYDRAW16, 4)
11890     TEST_TYPE_ALIGN  (PEMRPOLYDRAW16, 4)
11891     TEST_TARGET_SIZE (PEMRPOLYDRAW16, 36)
11892     TEST_TARGET_ALIGN(PEMRPOLYDRAW16, 4)
11893 }
11894
11895 static void test_pack_PEMRPOLYGON(void)
11896 {
11897     /* PEMRPOLYGON */
11898     TEST_TYPE_SIZE   (PEMRPOLYGON, 4)
11899     TEST_TYPE_ALIGN  (PEMRPOLYGON, 4)
11900     TEST_TARGET_SIZE (PEMRPOLYGON, 36)
11901     TEST_TARGET_ALIGN(PEMRPOLYGON, 4)
11902 }
11903
11904 static void test_pack_PEMRPOLYGON16(void)
11905 {
11906     /* PEMRPOLYGON16 */
11907     TEST_TYPE_SIZE   (PEMRPOLYGON16, 4)
11908     TEST_TYPE_ALIGN  (PEMRPOLYGON16, 4)
11909     TEST_TARGET_SIZE (PEMRPOLYGON16, 32)
11910     TEST_TARGET_ALIGN(PEMRPOLYGON16, 4)
11911 }
11912
11913 static void test_pack_PEMRPOLYLINE(void)
11914 {
11915     /* PEMRPOLYLINE */
11916     TEST_TYPE_SIZE   (PEMRPOLYLINE, 4)
11917     TEST_TYPE_ALIGN  (PEMRPOLYLINE, 4)
11918     TEST_TARGET_SIZE (PEMRPOLYLINE, 36)
11919     TEST_TARGET_ALIGN(PEMRPOLYLINE, 4)
11920 }
11921
11922 static void test_pack_PEMRPOLYLINE16(void)
11923 {
11924     /* PEMRPOLYLINE16 */
11925     TEST_TYPE_SIZE   (PEMRPOLYLINE16, 4)
11926     TEST_TYPE_ALIGN  (PEMRPOLYLINE16, 4)
11927     TEST_TARGET_SIZE (PEMRPOLYLINE16, 32)
11928     TEST_TARGET_ALIGN(PEMRPOLYLINE16, 4)
11929 }
11930
11931 static void test_pack_PEMRPOLYLINETO(void)
11932 {
11933     /* PEMRPOLYLINETO */
11934     TEST_TYPE_SIZE   (PEMRPOLYLINETO, 4)
11935     TEST_TYPE_ALIGN  (PEMRPOLYLINETO, 4)
11936     TEST_TARGET_SIZE (PEMRPOLYLINETO, 36)
11937     TEST_TARGET_ALIGN(PEMRPOLYLINETO, 4)
11938 }
11939
11940 static void test_pack_PEMRPOLYLINETO16(void)
11941 {
11942     /* PEMRPOLYLINETO16 */
11943     TEST_TYPE_SIZE   (PEMRPOLYLINETO16, 4)
11944     TEST_TYPE_ALIGN  (PEMRPOLYLINETO16, 4)
11945     TEST_TARGET_SIZE (PEMRPOLYLINETO16, 32)
11946     TEST_TARGET_ALIGN(PEMRPOLYLINETO16, 4)
11947 }
11948
11949 static void test_pack_PEMRPOLYPOLYGON(void)
11950 {
11951     /* PEMRPOLYPOLYGON */
11952     TEST_TYPE_SIZE   (PEMRPOLYPOLYGON, 4)
11953     TEST_TYPE_ALIGN  (PEMRPOLYPOLYGON, 4)
11954     TEST_TARGET_SIZE (PEMRPOLYPOLYGON, 44)
11955     TEST_TARGET_ALIGN(PEMRPOLYPOLYGON, 4)
11956 }
11957
11958 static void test_pack_PEMRPOLYPOLYGON16(void)
11959 {
11960     /* PEMRPOLYPOLYGON16 */
11961     TEST_TYPE_SIZE   (PEMRPOLYPOLYGON16, 4)
11962     TEST_TYPE_ALIGN  (PEMRPOLYPOLYGON16, 4)
11963     TEST_TARGET_SIZE (PEMRPOLYPOLYGON16, 40)
11964     TEST_TARGET_ALIGN(PEMRPOLYPOLYGON16, 4)
11965 }
11966
11967 static void test_pack_PEMRPOLYPOLYLINE(void)
11968 {
11969     /* PEMRPOLYPOLYLINE */
11970     TEST_TYPE_SIZE   (PEMRPOLYPOLYLINE, 4)
11971     TEST_TYPE_ALIGN  (PEMRPOLYPOLYLINE, 4)
11972     TEST_TARGET_SIZE (PEMRPOLYPOLYLINE, 44)
11973     TEST_TARGET_ALIGN(PEMRPOLYPOLYLINE, 4)
11974 }
11975
11976 static void test_pack_PEMRPOLYPOLYLINE16(void)
11977 {
11978     /* PEMRPOLYPOLYLINE16 */
11979     TEST_TYPE_SIZE   (PEMRPOLYPOLYLINE16, 4)
11980     TEST_TYPE_ALIGN  (PEMRPOLYPOLYLINE16, 4)
11981     TEST_TARGET_SIZE (PEMRPOLYPOLYLINE16, 40)
11982     TEST_TARGET_ALIGN(PEMRPOLYPOLYLINE16, 4)
11983 }
11984
11985 static void test_pack_PEMRPOLYTEXTOUTA(void)
11986 {
11987     /* PEMRPOLYTEXTOUTA */
11988     TEST_TYPE_SIZE   (PEMRPOLYTEXTOUTA, 4)
11989     TEST_TYPE_ALIGN  (PEMRPOLYTEXTOUTA, 4)
11990     TEST_TARGET_SIZE (PEMRPOLYTEXTOUTA, 80)
11991     TEST_TARGET_ALIGN(PEMRPOLYTEXTOUTA, 4)
11992 }
11993
11994 static void test_pack_PEMRPOLYTEXTOUTW(void)
11995 {
11996     /* PEMRPOLYTEXTOUTW */
11997     TEST_TYPE_SIZE   (PEMRPOLYTEXTOUTW, 4)
11998     TEST_TYPE_ALIGN  (PEMRPOLYTEXTOUTW, 4)
11999     TEST_TARGET_SIZE (PEMRPOLYTEXTOUTW, 80)
12000     TEST_TARGET_ALIGN(PEMRPOLYTEXTOUTW, 4)
12001 }
12002
12003 static void test_pack_PEMRREALIZEPALETTE(void)
12004 {
12005     /* PEMRREALIZEPALETTE */
12006     TEST_TYPE_SIZE   (PEMRREALIZEPALETTE, 4)
12007     TEST_TYPE_ALIGN  (PEMRREALIZEPALETTE, 4)
12008     TEST_TARGET_SIZE (PEMRREALIZEPALETTE, 8)
12009     TEST_TARGET_ALIGN(PEMRREALIZEPALETTE, 4)
12010 }
12011
12012 static void test_pack_PEMRRECTANGLE(void)
12013 {
12014     /* PEMRRECTANGLE */
12015     TEST_TYPE_SIZE   (PEMRRECTANGLE, 4)
12016     TEST_TYPE_ALIGN  (PEMRRECTANGLE, 4)
12017     TEST_TARGET_SIZE (PEMRRECTANGLE, 24)
12018     TEST_TARGET_ALIGN(PEMRRECTANGLE, 4)
12019 }
12020
12021 static void test_pack_PEMRRESIZEPALETTE(void)
12022 {
12023     /* PEMRRESIZEPALETTE */
12024     TEST_TYPE_SIZE   (PEMRRESIZEPALETTE, 4)
12025     TEST_TYPE_ALIGN  (PEMRRESIZEPALETTE, 4)
12026     TEST_TARGET_SIZE (PEMRRESIZEPALETTE, 16)
12027     TEST_TARGET_ALIGN(PEMRRESIZEPALETTE, 4)
12028 }
12029
12030 static void test_pack_PEMRRESTOREDC(void)
12031 {
12032     /* PEMRRESTOREDC */
12033     TEST_TYPE_SIZE   (PEMRRESTOREDC, 4)
12034     TEST_TYPE_ALIGN  (PEMRRESTOREDC, 4)
12035     TEST_TARGET_SIZE (PEMRRESTOREDC, 12)
12036     TEST_TARGET_ALIGN(PEMRRESTOREDC, 4)
12037 }
12038
12039 static void test_pack_PEMRROUNDRECT(void)
12040 {
12041     /* PEMRROUNDRECT */
12042     TEST_TYPE_SIZE   (PEMRROUNDRECT, 4)
12043     TEST_TYPE_ALIGN  (PEMRROUNDRECT, 4)
12044     TEST_TARGET_SIZE (PEMRROUNDRECT, 32)
12045     TEST_TARGET_ALIGN(PEMRROUNDRECT, 4)
12046 }
12047
12048 static void test_pack_PEMRSAVEDC(void)
12049 {
12050     /* PEMRSAVEDC */
12051     TEST_TYPE_SIZE   (PEMRSAVEDC, 4)
12052     TEST_TYPE_ALIGN  (PEMRSAVEDC, 4)
12053     TEST_TARGET_SIZE (PEMRSAVEDC, 8)
12054     TEST_TARGET_ALIGN(PEMRSAVEDC, 4)
12055 }
12056
12057 static void test_pack_PEMRSCALEVIEWPORTEXTEX(void)
12058 {
12059     /* PEMRSCALEVIEWPORTEXTEX */
12060     TEST_TYPE_SIZE   (PEMRSCALEVIEWPORTEXTEX, 4)
12061     TEST_TYPE_ALIGN  (PEMRSCALEVIEWPORTEXTEX, 4)
12062     TEST_TARGET_SIZE (PEMRSCALEVIEWPORTEXTEX, 24)
12063     TEST_TARGET_ALIGN(PEMRSCALEVIEWPORTEXTEX, 4)
12064 }
12065
12066 static void test_pack_PEMRSCALEWINDOWEXTEX(void)
12067 {
12068     /* PEMRSCALEWINDOWEXTEX */
12069     TEST_TYPE_SIZE   (PEMRSCALEWINDOWEXTEX, 4)
12070     TEST_TYPE_ALIGN  (PEMRSCALEWINDOWEXTEX, 4)
12071     TEST_TARGET_SIZE (PEMRSCALEWINDOWEXTEX, 24)
12072     TEST_TARGET_ALIGN(PEMRSCALEWINDOWEXTEX, 4)
12073 }
12074
12075 static void test_pack_PEMRSELECTCLIPPATH(void)
12076 {
12077     /* PEMRSELECTCLIPPATH */
12078     TEST_TYPE_SIZE   (PEMRSELECTCLIPPATH, 4)
12079     TEST_TYPE_ALIGN  (PEMRSELECTCLIPPATH, 4)
12080     TEST_TARGET_SIZE (PEMRSELECTCLIPPATH, 12)
12081     TEST_TARGET_ALIGN(PEMRSELECTCLIPPATH, 4)
12082 }
12083
12084 static void test_pack_PEMRSELECTCOLORSPACE(void)
12085 {
12086     /* PEMRSELECTCOLORSPACE */
12087     TEST_TYPE_SIZE   (PEMRSELECTCOLORSPACE, 4)
12088     TEST_TYPE_ALIGN  (PEMRSELECTCOLORSPACE, 4)
12089     TEST_TARGET_SIZE (PEMRSELECTCOLORSPACE, 12)
12090     TEST_TARGET_ALIGN(PEMRSELECTCOLORSPACE, 4)
12091 }
12092
12093 static void test_pack_PEMRSELECTOBJECT(void)
12094 {
12095     /* PEMRSELECTOBJECT */
12096     TEST_TYPE_SIZE   (PEMRSELECTOBJECT, 4)
12097     TEST_TYPE_ALIGN  (PEMRSELECTOBJECT, 4)
12098     TEST_TARGET_SIZE (PEMRSELECTOBJECT, 12)
12099     TEST_TARGET_ALIGN(PEMRSELECTOBJECT, 4)
12100 }
12101
12102 static void test_pack_PEMRSELECTPALETTE(void)
12103 {
12104     /* PEMRSELECTPALETTE */
12105     TEST_TYPE_SIZE   (PEMRSELECTPALETTE, 4)
12106     TEST_TYPE_ALIGN  (PEMRSELECTPALETTE, 4)
12107     TEST_TARGET_SIZE (PEMRSELECTPALETTE, 12)
12108     TEST_TARGET_ALIGN(PEMRSELECTPALETTE, 4)
12109 }
12110
12111 static void test_pack_PEMRSETARCDIRECTION(void)
12112 {
12113     /* PEMRSETARCDIRECTION */
12114     TEST_TYPE_SIZE   (PEMRSETARCDIRECTION, 4)
12115     TEST_TYPE_ALIGN  (PEMRSETARCDIRECTION, 4)
12116     TEST_TARGET_SIZE (PEMRSETARCDIRECTION, 12)
12117     TEST_TARGET_ALIGN(PEMRSETARCDIRECTION, 4)
12118 }
12119
12120 static void test_pack_PEMRSETBKCOLOR(void)
12121 {
12122     /* PEMRSETBKCOLOR */
12123     TEST_TYPE_SIZE   (PEMRSETBKCOLOR, 4)
12124     TEST_TYPE_ALIGN  (PEMRSETBKCOLOR, 4)
12125     TEST_TARGET_SIZE (PEMRSETBKCOLOR, 12)
12126     TEST_TARGET_ALIGN(PEMRSETBKCOLOR, 4)
12127 }
12128
12129 static void test_pack_PEMRSETBKMODE(void)
12130 {
12131     /* PEMRSETBKMODE */
12132     TEST_TYPE_SIZE   (PEMRSETBKMODE, 4)
12133     TEST_TYPE_ALIGN  (PEMRSETBKMODE, 4)
12134     TEST_TARGET_SIZE (PEMRSETBKMODE, 12)
12135     TEST_TARGET_ALIGN(PEMRSETBKMODE, 4)
12136 }
12137
12138 static void test_pack_PEMRSETBRUSHORGEX(void)
12139 {
12140     /* PEMRSETBRUSHORGEX */
12141     TEST_TYPE_SIZE   (PEMRSETBRUSHORGEX, 4)
12142     TEST_TYPE_ALIGN  (PEMRSETBRUSHORGEX, 4)
12143     TEST_TARGET_SIZE (PEMRSETBRUSHORGEX, 16)
12144     TEST_TARGET_ALIGN(PEMRSETBRUSHORGEX, 4)
12145 }
12146
12147 static void test_pack_PEMRSETCOLORADJUSTMENT(void)
12148 {
12149     /* PEMRSETCOLORADJUSTMENT */
12150     TEST_TYPE_SIZE   (PEMRSETCOLORADJUSTMENT, 4)
12151     TEST_TYPE_ALIGN  (PEMRSETCOLORADJUSTMENT, 4)
12152     TEST_TARGET_SIZE (PEMRSETCOLORADJUSTMENT, 32)
12153     TEST_TARGET_ALIGN(PEMRSETCOLORADJUSTMENT, 4)
12154 }
12155
12156 static void test_pack_PEMRSETCOLORSPACE(void)
12157 {
12158     /* PEMRSETCOLORSPACE */
12159     TEST_TYPE_SIZE   (PEMRSETCOLORSPACE, 4)
12160     TEST_TYPE_ALIGN  (PEMRSETCOLORSPACE, 4)
12161     TEST_TARGET_SIZE (PEMRSETCOLORSPACE, 12)
12162     TEST_TARGET_ALIGN(PEMRSETCOLORSPACE, 4)
12163 }
12164
12165 static void test_pack_PEMRSETDIBITSTODEVICE(void)
12166 {
12167     /* PEMRSETDIBITSTODEVICE */
12168     TEST_TYPE_SIZE   (PEMRSETDIBITSTODEVICE, 4)
12169     TEST_TYPE_ALIGN  (PEMRSETDIBITSTODEVICE, 4)
12170     TEST_TARGET_SIZE (PEMRSETDIBITSTODEVICE, 76)
12171     TEST_TARGET_ALIGN(PEMRSETDIBITSTODEVICE, 4)
12172 }
12173
12174 static void test_pack_PEMRSETICMMODE(void)
12175 {
12176     /* PEMRSETICMMODE */
12177     TEST_TYPE_SIZE   (PEMRSETICMMODE, 4)
12178     TEST_TYPE_ALIGN  (PEMRSETICMMODE, 4)
12179     TEST_TARGET_SIZE (PEMRSETICMMODE, 12)
12180     TEST_TARGET_ALIGN(PEMRSETICMMODE, 4)
12181 }
12182
12183 static void test_pack_PEMRSETLAYOUT(void)
12184 {
12185     /* PEMRSETLAYOUT */
12186     TEST_TYPE_SIZE   (PEMRSETLAYOUT, 4)
12187     TEST_TYPE_ALIGN  (PEMRSETLAYOUT, 4)
12188     TEST_TARGET_SIZE (PEMRSETLAYOUT, 12)
12189     TEST_TARGET_ALIGN(PEMRSETLAYOUT, 4)
12190 }
12191
12192 static void test_pack_PEMRSETMAPMODE(void)
12193 {
12194     /* PEMRSETMAPMODE */
12195     TEST_TYPE_SIZE   (PEMRSETMAPMODE, 4)
12196     TEST_TYPE_ALIGN  (PEMRSETMAPMODE, 4)
12197     TEST_TARGET_SIZE (PEMRSETMAPMODE, 12)
12198     TEST_TARGET_ALIGN(PEMRSETMAPMODE, 4)
12199 }
12200
12201 static void test_pack_PEMRSETMAPPERFLAGS(void)
12202 {
12203     /* PEMRSETMAPPERFLAGS */
12204     TEST_TYPE_SIZE   (PEMRSETMAPPERFLAGS, 4)
12205     TEST_TYPE_ALIGN  (PEMRSETMAPPERFLAGS, 4)
12206     TEST_TARGET_SIZE (PEMRSETMAPPERFLAGS, 12)
12207     TEST_TARGET_ALIGN(PEMRSETMAPPERFLAGS, 4)
12208 }
12209
12210 static void test_pack_PEMRSETMETARGN(void)
12211 {
12212     /* PEMRSETMETARGN */
12213     TEST_TYPE_SIZE   (PEMRSETMETARGN, 4)
12214     TEST_TYPE_ALIGN  (PEMRSETMETARGN, 4)
12215     TEST_TARGET_SIZE (PEMRSETMETARGN, 8)
12216     TEST_TARGET_ALIGN(PEMRSETMETARGN, 4)
12217 }
12218
12219 static void test_pack_PEMRSETMITERLIMIT(void)
12220 {
12221     /* PEMRSETMITERLIMIT */
12222     TEST_TYPE_SIZE   (PEMRSETMITERLIMIT, 4)
12223     TEST_TYPE_ALIGN  (PEMRSETMITERLIMIT, 4)
12224     TEST_TARGET_SIZE (PEMRSETMITERLIMIT, 12)
12225     TEST_TARGET_ALIGN(PEMRSETMITERLIMIT, 4)
12226 }
12227
12228 static void test_pack_PEMRSETPALETTEENTRIES(void)
12229 {
12230     /* PEMRSETPALETTEENTRIES */
12231     TEST_TYPE_SIZE   (PEMRSETPALETTEENTRIES, 4)
12232     TEST_TYPE_ALIGN  (PEMRSETPALETTEENTRIES, 4)
12233     TEST_TARGET_SIZE (PEMRSETPALETTEENTRIES, 24)
12234     TEST_TARGET_ALIGN(PEMRSETPALETTEENTRIES, 4)
12235 }
12236
12237 static void test_pack_PEMRSETPIXELV(void)
12238 {
12239     /* PEMRSETPIXELV */
12240     TEST_TYPE_SIZE   (PEMRSETPIXELV, 4)
12241     TEST_TYPE_ALIGN  (PEMRSETPIXELV, 4)
12242     TEST_TARGET_SIZE (PEMRSETPIXELV, 20)
12243     TEST_TARGET_ALIGN(PEMRSETPIXELV, 4)
12244 }
12245
12246 static void test_pack_PEMRSETPOLYFILLMODE(void)
12247 {
12248     /* PEMRSETPOLYFILLMODE */
12249     TEST_TYPE_SIZE   (PEMRSETPOLYFILLMODE, 4)
12250     TEST_TYPE_ALIGN  (PEMRSETPOLYFILLMODE, 4)
12251     TEST_TARGET_SIZE (PEMRSETPOLYFILLMODE, 12)
12252     TEST_TARGET_ALIGN(PEMRSETPOLYFILLMODE, 4)
12253 }
12254
12255 static void test_pack_PEMRSETROP2(void)
12256 {
12257     /* PEMRSETROP2 */
12258     TEST_TYPE_SIZE   (PEMRSETROP2, 4)
12259     TEST_TYPE_ALIGN  (PEMRSETROP2, 4)
12260     TEST_TARGET_SIZE (PEMRSETROP2, 12)
12261     TEST_TARGET_ALIGN(PEMRSETROP2, 4)
12262 }
12263
12264 static void test_pack_PEMRSETSTRETCHBLTMODE(void)
12265 {
12266     /* PEMRSETSTRETCHBLTMODE */
12267     TEST_TYPE_SIZE   (PEMRSETSTRETCHBLTMODE, 4)
12268     TEST_TYPE_ALIGN  (PEMRSETSTRETCHBLTMODE, 4)
12269     TEST_TARGET_SIZE (PEMRSETSTRETCHBLTMODE, 12)
12270     TEST_TARGET_ALIGN(PEMRSETSTRETCHBLTMODE, 4)
12271 }
12272
12273 static void test_pack_PEMRSETTEXTALIGN(void)
12274 {
12275     /* PEMRSETTEXTALIGN */
12276     TEST_TYPE_SIZE   (PEMRSETTEXTALIGN, 4)
12277     TEST_TYPE_ALIGN  (PEMRSETTEXTALIGN, 4)
12278     TEST_TARGET_SIZE (PEMRSETTEXTALIGN, 12)
12279     TEST_TARGET_ALIGN(PEMRSETTEXTALIGN, 4)
12280 }
12281
12282 static void test_pack_PEMRSETTEXTCOLOR(void)
12283 {
12284     /* PEMRSETTEXTCOLOR */
12285     TEST_TYPE_SIZE   (PEMRSETTEXTCOLOR, 4)
12286     TEST_TYPE_ALIGN  (PEMRSETTEXTCOLOR, 4)
12287     TEST_TARGET_SIZE (PEMRSETTEXTCOLOR, 12)
12288     TEST_TARGET_ALIGN(PEMRSETTEXTCOLOR, 4)
12289 }
12290
12291 static void test_pack_PEMRSETVIEWPORTEXTEX(void)
12292 {
12293     /* PEMRSETVIEWPORTEXTEX */
12294     TEST_TYPE_SIZE   (PEMRSETVIEWPORTEXTEX, 4)
12295     TEST_TYPE_ALIGN  (PEMRSETVIEWPORTEXTEX, 4)
12296     TEST_TARGET_SIZE (PEMRSETVIEWPORTEXTEX, 16)
12297     TEST_TARGET_ALIGN(PEMRSETVIEWPORTEXTEX, 4)
12298 }
12299
12300 static void test_pack_PEMRSETVIEWPORTORGEX(void)
12301 {
12302     /* PEMRSETVIEWPORTORGEX */
12303     TEST_TYPE_SIZE   (PEMRSETVIEWPORTORGEX, 4)
12304     TEST_TYPE_ALIGN  (PEMRSETVIEWPORTORGEX, 4)
12305     TEST_TARGET_SIZE (PEMRSETVIEWPORTORGEX, 16)
12306     TEST_TARGET_ALIGN(PEMRSETVIEWPORTORGEX, 4)
12307 }
12308
12309 static void test_pack_PEMRSETWINDOWEXTEX(void)
12310 {
12311     /* PEMRSETWINDOWEXTEX */
12312     TEST_TYPE_SIZE   (PEMRSETWINDOWEXTEX, 4)
12313     TEST_TYPE_ALIGN  (PEMRSETWINDOWEXTEX, 4)
12314     TEST_TARGET_SIZE (PEMRSETWINDOWEXTEX, 16)
12315     TEST_TARGET_ALIGN(PEMRSETWINDOWEXTEX, 4)
12316 }
12317
12318 static void test_pack_PEMRSETWINDOWORGEX(void)
12319 {
12320     /* PEMRSETWINDOWORGEX */
12321     TEST_TYPE_SIZE   (PEMRSETWINDOWORGEX, 4)
12322     TEST_TYPE_ALIGN  (PEMRSETWINDOWORGEX, 4)
12323     TEST_TARGET_SIZE (PEMRSETWINDOWORGEX, 16)
12324     TEST_TARGET_ALIGN(PEMRSETWINDOWORGEX, 4)
12325 }
12326
12327 static void test_pack_PEMRSETWORLDTRANSFORM(void)
12328 {
12329     /* PEMRSETWORLDTRANSFORM */
12330     TEST_TYPE_SIZE   (PEMRSETWORLDTRANSFORM, 4)
12331     TEST_TYPE_ALIGN  (PEMRSETWORLDTRANSFORM, 4)
12332     TEST_TARGET_SIZE (PEMRSETWORLDTRANSFORM, 32)
12333     TEST_TARGET_ALIGN(PEMRSETWORLDTRANSFORM, 4)
12334 }
12335
12336 static void test_pack_PEMRSTRETCHBLT(void)
12337 {
12338     /* PEMRSTRETCHBLT */
12339     TEST_TYPE_SIZE   (PEMRSTRETCHBLT, 4)
12340     TEST_TYPE_ALIGN  (PEMRSTRETCHBLT, 4)
12341     TEST_TARGET_SIZE (PEMRSTRETCHBLT, 108)
12342     TEST_TARGET_ALIGN(PEMRSTRETCHBLT, 4)
12343 }
12344
12345 static void test_pack_PEMRSTRETCHDIBITS(void)
12346 {
12347     /* PEMRSTRETCHDIBITS */
12348     TEST_TYPE_SIZE   (PEMRSTRETCHDIBITS, 4)
12349     TEST_TYPE_ALIGN  (PEMRSTRETCHDIBITS, 4)
12350     TEST_TARGET_SIZE (PEMRSTRETCHDIBITS, 80)
12351     TEST_TARGET_ALIGN(PEMRSTRETCHDIBITS, 4)
12352 }
12353
12354 static void test_pack_PEMRSTROKEANDFILLPATH(void)
12355 {
12356     /* PEMRSTROKEANDFILLPATH */
12357     TEST_TYPE_SIZE   (PEMRSTROKEANDFILLPATH, 4)
12358     TEST_TYPE_ALIGN  (PEMRSTROKEANDFILLPATH, 4)
12359     TEST_TARGET_SIZE (PEMRSTROKEANDFILLPATH, 24)
12360     TEST_TARGET_ALIGN(PEMRSTROKEANDFILLPATH, 4)
12361 }
12362
12363 static void test_pack_PEMRSTROKEPATH(void)
12364 {
12365     /* PEMRSTROKEPATH */
12366     TEST_TYPE_SIZE   (PEMRSTROKEPATH, 4)
12367     TEST_TYPE_ALIGN  (PEMRSTROKEPATH, 4)
12368     TEST_TARGET_SIZE (PEMRSTROKEPATH, 24)
12369     TEST_TARGET_ALIGN(PEMRSTROKEPATH, 4)
12370 }
12371
12372 static void test_pack_PEMRTEXT(void)
12373 {
12374     /* PEMRTEXT */
12375     TEST_TYPE_SIZE   (PEMRTEXT, 4)
12376     TEST_TYPE_ALIGN  (PEMRTEXT, 4)
12377     TEST_TARGET_SIZE (PEMRTEXT, 40)
12378     TEST_TARGET_ALIGN(PEMRTEXT, 4)
12379 }
12380
12381 static void test_pack_PEMRWIDENPATH(void)
12382 {
12383     /* PEMRWIDENPATH */
12384     TEST_TYPE_SIZE   (PEMRWIDENPATH, 4)
12385     TEST_TYPE_ALIGN  (PEMRWIDENPATH, 4)
12386     TEST_TARGET_SIZE (PEMRWIDENPATH, 8)
12387     TEST_TARGET_ALIGN(PEMRWIDENPATH, 4)
12388 }
12389
12390 static void test_pack_PENHMETAHEADER(void)
12391 {
12392     /* PENHMETAHEADER */
12393     TEST_TYPE_SIZE   (PENHMETAHEADER, 4)
12394     TEST_TYPE_ALIGN  (PENHMETAHEADER, 4)
12395     TEST_TARGET_SIZE (PENHMETAHEADER, 108)
12396     TEST_TARGET_ALIGN(PENHMETAHEADER, 4)
12397 }
12398
12399 static void test_pack_PEXTLOGFONTA(void)
12400 {
12401     /* PEXTLOGFONTA */
12402     TEST_TYPE_SIZE   (PEXTLOGFONTA, 4)
12403     TEST_TYPE_ALIGN  (PEXTLOGFONTA, 4)
12404     TEST_TARGET_SIZE (PEXTLOGFONTA, 192)
12405     TEST_TARGET_ALIGN(PEXTLOGFONTA, 4)
12406 }
12407
12408 static void test_pack_PEXTLOGFONTW(void)
12409 {
12410     /* PEXTLOGFONTW */
12411     TEST_TYPE_SIZE   (PEXTLOGFONTW, 4)
12412     TEST_TYPE_ALIGN  (PEXTLOGFONTW, 4)
12413     TEST_TARGET_SIZE (PEXTLOGFONTW, 320)
12414     TEST_TARGET_ALIGN(PEXTLOGFONTW, 4)
12415 }
12416
12417 static void test_pack_PEXTLOGPEN(void)
12418 {
12419     /* PEXTLOGPEN */
12420     TEST_TYPE_SIZE   (PEXTLOGPEN, 4)
12421     TEST_TYPE_ALIGN  (PEXTLOGPEN, 4)
12422     TEST_TARGET_SIZE (PEXTLOGPEN, 28)
12423     TEST_TARGET_ALIGN(PEXTLOGPEN, 4)
12424 }
12425
12426 static void test_pack_PFONTSIGNATURE(void)
12427 {
12428     /* PFONTSIGNATURE */
12429     TEST_TYPE_SIZE   (PFONTSIGNATURE, 4)
12430     TEST_TYPE_ALIGN  (PFONTSIGNATURE, 4)
12431     TEST_TARGET_SIZE (PFONTSIGNATURE, 24)
12432     TEST_TARGET_ALIGN(PFONTSIGNATURE, 4)
12433 }
12434
12435 static void test_pack_PGLYPHMETRICSFLOAT(void)
12436 {
12437     /* PGLYPHMETRICSFLOAT */
12438     TEST_TYPE_SIZE   (PGLYPHMETRICSFLOAT, 4)
12439     TEST_TYPE_ALIGN  (PGLYPHMETRICSFLOAT, 4)
12440     TEST_TARGET_SIZE (PGLYPHMETRICSFLOAT, 24)
12441     TEST_TARGET_ALIGN(PGLYPHMETRICSFLOAT, 4)
12442 }
12443
12444 static void test_pack_PGRADIENT_RECT(void)
12445 {
12446     /* PGRADIENT_RECT */
12447     TEST_TYPE_SIZE   (PGRADIENT_RECT, 4)
12448     TEST_TYPE_ALIGN  (PGRADIENT_RECT, 4)
12449     TEST_TARGET_SIZE (PGRADIENT_RECT, 8)
12450     TEST_TARGET_ALIGN(PGRADIENT_RECT, 4)
12451 }
12452
12453 static void test_pack_PGRADIENT_TRIANGLE(void)
12454 {
12455     /* PGRADIENT_TRIANGLE */
12456     TEST_TYPE_SIZE   (PGRADIENT_TRIANGLE, 4)
12457     TEST_TYPE_ALIGN  (PGRADIENT_TRIANGLE, 4)
12458     TEST_TARGET_SIZE (PGRADIENT_TRIANGLE, 12)
12459     TEST_TARGET_ALIGN(PGRADIENT_TRIANGLE, 4)
12460 }
12461
12462 static void test_pack_PHANDLETABLE(void)
12463 {
12464     /* PHANDLETABLE */
12465     TEST_TYPE_SIZE   (PHANDLETABLE, 4)
12466     TEST_TYPE_ALIGN  (PHANDLETABLE, 4)
12467     TEST_TARGET_SIZE (PHANDLETABLE, 4)
12468     TEST_TARGET_ALIGN(PHANDLETABLE, 4)
12469 }
12470
12471 static void test_pack_PIXELFORMATDESCRIPTOR(void)
12472 {
12473     /* PIXELFORMATDESCRIPTOR */
12474     TEST_TYPE_SIZE   (PIXELFORMATDESCRIPTOR, 40)
12475     TEST_TYPE_ALIGN  (PIXELFORMATDESCRIPTOR, 4)
12476     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, nSize, 2)
12477     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, nSize, 2)
12478     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nSize, 0)
12479     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, nVersion, 2)
12480     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, nVersion, 2)
12481     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, nVersion, 2)
12482     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, dwFlags, 4)
12483     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, dwFlags, 4)
12484     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwFlags, 4)
12485     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, iPixelType, 1)
12486     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, iPixelType, 1)
12487     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iPixelType, 8)
12488     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cColorBits, 1)
12489     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cColorBits, 1)
12490     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cColorBits, 9)
12491     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cRedBits, 1)
12492     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cRedBits, 1)
12493     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedBits, 10)
12494     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cRedShift, 1)
12495     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cRedShift, 1)
12496     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cRedShift, 11)
12497     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cGreenBits, 1)
12498     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cGreenBits, 1)
12499     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenBits, 12)
12500     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cGreenShift, 1)
12501     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cGreenShift, 1)
12502     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cGreenShift, 13)
12503     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cBlueBits, 1)
12504     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cBlueBits, 1)
12505     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueBits, 14)
12506     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cBlueShift, 1)
12507     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cBlueShift, 1)
12508     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cBlueShift, 15)
12509     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAlphaBits, 1)
12510     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAlphaBits, 1)
12511     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaBits, 16)
12512     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAlphaShift, 1)
12513     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAlphaShift, 1)
12514     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAlphaShift, 17)
12515     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumBits, 1)
12516     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumBits, 1)
12517     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBits, 18)
12518     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumRedBits, 1)
12519     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumRedBits, 1)
12520     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumRedBits, 19)
12521     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumGreenBits, 1)
12522     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumGreenBits, 1)
12523     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumGreenBits, 20)
12524     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumBlueBits, 1)
12525     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumBlueBits, 1)
12526     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumBlueBits, 21)
12527     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAccumAlphaBits, 1)
12528     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAccumAlphaBits, 1)
12529     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAccumAlphaBits, 22)
12530     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cDepthBits, 1)
12531     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cDepthBits, 1)
12532     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cDepthBits, 23)
12533     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cStencilBits, 1)
12534     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cStencilBits, 1)
12535     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cStencilBits, 24)
12536     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, cAuxBuffers, 1)
12537     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, cAuxBuffers, 1)
12538     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, cAuxBuffers, 25)
12539     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, iLayerType, 1)
12540     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, iLayerType, 1)
12541     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, iLayerType, 26)
12542     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, bReserved, 1)
12543     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, bReserved, 1)
12544     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, bReserved, 27)
12545     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, dwLayerMask, 4)
12546     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, dwLayerMask, 4)
12547     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwLayerMask, 28)
12548     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, dwVisibleMask, 4)
12549     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, dwVisibleMask, 4)
12550     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwVisibleMask, 32)
12551     TEST_FIELD_SIZE  (PIXELFORMATDESCRIPTOR, dwDamageMask, 4)
12552     TEST_FIELD_ALIGN (PIXELFORMATDESCRIPTOR, dwDamageMask, 4)
12553     TEST_FIELD_OFFSET(PIXELFORMATDESCRIPTOR, dwDamageMask, 36)
12554 }
12555
12556 static void test_pack_PLAYERPLANEDESCRIPTOR(void)
12557 {
12558     /* PLAYERPLANEDESCRIPTOR */
12559     TEST_TYPE_SIZE   (PLAYERPLANEDESCRIPTOR, 4)
12560     TEST_TYPE_ALIGN  (PLAYERPLANEDESCRIPTOR, 4)
12561     TEST_TARGET_SIZE (PLAYERPLANEDESCRIPTOR, 32)
12562     TEST_TARGET_ALIGN(PLAYERPLANEDESCRIPTOR, 4)
12563 }
12564
12565 static void test_pack_PLOCALESIGNATURE(void)
12566 {
12567     /* PLOCALESIGNATURE */
12568     TEST_TYPE_SIZE   (PLOCALESIGNATURE, 4)
12569     TEST_TYPE_ALIGN  (PLOCALESIGNATURE, 4)
12570     TEST_TARGET_SIZE (PLOCALESIGNATURE, 32)
12571     TEST_TARGET_ALIGN(PLOCALESIGNATURE, 4)
12572 }
12573
12574 static void test_pack_PLOGBRUSH(void)
12575 {
12576     /* PLOGBRUSH */
12577     TEST_TYPE_SIZE   (PLOGBRUSH, 4)
12578     TEST_TYPE_ALIGN  (PLOGBRUSH, 4)
12579     TEST_TARGET_SIZE (PLOGBRUSH, 12)
12580     TEST_TARGET_ALIGN(PLOGBRUSH, 4)
12581 }
12582
12583 static void test_pack_PLOGFONTA(void)
12584 {
12585     /* PLOGFONTA */
12586     TEST_TYPE_SIZE   (PLOGFONTA, 4)
12587     TEST_TYPE_ALIGN  (PLOGFONTA, 4)
12588     TEST_TARGET_SIZE (PLOGFONTA, 60)
12589     TEST_TARGET_ALIGN(PLOGFONTA, 4)
12590 }
12591
12592 static void test_pack_PLOGFONTW(void)
12593 {
12594     /* PLOGFONTW */
12595     TEST_TYPE_SIZE   (PLOGFONTW, 4)
12596     TEST_TYPE_ALIGN  (PLOGFONTW, 4)
12597     TEST_TARGET_SIZE (PLOGFONTW, 92)
12598     TEST_TARGET_ALIGN(PLOGFONTW, 4)
12599 }
12600
12601 static void test_pack_PMETAHEADER(void)
12602 {
12603     /* PMETAHEADER */
12604     TEST_TYPE_SIZE   (PMETAHEADER, 4)
12605     TEST_TYPE_ALIGN  (PMETAHEADER, 4)
12606     TEST_TARGET_SIZE (PMETAHEADER, 18)
12607     TEST_TARGET_ALIGN(PMETAHEADER, 2)
12608 }
12609
12610 static void test_pack_PMETARECORD(void)
12611 {
12612     /* PMETARECORD */
12613     TEST_TYPE_SIZE   (PMETARECORD, 4)
12614     TEST_TYPE_ALIGN  (PMETARECORD, 4)
12615     TEST_TARGET_SIZE (PMETARECORD, 8)
12616     TEST_TARGET_ALIGN(PMETARECORD, 4)
12617 }
12618
12619 static void test_pack_PNEWTEXTMETRICA(void)
12620 {
12621     /* PNEWTEXTMETRICA */
12622     TEST_TYPE_SIZE   (PNEWTEXTMETRICA, 4)
12623     TEST_TYPE_ALIGN  (PNEWTEXTMETRICA, 4)
12624     TEST_TARGET_SIZE (PNEWTEXTMETRICA, 72)
12625     TEST_TARGET_ALIGN(PNEWTEXTMETRICA, 4)
12626 }
12627
12628 static void test_pack_PNEWTEXTMETRICW(void)
12629 {
12630     /* PNEWTEXTMETRICW */
12631     TEST_TYPE_SIZE   (PNEWTEXTMETRICW, 4)
12632     TEST_TYPE_ALIGN  (PNEWTEXTMETRICW, 4)
12633     TEST_TARGET_SIZE (PNEWTEXTMETRICW, 76)
12634     TEST_TARGET_ALIGN(PNEWTEXTMETRICW, 4)
12635 }
12636
12637 static void test_pack_POINTFLOAT(void)
12638 {
12639     /* POINTFLOAT */
12640     TEST_TYPE_SIZE   (POINTFLOAT, 8)
12641     TEST_TYPE_ALIGN  (POINTFLOAT, 4)
12642     TEST_FIELD_SIZE  (POINTFLOAT, x, 4)
12643     TEST_FIELD_ALIGN (POINTFLOAT, x, 4)
12644     TEST_FIELD_OFFSET(POINTFLOAT, x, 0)
12645     TEST_FIELD_SIZE  (POINTFLOAT, y, 4)
12646     TEST_FIELD_ALIGN (POINTFLOAT, y, 4)
12647     TEST_FIELD_OFFSET(POINTFLOAT, y, 4)
12648 }
12649
12650 static void test_pack_POINTFX(void)
12651 {
12652     /* POINTFX */
12653     TEST_TYPE_SIZE   (POINTFX, 8)
12654     TEST_TYPE_ALIGN  (POINTFX, 2)
12655     TEST_FIELD_SIZE  (POINTFX, x, 4)
12656     TEST_FIELD_ALIGN (POINTFX, x, 2)
12657     TEST_FIELD_OFFSET(POINTFX, x, 0)
12658     TEST_FIELD_SIZE  (POINTFX, y, 4)
12659     TEST_FIELD_ALIGN (POINTFX, y, 2)
12660     TEST_FIELD_OFFSET(POINTFX, y, 4)
12661 }
12662
12663 static void test_pack_POLYTEXTA(void)
12664 {
12665     /* POLYTEXTA */
12666     TEST_TYPE_SIZE   (POLYTEXTA, 40)
12667     TEST_TYPE_ALIGN  (POLYTEXTA, 4)
12668     TEST_FIELD_SIZE  (POLYTEXTA, x, 4)
12669     TEST_FIELD_ALIGN (POLYTEXTA, x, 4)
12670     TEST_FIELD_OFFSET(POLYTEXTA, x, 0)
12671     TEST_FIELD_SIZE  (POLYTEXTA, y, 4)
12672     TEST_FIELD_ALIGN (POLYTEXTA, y, 4)
12673     TEST_FIELD_OFFSET(POLYTEXTA, y, 4)
12674     TEST_FIELD_SIZE  (POLYTEXTA, n, 4)
12675     TEST_FIELD_ALIGN (POLYTEXTA, n, 4)
12676     TEST_FIELD_OFFSET(POLYTEXTA, n, 8)
12677     TEST_FIELD_SIZE  (POLYTEXTA, lpstr, 4)
12678     TEST_FIELD_ALIGN (POLYTEXTA, lpstr, 4)
12679     TEST_FIELD_OFFSET(POLYTEXTA, lpstr, 12)
12680     TEST_FIELD_SIZE  (POLYTEXTA, uiFlags, 4)
12681     TEST_FIELD_ALIGN (POLYTEXTA, uiFlags, 4)
12682     TEST_FIELD_OFFSET(POLYTEXTA, uiFlags, 16)
12683     TEST_FIELD_SIZE  (POLYTEXTA, rcl, 16)
12684     TEST_FIELD_ALIGN (POLYTEXTA, rcl, 4)
12685     TEST_FIELD_OFFSET(POLYTEXTA, rcl, 20)
12686     TEST_FIELD_SIZE  (POLYTEXTA, pdx, 4)
12687     TEST_FIELD_ALIGN (POLYTEXTA, pdx, 4)
12688     TEST_FIELD_OFFSET(POLYTEXTA, pdx, 36)
12689 }
12690
12691 static void test_pack_POLYTEXTW(void)
12692 {
12693     /* POLYTEXTW */
12694     TEST_TYPE_SIZE   (POLYTEXTW, 40)
12695     TEST_TYPE_ALIGN  (POLYTEXTW, 4)
12696     TEST_FIELD_SIZE  (POLYTEXTW, x, 4)
12697     TEST_FIELD_ALIGN (POLYTEXTW, x, 4)
12698     TEST_FIELD_OFFSET(POLYTEXTW, x, 0)
12699     TEST_FIELD_SIZE  (POLYTEXTW, y, 4)
12700     TEST_FIELD_ALIGN (POLYTEXTW, y, 4)
12701     TEST_FIELD_OFFSET(POLYTEXTW, y, 4)
12702     TEST_FIELD_SIZE  (POLYTEXTW, n, 4)
12703     TEST_FIELD_ALIGN (POLYTEXTW, n, 4)
12704     TEST_FIELD_OFFSET(POLYTEXTW, n, 8)
12705     TEST_FIELD_SIZE  (POLYTEXTW, lpstr, 4)
12706     TEST_FIELD_ALIGN (POLYTEXTW, lpstr, 4)
12707     TEST_FIELD_OFFSET(POLYTEXTW, lpstr, 12)
12708     TEST_FIELD_SIZE  (POLYTEXTW, uiFlags, 4)
12709     TEST_FIELD_ALIGN (POLYTEXTW, uiFlags, 4)
12710     TEST_FIELD_OFFSET(POLYTEXTW, uiFlags, 16)
12711     TEST_FIELD_SIZE  (POLYTEXTW, rcl, 16)
12712     TEST_FIELD_ALIGN (POLYTEXTW, rcl, 4)
12713     TEST_FIELD_OFFSET(POLYTEXTW, rcl, 20)
12714     TEST_FIELD_SIZE  (POLYTEXTW, pdx, 4)
12715     TEST_FIELD_ALIGN (POLYTEXTW, pdx, 4)
12716     TEST_FIELD_OFFSET(POLYTEXTW, pdx, 36)
12717 }
12718
12719 static void test_pack_POUTLINETEXTMETRICA(void)
12720 {
12721     /* POUTLINETEXTMETRICA */
12722     TEST_TYPE_SIZE   (POUTLINETEXTMETRICA, 4)
12723     TEST_TYPE_ALIGN  (POUTLINETEXTMETRICA, 4)
12724     TEST_TARGET_SIZE (POUTLINETEXTMETRICA, 212)
12725     TEST_TARGET_ALIGN(POUTLINETEXTMETRICA, 4)
12726 }
12727
12728 static void test_pack_POUTLINETEXTMETRICW(void)
12729 {
12730     /* POUTLINETEXTMETRICW */
12731     TEST_TYPE_SIZE   (POUTLINETEXTMETRICW, 4)
12732     TEST_TYPE_ALIGN  (POUTLINETEXTMETRICW, 4)
12733     TEST_TARGET_SIZE (POUTLINETEXTMETRICW, 216)
12734     TEST_TARGET_ALIGN(POUTLINETEXTMETRICW, 4)
12735 }
12736
12737 static void test_pack_PPELARRAY(void)
12738 {
12739     /* PPELARRAY */
12740     TEST_TYPE_SIZE   (PPELARRAY, 4)
12741     TEST_TYPE_ALIGN  (PPELARRAY, 4)
12742     TEST_TARGET_SIZE (PPELARRAY, 20)
12743     TEST_TARGET_ALIGN(PPELARRAY, 4)
12744 }
12745
12746 static void test_pack_PPIXELFORMATDESCRIPTOR(void)
12747 {
12748     /* PPIXELFORMATDESCRIPTOR */
12749     TEST_TYPE_SIZE   (PPIXELFORMATDESCRIPTOR, 4)
12750     TEST_TYPE_ALIGN  (PPIXELFORMATDESCRIPTOR, 4)
12751     TEST_TARGET_SIZE (PPIXELFORMATDESCRIPTOR, 40)
12752     TEST_TARGET_ALIGN(PPIXELFORMATDESCRIPTOR, 4)
12753 }
12754
12755 static void test_pack_PPOINTFLOAT(void)
12756 {
12757     /* PPOINTFLOAT */
12758     TEST_TYPE_SIZE   (PPOINTFLOAT, 4)
12759     TEST_TYPE_ALIGN  (PPOINTFLOAT, 4)
12760     TEST_TARGET_SIZE (PPOINTFLOAT, 8)
12761     TEST_TARGET_ALIGN(PPOINTFLOAT, 4)
12762 }
12763
12764 static void test_pack_PPOLYTEXTA(void)
12765 {
12766     /* PPOLYTEXTA */
12767     TEST_TYPE_SIZE   (PPOLYTEXTA, 4)
12768     TEST_TYPE_ALIGN  (PPOLYTEXTA, 4)
12769     TEST_TARGET_SIZE (PPOLYTEXTA, 40)
12770     TEST_TARGET_ALIGN(PPOLYTEXTA, 4)
12771 }
12772
12773 static void test_pack_PPOLYTEXTW(void)
12774 {
12775     /* PPOLYTEXTW */
12776     TEST_TYPE_SIZE   (PPOLYTEXTW, 4)
12777     TEST_TYPE_ALIGN  (PPOLYTEXTW, 4)
12778     TEST_TARGET_SIZE (PPOLYTEXTW, 40)
12779     TEST_TARGET_ALIGN(PPOLYTEXTW, 4)
12780 }
12781
12782 static void test_pack_PRGNDATA(void)
12783 {
12784     /* PRGNDATA */
12785     TEST_TYPE_SIZE   (PRGNDATA, 4)
12786     TEST_TYPE_ALIGN  (PRGNDATA, 4)
12787     TEST_TARGET_SIZE (PRGNDATA, 36)
12788     TEST_TARGET_ALIGN(PRGNDATA, 4)
12789 }
12790
12791 static void test_pack_PRGNDATAHEADER(void)
12792 {
12793     /* PRGNDATAHEADER */
12794     TEST_TYPE_SIZE   (PRGNDATAHEADER, 4)
12795     TEST_TYPE_ALIGN  (PRGNDATAHEADER, 4)
12796     TEST_TARGET_SIZE (PRGNDATAHEADER, 32)
12797     TEST_TARGET_ALIGN(PRGNDATAHEADER, 4)
12798 }
12799
12800 static void test_pack_PTEXTMETRICA(void)
12801 {
12802     /* PTEXTMETRICA */
12803     TEST_TYPE_SIZE   (PTEXTMETRICA, 4)
12804     TEST_TYPE_ALIGN  (PTEXTMETRICA, 4)
12805     TEST_TARGET_SIZE (PTEXTMETRICA, 56)
12806     TEST_TARGET_ALIGN(PTEXTMETRICA, 4)
12807 }
12808
12809 static void test_pack_PTEXTMETRICW(void)
12810 {
12811     /* PTEXTMETRICW */
12812     TEST_TYPE_SIZE   (PTEXTMETRICW, 4)
12813     TEST_TYPE_ALIGN  (PTEXTMETRICW, 4)
12814     TEST_TARGET_SIZE (PTEXTMETRICW, 60)
12815     TEST_TARGET_ALIGN(PTEXTMETRICW, 4)
12816 }
12817
12818 static void test_pack_PTRIVERTEX(void)
12819 {
12820     /* PTRIVERTEX */
12821     TEST_TYPE_SIZE   (PTRIVERTEX, 4)
12822     TEST_TYPE_ALIGN  (PTRIVERTEX, 4)
12823     TEST_TARGET_SIZE (PTRIVERTEX, 16)
12824     TEST_TARGET_ALIGN(PTRIVERTEX, 4)
12825 }
12826
12827 static void test_pack_PXFORM(void)
12828 {
12829     /* PXFORM */
12830     TEST_TYPE_SIZE   (PXFORM, 4)
12831     TEST_TYPE_ALIGN  (PXFORM, 4)
12832     TEST_TARGET_SIZE (PXFORM, 24)
12833     TEST_TARGET_ALIGN(PXFORM, 4)
12834 }
12835
12836 static void test_pack_RASTERIZER_STATUS(void)
12837 {
12838     /* RASTERIZER_STATUS */
12839     TEST_TYPE_SIZE   (RASTERIZER_STATUS, 6)
12840     TEST_TYPE_ALIGN  (RASTERIZER_STATUS, 2)
12841     TEST_FIELD_SIZE  (RASTERIZER_STATUS, nSize, 2)
12842     TEST_FIELD_ALIGN (RASTERIZER_STATUS, nSize, 2)
12843     TEST_FIELD_OFFSET(RASTERIZER_STATUS, nSize, 0)
12844     TEST_FIELD_SIZE  (RASTERIZER_STATUS, wFlags, 2)
12845     TEST_FIELD_ALIGN (RASTERIZER_STATUS, wFlags, 2)
12846     TEST_FIELD_OFFSET(RASTERIZER_STATUS, wFlags, 2)
12847     TEST_FIELD_SIZE  (RASTERIZER_STATUS, nLanguageID, 2)
12848     TEST_FIELD_ALIGN (RASTERIZER_STATUS, nLanguageID, 2)
12849     TEST_FIELD_OFFSET(RASTERIZER_STATUS, nLanguageID, 4)
12850 }
12851
12852 static void test_pack_RGBQUAD(void)
12853 {
12854     /* RGBQUAD */
12855     TEST_TYPE_SIZE   (RGBQUAD, 4)
12856     TEST_TYPE_ALIGN  (RGBQUAD, 1)
12857     TEST_FIELD_SIZE  (RGBQUAD, rgbBlue, 1)
12858     TEST_FIELD_ALIGN (RGBQUAD, rgbBlue, 1)
12859     TEST_FIELD_OFFSET(RGBQUAD, rgbBlue, 0)
12860     TEST_FIELD_SIZE  (RGBQUAD, rgbGreen, 1)
12861     TEST_FIELD_ALIGN (RGBQUAD, rgbGreen, 1)
12862     TEST_FIELD_OFFSET(RGBQUAD, rgbGreen, 1)
12863     TEST_FIELD_SIZE  (RGBQUAD, rgbRed, 1)
12864     TEST_FIELD_ALIGN (RGBQUAD, rgbRed, 1)
12865     TEST_FIELD_OFFSET(RGBQUAD, rgbRed, 2)
12866     TEST_FIELD_SIZE  (RGBQUAD, rgbReserved, 1)
12867     TEST_FIELD_ALIGN (RGBQUAD, rgbReserved, 1)
12868     TEST_FIELD_OFFSET(RGBQUAD, rgbReserved, 3)
12869 }
12870
12871 static void test_pack_RGBTRIPLE(void)
12872 {
12873     /* RGBTRIPLE */
12874     TEST_TYPE_SIZE   (RGBTRIPLE, 3)
12875     TEST_TYPE_ALIGN  (RGBTRIPLE, 1)
12876     TEST_FIELD_SIZE  (RGBTRIPLE, rgbtBlue, 1)
12877     TEST_FIELD_ALIGN (RGBTRIPLE, rgbtBlue, 1)
12878     TEST_FIELD_OFFSET(RGBTRIPLE, rgbtBlue, 0)
12879     TEST_FIELD_SIZE  (RGBTRIPLE, rgbtGreen, 1)
12880     TEST_FIELD_ALIGN (RGBTRIPLE, rgbtGreen, 1)
12881     TEST_FIELD_OFFSET(RGBTRIPLE, rgbtGreen, 1)
12882     TEST_FIELD_SIZE  (RGBTRIPLE, rgbtRed, 1)
12883     TEST_FIELD_ALIGN (RGBTRIPLE, rgbtRed, 1)
12884     TEST_FIELD_OFFSET(RGBTRIPLE, rgbtRed, 2)
12885 }
12886
12887 static void test_pack_RGNDATA(void)
12888 {
12889     /* RGNDATA */
12890     TEST_TYPE_SIZE   (RGNDATA, 36)
12891     TEST_TYPE_ALIGN  (RGNDATA, 4)
12892     TEST_FIELD_SIZE  (RGNDATA, rdh, 32)
12893     TEST_FIELD_ALIGN (RGNDATA, rdh, 4)
12894     TEST_FIELD_OFFSET(RGNDATA, rdh, 0)
12895     TEST_FIELD_SIZE  (RGNDATA, Buffer, 1)
12896     TEST_FIELD_ALIGN (RGNDATA, Buffer, 1)
12897     TEST_FIELD_OFFSET(RGNDATA, Buffer, 32)
12898 }
12899
12900 static void test_pack_RGNDATAHEADER(void)
12901 {
12902     /* RGNDATAHEADER */
12903     TEST_TYPE_SIZE   (RGNDATAHEADER, 32)
12904     TEST_TYPE_ALIGN  (RGNDATAHEADER, 4)
12905     TEST_FIELD_SIZE  (RGNDATAHEADER, dwSize, 4)
12906     TEST_FIELD_ALIGN (RGNDATAHEADER, dwSize, 4)
12907     TEST_FIELD_OFFSET(RGNDATAHEADER, dwSize, 0)
12908     TEST_FIELD_SIZE  (RGNDATAHEADER, iType, 4)
12909     TEST_FIELD_ALIGN (RGNDATAHEADER, iType, 4)
12910     TEST_FIELD_OFFSET(RGNDATAHEADER, iType, 4)
12911     TEST_FIELD_SIZE  (RGNDATAHEADER, nCount, 4)
12912     TEST_FIELD_ALIGN (RGNDATAHEADER, nCount, 4)
12913     TEST_FIELD_OFFSET(RGNDATAHEADER, nCount, 8)
12914     TEST_FIELD_SIZE  (RGNDATAHEADER, nRgnSize, 4)
12915     TEST_FIELD_ALIGN (RGNDATAHEADER, nRgnSize, 4)
12916     TEST_FIELD_OFFSET(RGNDATAHEADER, nRgnSize, 12)
12917     TEST_FIELD_SIZE  (RGNDATAHEADER, rcBound, 16)
12918     TEST_FIELD_ALIGN (RGNDATAHEADER, rcBound, 4)
12919     TEST_FIELD_OFFSET(RGNDATAHEADER, rcBound, 16)
12920 }
12921
12922 static void test_pack_TEXTMETRICA(void)
12923 {
12924     /* TEXTMETRICA */
12925     TEST_TYPE_SIZE   (TEXTMETRICA, 56)
12926     TEST_TYPE_ALIGN  (TEXTMETRICA, 4)
12927     TEST_FIELD_SIZE  (TEXTMETRICA, tmHeight, 4)
12928     TEST_FIELD_ALIGN (TEXTMETRICA, tmHeight, 4)
12929     TEST_FIELD_OFFSET(TEXTMETRICA, tmHeight, 0)
12930     TEST_FIELD_SIZE  (TEXTMETRICA, tmAscent, 4)
12931     TEST_FIELD_ALIGN (TEXTMETRICA, tmAscent, 4)
12932     TEST_FIELD_OFFSET(TEXTMETRICA, tmAscent, 4)
12933     TEST_FIELD_SIZE  (TEXTMETRICA, tmDescent, 4)
12934     TEST_FIELD_ALIGN (TEXTMETRICA, tmDescent, 4)
12935     TEST_FIELD_OFFSET(TEXTMETRICA, tmDescent, 8)
12936     TEST_FIELD_SIZE  (TEXTMETRICA, tmInternalLeading, 4)
12937     TEST_FIELD_ALIGN (TEXTMETRICA, tmInternalLeading, 4)
12938     TEST_FIELD_OFFSET(TEXTMETRICA, tmInternalLeading, 12)
12939     TEST_FIELD_SIZE  (TEXTMETRICA, tmExternalLeading, 4)
12940     TEST_FIELD_ALIGN (TEXTMETRICA, tmExternalLeading, 4)
12941     TEST_FIELD_OFFSET(TEXTMETRICA, tmExternalLeading, 16)
12942     TEST_FIELD_SIZE  (TEXTMETRICA, tmAveCharWidth, 4)
12943     TEST_FIELD_ALIGN (TEXTMETRICA, tmAveCharWidth, 4)
12944     TEST_FIELD_OFFSET(TEXTMETRICA, tmAveCharWidth, 20)
12945     TEST_FIELD_SIZE  (TEXTMETRICA, tmMaxCharWidth, 4)
12946     TEST_FIELD_ALIGN (TEXTMETRICA, tmMaxCharWidth, 4)
12947     TEST_FIELD_OFFSET(TEXTMETRICA, tmMaxCharWidth, 24)
12948     TEST_FIELD_SIZE  (TEXTMETRICA, tmWeight, 4)
12949     TEST_FIELD_ALIGN (TEXTMETRICA, tmWeight, 4)
12950     TEST_FIELD_OFFSET(TEXTMETRICA, tmWeight, 28)
12951     TEST_FIELD_SIZE  (TEXTMETRICA, tmOverhang, 4)
12952     TEST_FIELD_ALIGN (TEXTMETRICA, tmOverhang, 4)
12953     TEST_FIELD_OFFSET(TEXTMETRICA, tmOverhang, 32)
12954     TEST_FIELD_SIZE  (TEXTMETRICA, tmDigitizedAspectX, 4)
12955     TEST_FIELD_ALIGN (TEXTMETRICA, tmDigitizedAspectX, 4)
12956     TEST_FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectX, 36)
12957     TEST_FIELD_SIZE  (TEXTMETRICA, tmDigitizedAspectY, 4)
12958     TEST_FIELD_ALIGN (TEXTMETRICA, tmDigitizedAspectY, 4)
12959     TEST_FIELD_OFFSET(TEXTMETRICA, tmDigitizedAspectY, 40)
12960     TEST_FIELD_SIZE  (TEXTMETRICA, tmFirstChar, 1)
12961     TEST_FIELD_ALIGN (TEXTMETRICA, tmFirstChar, 1)
12962     TEST_FIELD_OFFSET(TEXTMETRICA, tmFirstChar, 44)
12963     TEST_FIELD_SIZE  (TEXTMETRICA, tmLastChar, 1)
12964     TEST_FIELD_ALIGN (TEXTMETRICA, tmLastChar, 1)
12965     TEST_FIELD_OFFSET(TEXTMETRICA, tmLastChar, 45)
12966     TEST_FIELD_SIZE  (TEXTMETRICA, tmDefaultChar, 1)
12967     TEST_FIELD_ALIGN (TEXTMETRICA, tmDefaultChar, 1)
12968     TEST_FIELD_OFFSET(TEXTMETRICA, tmDefaultChar, 46)
12969     TEST_FIELD_SIZE  (TEXTMETRICA, tmBreakChar, 1)
12970     TEST_FIELD_ALIGN (TEXTMETRICA, tmBreakChar, 1)
12971     TEST_FIELD_OFFSET(TEXTMETRICA, tmBreakChar, 47)
12972     TEST_FIELD_SIZE  (TEXTMETRICA, tmItalic, 1)
12973     TEST_FIELD_ALIGN (TEXTMETRICA, tmItalic, 1)
12974     TEST_FIELD_OFFSET(TEXTMETRICA, tmItalic, 48)
12975     TEST_FIELD_SIZE  (TEXTMETRICA, tmUnderlined, 1)
12976     TEST_FIELD_ALIGN (TEXTMETRICA, tmUnderlined, 1)
12977     TEST_FIELD_OFFSET(TEXTMETRICA, tmUnderlined, 49)
12978     TEST_FIELD_SIZE  (TEXTMETRICA, tmStruckOut, 1)
12979     TEST_FIELD_ALIGN (TEXTMETRICA, tmStruckOut, 1)
12980     TEST_FIELD_OFFSET(TEXTMETRICA, tmStruckOut, 50)
12981     TEST_FIELD_SIZE  (TEXTMETRICA, tmPitchAndFamily, 1)
12982     TEST_FIELD_ALIGN (TEXTMETRICA, tmPitchAndFamily, 1)
12983     TEST_FIELD_OFFSET(TEXTMETRICA, tmPitchAndFamily, 51)
12984     TEST_FIELD_SIZE  (TEXTMETRICA, tmCharSet, 1)
12985     TEST_FIELD_ALIGN (TEXTMETRICA, tmCharSet, 1)
12986     TEST_FIELD_OFFSET(TEXTMETRICA, tmCharSet, 52)
12987 }
12988
12989 static void test_pack_TEXTMETRICW(void)
12990 {
12991     /* TEXTMETRICW */
12992     TEST_TYPE_SIZE   (TEXTMETRICW, 60)
12993     TEST_TYPE_ALIGN  (TEXTMETRICW, 4)
12994     TEST_FIELD_SIZE  (TEXTMETRICW, tmHeight, 4)
12995     TEST_FIELD_ALIGN (TEXTMETRICW, tmHeight, 4)
12996     TEST_FIELD_OFFSET(TEXTMETRICW, tmHeight, 0)
12997     TEST_FIELD_SIZE  (TEXTMETRICW, tmAscent, 4)
12998     TEST_FIELD_ALIGN (TEXTMETRICW, tmAscent, 4)
12999     TEST_FIELD_OFFSET(TEXTMETRICW, tmAscent, 4)
13000     TEST_FIELD_SIZE  (TEXTMETRICW, tmDescent, 4)
13001     TEST_FIELD_ALIGN (TEXTMETRICW, tmDescent, 4)
13002     TEST_FIELD_OFFSET(TEXTMETRICW, tmDescent, 8)
13003     TEST_FIELD_SIZE  (TEXTMETRICW, tmInternalLeading, 4)
13004     TEST_FIELD_ALIGN (TEXTMETRICW, tmInternalLeading, 4)
13005     TEST_FIELD_OFFSET(TEXTMETRICW, tmInternalLeading, 12)
13006     TEST_FIELD_SIZE  (TEXTMETRICW, tmExternalLeading, 4)
13007     TEST_FIELD_ALIGN (TEXTMETRICW, tmExternalLeading, 4)
13008     TEST_FIELD_OFFSET(TEXTMETRICW, tmExternalLeading, 16)
13009     TEST_FIELD_SIZE  (TEXTMETRICW, tmAveCharWidth, 4)
13010     TEST_FIELD_ALIGN (TEXTMETRICW, tmAveCharWidth, 4)
13011     TEST_FIELD_OFFSET(TEXTMETRICW, tmAveCharWidth, 20)
13012     TEST_FIELD_SIZE  (TEXTMETRICW, tmMaxCharWidth, 4)
13013     TEST_FIELD_ALIGN (TEXTMETRICW, tmMaxCharWidth, 4)
13014     TEST_FIELD_OFFSET(TEXTMETRICW, tmMaxCharWidth, 24)
13015     TEST_FIELD_SIZE  (TEXTMETRICW, tmWeight, 4)
13016     TEST_FIELD_ALIGN (TEXTMETRICW, tmWeight, 4)
13017     TEST_FIELD_OFFSET(TEXTMETRICW, tmWeight, 28)
13018     TEST_FIELD_SIZE  (TEXTMETRICW, tmOverhang, 4)
13019     TEST_FIELD_ALIGN (TEXTMETRICW, tmOverhang, 4)
13020     TEST_FIELD_OFFSET(TEXTMETRICW, tmOverhang, 32)
13021     TEST_FIELD_SIZE  (TEXTMETRICW, tmDigitizedAspectX, 4)
13022     TEST_FIELD_ALIGN (TEXTMETRICW, tmDigitizedAspectX, 4)
13023     TEST_FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectX, 36)
13024     TEST_FIELD_SIZE  (TEXTMETRICW, tmDigitizedAspectY, 4)
13025     TEST_FIELD_ALIGN (TEXTMETRICW, tmDigitizedAspectY, 4)
13026     TEST_FIELD_OFFSET(TEXTMETRICW, tmDigitizedAspectY, 40)
13027     TEST_FIELD_SIZE  (TEXTMETRICW, tmFirstChar, 2)
13028     TEST_FIELD_ALIGN (TEXTMETRICW, tmFirstChar, 2)
13029     TEST_FIELD_OFFSET(TEXTMETRICW, tmFirstChar, 44)
13030     TEST_FIELD_SIZE  (TEXTMETRICW, tmLastChar, 2)
13031     TEST_FIELD_ALIGN (TEXTMETRICW, tmLastChar, 2)
13032     TEST_FIELD_OFFSET(TEXTMETRICW, tmLastChar, 46)
13033     TEST_FIELD_SIZE  (TEXTMETRICW, tmDefaultChar, 2)
13034     TEST_FIELD_ALIGN (TEXTMETRICW, tmDefaultChar, 2)
13035     TEST_FIELD_OFFSET(TEXTMETRICW, tmDefaultChar, 48)
13036     TEST_FIELD_SIZE  (TEXTMETRICW, tmBreakChar, 2)
13037     TEST_FIELD_ALIGN (TEXTMETRICW, tmBreakChar, 2)
13038     TEST_FIELD_OFFSET(TEXTMETRICW, tmBreakChar, 50)
13039     TEST_FIELD_SIZE  (TEXTMETRICW, tmItalic, 1)
13040     TEST_FIELD_ALIGN (TEXTMETRICW, tmItalic, 1)
13041     TEST_FIELD_OFFSET(TEXTMETRICW, tmItalic, 52)
13042     TEST_FIELD_SIZE  (TEXTMETRICW, tmUnderlined, 1)
13043     TEST_FIELD_ALIGN (TEXTMETRICW, tmUnderlined, 1)
13044     TEST_FIELD_OFFSET(TEXTMETRICW, tmUnderlined, 53)
13045     TEST_FIELD_SIZE  (TEXTMETRICW, tmStruckOut, 1)
13046     TEST_FIELD_ALIGN (TEXTMETRICW, tmStruckOut, 1)
13047     TEST_FIELD_OFFSET(TEXTMETRICW, tmStruckOut, 54)
13048     TEST_FIELD_SIZE  (TEXTMETRICW, tmPitchAndFamily, 1)
13049     TEST_FIELD_ALIGN (TEXTMETRICW, tmPitchAndFamily, 1)
13050     TEST_FIELD_OFFSET(TEXTMETRICW, tmPitchAndFamily, 55)
13051     TEST_FIELD_SIZE  (TEXTMETRICW, tmCharSet, 1)
13052     TEST_FIELD_ALIGN (TEXTMETRICW, tmCharSet, 1)
13053     TEST_FIELD_OFFSET(TEXTMETRICW, tmCharSet, 56)
13054 }
13055
13056 static void test_pack_TRIVERTEX(void)
13057 {
13058     /* TRIVERTEX */
13059     TEST_TYPE_SIZE   (TRIVERTEX, 16)
13060     TEST_TYPE_ALIGN  (TRIVERTEX, 4)
13061     TEST_FIELD_SIZE  (TRIVERTEX, x, 4)
13062     TEST_FIELD_ALIGN (TRIVERTEX, x, 4)
13063     TEST_FIELD_OFFSET(TRIVERTEX, x, 0)
13064     TEST_FIELD_SIZE  (TRIVERTEX, y, 4)
13065     TEST_FIELD_ALIGN (TRIVERTEX, y, 4)
13066     TEST_FIELD_OFFSET(TRIVERTEX, y, 4)
13067     TEST_FIELD_SIZE  (TRIVERTEX, Red, 2)
13068     TEST_FIELD_ALIGN (TRIVERTEX, Red, 2)
13069     TEST_FIELD_OFFSET(TRIVERTEX, Red, 8)
13070     TEST_FIELD_SIZE  (TRIVERTEX, Green, 2)
13071     TEST_FIELD_ALIGN (TRIVERTEX, Green, 2)
13072     TEST_FIELD_OFFSET(TRIVERTEX, Green, 10)
13073     TEST_FIELD_SIZE  (TRIVERTEX, Blue, 2)
13074     TEST_FIELD_ALIGN (TRIVERTEX, Blue, 2)
13075     TEST_FIELD_OFFSET(TRIVERTEX, Blue, 12)
13076     TEST_FIELD_SIZE  (TRIVERTEX, Alpha, 2)
13077     TEST_FIELD_ALIGN (TRIVERTEX, Alpha, 2)
13078     TEST_FIELD_OFFSET(TRIVERTEX, Alpha, 14)
13079 }
13080
13081 static void test_pack_TTPOLYCURVE(void)
13082 {
13083     /* TTPOLYCURVE */
13084     TEST_TYPE_SIZE   (TTPOLYCURVE, 12)
13085     TEST_TYPE_ALIGN  (TTPOLYCURVE, 2)
13086     TEST_FIELD_SIZE  (TTPOLYCURVE, wType, 2)
13087     TEST_FIELD_ALIGN (TTPOLYCURVE, wType, 2)
13088     TEST_FIELD_OFFSET(TTPOLYCURVE, wType, 0)
13089     TEST_FIELD_SIZE  (TTPOLYCURVE, cpfx, 2)
13090     TEST_FIELD_ALIGN (TTPOLYCURVE, cpfx, 2)
13091     TEST_FIELD_OFFSET(TTPOLYCURVE, cpfx, 2)
13092     TEST_FIELD_SIZE  (TTPOLYCURVE, apfx, 8)
13093     TEST_FIELD_ALIGN (TTPOLYCURVE, apfx, 2)
13094     TEST_FIELD_OFFSET(TTPOLYCURVE, apfx, 4)
13095 }
13096
13097 static void test_pack_TTPOLYGONHEADER(void)
13098 {
13099     /* TTPOLYGONHEADER */
13100     TEST_TYPE_SIZE   (TTPOLYGONHEADER, 16)
13101     TEST_TYPE_ALIGN  (TTPOLYGONHEADER, 4)
13102     TEST_FIELD_SIZE  (TTPOLYGONHEADER, cb, 4)
13103     TEST_FIELD_ALIGN (TTPOLYGONHEADER, cb, 4)
13104     TEST_FIELD_OFFSET(TTPOLYGONHEADER, cb, 0)
13105     TEST_FIELD_SIZE  (TTPOLYGONHEADER, dwType, 4)
13106     TEST_FIELD_ALIGN (TTPOLYGONHEADER, dwType, 4)
13107     TEST_FIELD_OFFSET(TTPOLYGONHEADER, dwType, 4)
13108     TEST_FIELD_SIZE  (TTPOLYGONHEADER, pfxStart, 8)
13109     TEST_FIELD_ALIGN (TTPOLYGONHEADER, pfxStart, 2)
13110     TEST_FIELD_OFFSET(TTPOLYGONHEADER, pfxStart, 8)
13111 }
13112
13113 static void test_pack_XFORM(void)
13114 {
13115     /* XFORM */
13116     TEST_TYPE_SIZE   (XFORM, 24)
13117     TEST_TYPE_ALIGN  (XFORM, 4)
13118     TEST_FIELD_SIZE  (XFORM, eM11, 4)
13119     TEST_FIELD_ALIGN (XFORM, eM11, 4)
13120     TEST_FIELD_OFFSET(XFORM, eM11, 0)
13121     TEST_FIELD_SIZE  (XFORM, eM12, 4)
13122     TEST_FIELD_ALIGN (XFORM, eM12, 4)
13123     TEST_FIELD_OFFSET(XFORM, eM12, 4)
13124     TEST_FIELD_SIZE  (XFORM, eM21, 4)
13125     TEST_FIELD_ALIGN (XFORM, eM21, 4)
13126     TEST_FIELD_OFFSET(XFORM, eM21, 8)
13127     TEST_FIELD_SIZE  (XFORM, eM22, 4)
13128     TEST_FIELD_ALIGN (XFORM, eM22, 4)
13129     TEST_FIELD_OFFSET(XFORM, eM22, 12)
13130     TEST_FIELD_SIZE  (XFORM, eDx, 4)
13131     TEST_FIELD_ALIGN (XFORM, eDx, 4)
13132     TEST_FIELD_OFFSET(XFORM, eDx, 16)
13133     TEST_FIELD_SIZE  (XFORM, eDy, 4)
13134     TEST_FIELD_ALIGN (XFORM, eDy, 4)
13135     TEST_FIELD_OFFSET(XFORM, eDy, 20)
13136 }
13137
13138 #endif /* _WIN64 */
13139
13140 static void test_pack(void)
13141 {
13142     test_pack_ABC();
13143     test_pack_ABCFLOAT();
13144     test_pack_ABORTPROC();
13145     test_pack_BITMAP();
13146     test_pack_BITMAPCOREHEADER();
13147     test_pack_BITMAPCOREINFO();
13148     test_pack_BITMAPFILEHEADER();
13149     test_pack_BITMAPINFO();
13150     test_pack_BITMAPINFOHEADER();
13151     test_pack_BITMAPV4HEADER();
13152     test_pack_BITMAPV5HEADER();
13153     test_pack_BLENDFUNCTION();
13154     test_pack_CHARSETINFO();
13155     test_pack_CIEXYZ();
13156     test_pack_CIEXYZTRIPLE();
13157     test_pack_COLOR16();
13158     test_pack_COLORADJUSTMENT();
13159     test_pack_DEVMODEA();
13160     test_pack_DEVMODEW();
13161     test_pack_DIBSECTION();
13162     test_pack_DISPLAY_DEVICEA();
13163     test_pack_DISPLAY_DEVICEW();
13164     test_pack_DOCINFOA();
13165     test_pack_DOCINFOW();
13166     test_pack_EMR();
13167     test_pack_EMRABORTPATH();
13168     test_pack_EMRANGLEARC();
13169     test_pack_EMRARC();
13170     test_pack_EMRARCTO();
13171     test_pack_EMRBEGINPATH();
13172     test_pack_EMRBITBLT();
13173     test_pack_EMRCHORD();
13174     test_pack_EMRCLOSEFIGURE();
13175     test_pack_EMRCREATEBRUSHINDIRECT();
13176     test_pack_EMRCREATECOLORSPACE();
13177     test_pack_EMRCREATECOLORSPACEW();
13178     test_pack_EMRCREATEDIBPATTERNBRUSHPT();
13179     test_pack_EMRCREATEMONOBRUSH();
13180     test_pack_EMRCREATEPEN();
13181     test_pack_EMRDELETECOLORSPACE();
13182     test_pack_EMRDELETEOBJECT();
13183     test_pack_EMRELLIPSE();
13184     test_pack_EMRENDPATH();
13185     test_pack_EMREOF();
13186     test_pack_EMREXCLUDECLIPRECT();
13187     test_pack_EMREXTCREATEFONTINDIRECTW();
13188     test_pack_EMREXTCREATEPEN();
13189     test_pack_EMREXTFLOODFILL();
13190     test_pack_EMREXTSELECTCLIPRGN();
13191     test_pack_EMREXTTEXTOUTA();
13192     test_pack_EMREXTTEXTOUTW();
13193     test_pack_EMRFILLPATH();
13194     test_pack_EMRFILLRGN();
13195     test_pack_EMRFLATTENPATH();
13196     test_pack_EMRFORMAT();
13197     test_pack_EMRFRAMERGN();
13198     test_pack_EMRGDICOMMENT();
13199     test_pack_EMRGLSBOUNDEDRECORD();
13200     test_pack_EMRGLSRECORD();
13201     test_pack_EMRINTERSECTCLIPRECT();
13202     test_pack_EMRINVERTRGN();
13203     test_pack_EMRLINETO();
13204     test_pack_EMRMASKBLT();
13205     test_pack_EMRMODIFYWORLDTRANSFORM();
13206     test_pack_EMRMOVETOEX();
13207     test_pack_EMROFFSETCLIPRGN();
13208     test_pack_EMRPAINTRGN();
13209     test_pack_EMRPIE();
13210     test_pack_EMRPIXELFORMAT();
13211     test_pack_EMRPLGBLT();
13212     test_pack_EMRPOLYBEZIER();
13213     test_pack_EMRPOLYBEZIER16();
13214     test_pack_EMRPOLYBEZIERTO();
13215     test_pack_EMRPOLYBEZIERTO16();
13216     test_pack_EMRPOLYDRAW();
13217     test_pack_EMRPOLYDRAW16();
13218     test_pack_EMRPOLYGON();
13219     test_pack_EMRPOLYGON16();
13220     test_pack_EMRPOLYLINE();
13221     test_pack_EMRPOLYLINE16();
13222     test_pack_EMRPOLYLINETO();
13223     test_pack_EMRPOLYLINETO16();
13224     test_pack_EMRPOLYPOLYGON();
13225     test_pack_EMRPOLYPOLYGON16();
13226     test_pack_EMRPOLYPOLYLINE();
13227     test_pack_EMRPOLYPOLYLINE16();
13228     test_pack_EMRPOLYTEXTOUTA();
13229     test_pack_EMRPOLYTEXTOUTW();
13230     test_pack_EMRREALIZEPALETTE();
13231     test_pack_EMRRECTANGLE();
13232     test_pack_EMRRESIZEPALETTE();
13233     test_pack_EMRRESTOREDC();
13234     test_pack_EMRROUNDRECT();
13235     test_pack_EMRSAVEDC();
13236     test_pack_EMRSCALEVIEWPORTEXTEX();
13237     test_pack_EMRSCALEWINDOWEXTEX();
13238     test_pack_EMRSELECTCLIPPATH();
13239     test_pack_EMRSELECTCOLORSPACE();
13240     test_pack_EMRSELECTOBJECT();
13241     test_pack_EMRSELECTPALETTE();
13242     test_pack_EMRSETARCDIRECTION();
13243     test_pack_EMRSETBKCOLOR();
13244     test_pack_EMRSETBKMODE();
13245     test_pack_EMRSETBRUSHORGEX();
13246     test_pack_EMRSETCOLORADJUSTMENT();
13247     test_pack_EMRSETCOLORSPACE();
13248     test_pack_EMRSETDIBITSTODEVICE();
13249     test_pack_EMRSETICMMODE();
13250     test_pack_EMRSETLAYOUT();
13251     test_pack_EMRSETMAPMODE();
13252     test_pack_EMRSETMAPPERFLAGS();
13253     test_pack_EMRSETMETARGN();
13254     test_pack_EMRSETMITERLIMIT();
13255     test_pack_EMRSETPIXELV();
13256     test_pack_EMRSETPOLYFILLMODE();
13257     test_pack_EMRSETROP2();
13258     test_pack_EMRSETSTRETCHBLTMODE();
13259     test_pack_EMRSETTEXTALIGN();
13260     test_pack_EMRSETTEXTCOLOR();
13261     test_pack_EMRSETVIEWPORTEXTEX();
13262     test_pack_EMRSETVIEWPORTORGEX();
13263     test_pack_EMRSETWINDOWEXTEX();
13264     test_pack_EMRSETWINDOWORGEX();
13265     test_pack_EMRSETWORLDTRANSFORM();
13266     test_pack_EMRSTRETCHBLT();
13267     test_pack_EMRSTRETCHDIBITS();
13268     test_pack_EMRSTROKEANDFILLPATH();
13269     test_pack_EMRSTROKEPATH();
13270     test_pack_EMRTEXT();
13271     test_pack_EMRWIDENPATH();
13272     test_pack_ENHMETAHEADER();
13273     test_pack_ENHMETARECORD();
13274     test_pack_ENHMFENUMPROC();
13275     test_pack_ENUMLOGFONTA();
13276     test_pack_ENUMLOGFONTEXA();
13277     test_pack_ENUMLOGFONTEXW();
13278     test_pack_ENUMLOGFONTW();
13279     test_pack_EXTLOGFONTA();
13280     test_pack_EXTLOGFONTW();
13281     test_pack_EXTLOGPEN();
13282     test_pack_FIXED();
13283     test_pack_FONTENUMPROCA();
13284     test_pack_FONTENUMPROCW();
13285     test_pack_FONTSIGNATURE();
13286     test_pack_FXPT16DOT16();
13287     test_pack_FXPT2DOT30();
13288     test_pack_GCP_RESULTSA();
13289     test_pack_GCP_RESULTSW();
13290     test_pack_GLYPHMETRICS();
13291     test_pack_GLYPHMETRICSFLOAT();
13292     test_pack_GOBJENUMPROC();
13293     test_pack_GRADIENT_RECT();
13294     test_pack_GRADIENT_TRIANGLE();
13295     test_pack_HANDLETABLE();
13296     test_pack_ICMENUMPROCA();
13297     test_pack_ICMENUMPROCW();
13298     test_pack_KERNINGPAIR();
13299     test_pack_LAYERPLANEDESCRIPTOR();
13300     test_pack_LCSCSTYPE();
13301     test_pack_LCSGAMUTMATCH();
13302     test_pack_LINEDDAPROC();
13303     test_pack_LOCALESIGNATURE();
13304     test_pack_LOGBRUSH();
13305     test_pack_LOGCOLORSPACEA();
13306     test_pack_LOGCOLORSPACEW();
13307     test_pack_LOGFONTA();
13308     test_pack_LOGFONTW();
13309     test_pack_LOGPEN();
13310     test_pack_LPABC();
13311     test_pack_LPABCFLOAT();
13312     test_pack_LPBITMAP();
13313     test_pack_LPBITMAPCOREHEADER();
13314     test_pack_LPBITMAPCOREINFO();
13315     test_pack_LPBITMAPFILEHEADER();
13316     test_pack_LPBITMAPINFO();
13317     test_pack_LPBITMAPINFOHEADER();
13318     test_pack_LPBITMAPV5HEADER();
13319     test_pack_LPCHARSETINFO();
13320     test_pack_LPCIEXYZ();
13321     test_pack_LPCIEXYZTRIPLE();
13322     test_pack_LPCOLORADJUSTMENT();
13323     test_pack_LPDEVMODEA();
13324     test_pack_LPDEVMODEW();
13325     test_pack_LPDIBSECTION();
13326     test_pack_LPDISPLAY_DEVICEA();
13327     test_pack_LPDISPLAY_DEVICEW();
13328     test_pack_LPDOCINFOA();
13329     test_pack_LPDOCINFOW();
13330     test_pack_LPENHMETAHEADER();
13331     test_pack_LPENHMETARECORD();
13332     test_pack_LPENUMLOGFONTA();
13333     test_pack_LPENUMLOGFONTEXA();
13334     test_pack_LPENUMLOGFONTEXW();
13335     test_pack_LPENUMLOGFONTW();
13336     test_pack_LPEXTLOGFONTA();
13337     test_pack_LPEXTLOGFONTW();
13338     test_pack_LPEXTLOGPEN();
13339     test_pack_LPFONTSIGNATURE();
13340     test_pack_LPGCP_RESULTSA();
13341     test_pack_LPGCP_RESULTSW();
13342     test_pack_LPGLYPHMETRICS();
13343     test_pack_LPGLYPHMETRICSFLOAT();
13344     test_pack_LPGRADIENT_RECT();
13345     test_pack_LPGRADIENT_TRIANGLE();
13346     test_pack_LPHANDLETABLE();
13347     test_pack_LPKERNINGPAIR();
13348     test_pack_LPLAYERPLANEDESCRIPTOR();
13349     test_pack_LPLOCALESIGNATURE();
13350     test_pack_LPLOGBRUSH();
13351     test_pack_LPLOGCOLORSPACEA();
13352     test_pack_LPLOGCOLORSPACEW();
13353     test_pack_LPLOGFONTA();
13354     test_pack_LPLOGFONTW();
13355     test_pack_LPLOGPEN();
13356     test_pack_LPMAT2();
13357     test_pack_LPMETAFILEPICT();
13358     test_pack_LPMETAHEADER();
13359     test_pack_LPMETARECORD();
13360     test_pack_LPNEWTEXTMETRICA();
13361     test_pack_LPNEWTEXTMETRICW();
13362     test_pack_LPOUTLINETEXTMETRICA();
13363     test_pack_LPOUTLINETEXTMETRICW();
13364     test_pack_LPPANOSE();
13365     test_pack_LPPELARRAY();
13366     test_pack_LPPIXELFORMATDESCRIPTOR();
13367     test_pack_LPPOINTFX();
13368     test_pack_LPPOLYTEXTA();
13369     test_pack_LPPOLYTEXTW();
13370     test_pack_LPRASTERIZER_STATUS();
13371     test_pack_LPRGBQUAD();
13372     test_pack_LPRGNDATA();
13373     test_pack_LPTEXTMETRICA();
13374     test_pack_LPTEXTMETRICW();
13375     test_pack_LPTRIVERTEX();
13376     test_pack_LPTTPOLYCURVE();
13377     test_pack_LPTTPOLYGONHEADER();
13378     test_pack_LPXFORM();
13379     test_pack_MAT2();
13380     test_pack_METAFILEPICT();
13381     test_pack_METAHEADER();
13382     test_pack_METARECORD();
13383     test_pack_MFENUMPROC();
13384     test_pack_NEWTEXTMETRICA();
13385     test_pack_NEWTEXTMETRICEXA();
13386     test_pack_NEWTEXTMETRICEXW();
13387     test_pack_NEWTEXTMETRICW();
13388     test_pack_NPEXTLOGPEN();
13389     test_pack_OLDFONTENUMPROC();
13390     test_pack_OLDFONTENUMPROCA();
13391     test_pack_OLDFONTENUMPROCW();
13392     test_pack_OUTLINETEXTMETRICA();
13393     test_pack_OUTLINETEXTMETRICW();
13394     test_pack_PABC();
13395     test_pack_PABCFLOAT();
13396     test_pack_PANOSE();
13397     test_pack_PATTERN();
13398     test_pack_PBITMAP();
13399     test_pack_PBITMAPCOREHEADER();
13400     test_pack_PBITMAPCOREINFO();
13401     test_pack_PBITMAPFILEHEADER();
13402     test_pack_PBITMAPINFO();
13403     test_pack_PBITMAPINFOHEADER();
13404     test_pack_PBITMAPV4HEADER();
13405     test_pack_PBITMAPV5HEADER();
13406     test_pack_PBLENDFUNCTION();
13407     test_pack_PCHARSETINFO();
13408     test_pack_PCOLORADJUSTMENT();
13409     test_pack_PDEVMODEA();
13410     test_pack_PDEVMODEW();
13411     test_pack_PDIBSECTION();
13412     test_pack_PDISPLAY_DEVICEA();
13413     test_pack_PDISPLAY_DEVICEW();
13414     test_pack_PELARRAY();
13415     test_pack_PEMR();
13416     test_pack_PEMRABORTPATH();
13417     test_pack_PEMRANGLEARC();
13418     test_pack_PEMRARC();
13419     test_pack_PEMRARCTO();
13420     test_pack_PEMRBEGINPATH();
13421     test_pack_PEMRBITBLT();
13422     test_pack_PEMRCHORD();
13423     test_pack_PEMRCLOSEFIGURE();
13424     test_pack_PEMRCREATEBRUSHINDIRECT();
13425     test_pack_PEMRCREATECOLORSPACE();
13426     test_pack_PEMRCREATECOLORSPACEW();
13427     test_pack_PEMRCREATEDIBPATTERNBRUSHPT();
13428     test_pack_PEMRCREATEMONOBRUSH();
13429     test_pack_PEMRCREATEPALETTE();
13430     test_pack_PEMRCREATEPEN();
13431     test_pack_PEMRDELETECOLORSPACE();
13432     test_pack_PEMRDELETEOBJECT();
13433     test_pack_PEMRELLIPSE();
13434     test_pack_PEMRENDPATH();
13435     test_pack_PEMREOF();
13436     test_pack_PEMREXCLUDECLIPRECT();
13437     test_pack_PEMREXTCREATEFONTINDIRECTW();
13438     test_pack_PEMREXTCREATEPEN();
13439     test_pack_PEMREXTFLOODFILL();
13440     test_pack_PEMREXTSELECTCLIPRGN();
13441     test_pack_PEMREXTTEXTOUTA();
13442     test_pack_PEMREXTTEXTOUTW();
13443     test_pack_PEMRFILLPATH();
13444     test_pack_PEMRFILLRGN();
13445     test_pack_PEMRFLATTENPATH();
13446     test_pack_PEMRFORMAT();
13447     test_pack_PEMRFRAMERGN();
13448     test_pack_PEMRGDICOMMENT();
13449     test_pack_PEMRGLSBOUNDEDRECORD();
13450     test_pack_PEMRGLSRECORD();
13451     test_pack_PEMRINTERSECTCLIPRECT();
13452     test_pack_PEMRINVERTRGN();
13453     test_pack_PEMRLINETO();
13454     test_pack_PEMRMASKBLT();
13455     test_pack_PEMRMODIFYWORLDTRANSFORM();
13456     test_pack_PEMRMOVETOEX();
13457     test_pack_PEMROFFSETCLIPRGN();
13458     test_pack_PEMRPAINTRGN();
13459     test_pack_PEMRPIE();
13460     test_pack_PEMRPIXELFORMAT();
13461     test_pack_PEMRPLGBLT();
13462     test_pack_PEMRPOLYBEZIER();
13463     test_pack_PEMRPOLYBEZIER16();
13464     test_pack_PEMRPOLYBEZIERTO();
13465     test_pack_PEMRPOLYBEZIERTO16();
13466     test_pack_PEMRPOLYDRAW();
13467     test_pack_PEMRPOLYDRAW16();
13468     test_pack_PEMRPOLYGON();
13469     test_pack_PEMRPOLYGON16();
13470     test_pack_PEMRPOLYLINE();
13471     test_pack_PEMRPOLYLINE16();
13472     test_pack_PEMRPOLYLINETO();
13473     test_pack_PEMRPOLYLINETO16();
13474     test_pack_PEMRPOLYPOLYGON();
13475     test_pack_PEMRPOLYPOLYGON16();
13476     test_pack_PEMRPOLYPOLYLINE();
13477     test_pack_PEMRPOLYPOLYLINE16();
13478     test_pack_PEMRPOLYTEXTOUTA();
13479     test_pack_PEMRPOLYTEXTOUTW();
13480     test_pack_PEMRREALIZEPALETTE();
13481     test_pack_PEMRRECTANGLE();
13482     test_pack_PEMRRESIZEPALETTE();
13483     test_pack_PEMRRESTOREDC();
13484     test_pack_PEMRROUNDRECT();
13485     test_pack_PEMRSAVEDC();
13486     test_pack_PEMRSCALEVIEWPORTEXTEX();
13487     test_pack_PEMRSCALEWINDOWEXTEX();
13488     test_pack_PEMRSELECTCLIPPATH();
13489     test_pack_PEMRSELECTCOLORSPACE();
13490     test_pack_PEMRSELECTOBJECT();
13491     test_pack_PEMRSELECTPALETTE();
13492     test_pack_PEMRSETARCDIRECTION();
13493     test_pack_PEMRSETBKCOLOR();
13494     test_pack_PEMRSETBKMODE();
13495     test_pack_PEMRSETBRUSHORGEX();
13496     test_pack_PEMRSETCOLORADJUSTMENT();
13497     test_pack_PEMRSETCOLORSPACE();
13498     test_pack_PEMRSETDIBITSTODEVICE();
13499     test_pack_PEMRSETICMMODE();
13500     test_pack_PEMRSETLAYOUT();
13501     test_pack_PEMRSETMAPMODE();
13502     test_pack_PEMRSETMAPPERFLAGS();
13503     test_pack_PEMRSETMETARGN();
13504     test_pack_PEMRSETMITERLIMIT();
13505     test_pack_PEMRSETPALETTEENTRIES();
13506     test_pack_PEMRSETPIXELV();
13507     test_pack_PEMRSETPOLYFILLMODE();
13508     test_pack_PEMRSETROP2();
13509     test_pack_PEMRSETSTRETCHBLTMODE();
13510     test_pack_PEMRSETTEXTALIGN();
13511     test_pack_PEMRSETTEXTCOLOR();
13512     test_pack_PEMRSETVIEWPORTEXTEX();
13513     test_pack_PEMRSETVIEWPORTORGEX();
13514     test_pack_PEMRSETWINDOWEXTEX();
13515     test_pack_PEMRSETWINDOWORGEX();
13516     test_pack_PEMRSETWORLDTRANSFORM();
13517     test_pack_PEMRSTRETCHBLT();
13518     test_pack_PEMRSTRETCHDIBITS();
13519     test_pack_PEMRSTROKEANDFILLPATH();
13520     test_pack_PEMRSTROKEPATH();
13521     test_pack_PEMRTEXT();
13522     test_pack_PEMRWIDENPATH();
13523     test_pack_PENHMETAHEADER();
13524     test_pack_PEXTLOGFONTA();
13525     test_pack_PEXTLOGFONTW();
13526     test_pack_PEXTLOGPEN();
13527     test_pack_PFONTSIGNATURE();
13528     test_pack_PGLYPHMETRICSFLOAT();
13529     test_pack_PGRADIENT_RECT();
13530     test_pack_PGRADIENT_TRIANGLE();
13531     test_pack_PHANDLETABLE();
13532     test_pack_PIXELFORMATDESCRIPTOR();
13533     test_pack_PLAYERPLANEDESCRIPTOR();
13534     test_pack_PLOCALESIGNATURE();
13535     test_pack_PLOGBRUSH();
13536     test_pack_PLOGFONTA();
13537     test_pack_PLOGFONTW();
13538     test_pack_PMETAHEADER();
13539     test_pack_PMETARECORD();
13540     test_pack_PNEWTEXTMETRICA();
13541     test_pack_PNEWTEXTMETRICW();
13542     test_pack_POINTFLOAT();
13543     test_pack_POINTFX();
13544     test_pack_POLYTEXTA();
13545     test_pack_POLYTEXTW();
13546     test_pack_POUTLINETEXTMETRICA();
13547     test_pack_POUTLINETEXTMETRICW();
13548     test_pack_PPELARRAY();
13549     test_pack_PPIXELFORMATDESCRIPTOR();
13550     test_pack_PPOINTFLOAT();
13551     test_pack_PPOLYTEXTA();
13552     test_pack_PPOLYTEXTW();
13553     test_pack_PRGNDATA();
13554     test_pack_PRGNDATAHEADER();
13555     test_pack_PTEXTMETRICA();
13556     test_pack_PTEXTMETRICW();
13557     test_pack_PTRIVERTEX();
13558     test_pack_PXFORM();
13559     test_pack_RASTERIZER_STATUS();
13560     test_pack_RGBQUAD();
13561     test_pack_RGBTRIPLE();
13562     test_pack_RGNDATA();
13563     test_pack_RGNDATAHEADER();
13564     test_pack_TEXTMETRICA();
13565     test_pack_TEXTMETRICW();
13566     test_pack_TRIVERTEX();
13567     test_pack_TTPOLYCURVE();
13568     test_pack_TTPOLYGONHEADER();
13569     test_pack_XFORM();
13570 }
13571
13572 START_TEST(generated)
13573 {
13574     test_pack();
13575 }