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