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