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 <stdarg.h>
11 #include "windef.h"
12 #include "winbase.h"
13 #include "ole2.h"
14 #include "rpc.h"
15 #include "rpcndr.h"
16 #include "rpcproxy.h"
17 
18 #include "wine/test.h"
19 
20 /***********************************************************************
21  * Compatibility macros
22  */
23 
24 #define DWORD_PTR UINT_PTR
25 #define LONG_PTR INT_PTR
26 #define ULONG_PTR UINT_PTR
27 
28 /***********************************************************************
29  * Windows API extension
30  */
31 
32 #if defined(_MSC_VER) && (_MSC_VER >= 1300) && defined(__cplusplus)
33 # define _TYPE_ALIGNMENT(type) __alignof(type)
34 #elif defined(__GNUC__)
35 # define _TYPE_ALIGNMENT(type) __alignof__(type)
36 #else
37 /*
38  * FIXME: May not be possible without a compiler extension
39  *        (if type is not just a name that is, otherwise the normal
40  *         TYPE_ALIGNMENT can be used)
41  */
42 #endif
43 
44 #if defined(TYPE_ALIGNMENT) && defined(_MSC_VER) && _MSC_VER >= 800 && !defined(__cplusplus)
45 #pragma warning(disable:4116)
46 #endif
47 
48 #if !defined(TYPE_ALIGNMENT) && defined(_TYPE_ALIGNMENT)
49 # define TYPE_ALIGNMENT _TYPE_ALIGNMENT
50 #endif
51 
52 /***********************************************************************
53  * Test helper macros
54  */
55 
56 #define TEST_TYPE_SIZE(type, size)             C_ASSERT(sizeof(type) == size);
57 
58 #ifdef TYPE_ALIGNMENT
59 # define TEST_TYPE_ALIGN(type, align)          C_ASSERT(TYPE_ALIGNMENT(type) == align);
60 #else
61 # define TEST_TYPE_ALIGN(type, align)
62 #endif
63 
64 #ifdef _TYPE_ALIGNMENT
65 # define TEST_TARGET_ALIGN(type, align)        C_ASSERT(_TYPE_ALIGNMENT(*(type)0) == align);
66 # define TEST_FIELD_ALIGN(type, field, align)  C_ASSERT(_TYPE_ALIGNMENT(((type*)0)->field) == align);
67 #else
68 # define TEST_TARGET_ALIGN(type, align)
69 # define TEST_FIELD_ALIGN(type, field, align)
70 #endif
71 
72 #define TEST_FIELD_OFFSET(type, field, offset) C_ASSERT(FIELD_OFFSET(type, field) == offset);
73 
74 #define TEST_TARGET_SIZE(type, size)            TEST_TYPE_SIZE(*(type)0, size)
75 #define TEST_FIELD_SIZE(type, field, size)      TEST_TYPE_SIZE((((type*)0)->field), size)
76 #define TEST_TYPE_SIGNED(type)                  C_ASSERT((type) -1 < 0);
77 #define TEST_TYPE_UNSIGNED(type)                C_ASSERT((type) -1 > 0);
78 
79 
80 #ifdef _WIN64
81 
82 static void test_pack_I_RPC_HANDLE(void)
83 {
84     /* I_RPC_HANDLE */
85     TEST_TYPE_SIZE   (I_RPC_HANDLE, 8)
86     TEST_TYPE_ALIGN  (I_RPC_HANDLE, 8)
87 }
88 
89 static void test_pack_RPC_STATUS(void)
90 {
91     /* RPC_STATUS */
92     TEST_TYPE_SIZE   (RPC_STATUS, 4)
93     TEST_TYPE_ALIGN  (RPC_STATUS, 4)
94 }
95 
96 static void test_pack_PRPC_POLICY(void)
97 {
98     /* PRPC_POLICY */
99     TEST_TYPE_SIZE   (PRPC_POLICY, 8)
100     TEST_TYPE_ALIGN  (PRPC_POLICY, 8)
101     TEST_TARGET_SIZE (PRPC_POLICY, 12)
102     TEST_TARGET_ALIGN(PRPC_POLICY, 4)
103 }
104 
105 static void test_pack_RPC_AUTH_IDENTITY_HANDLE(void)
106 {
107     /* RPC_AUTH_IDENTITY_HANDLE */
108     TEST_TYPE_SIZE   (RPC_AUTH_IDENTITY_HANDLE, 8)
109     TEST_TYPE_ALIGN  (RPC_AUTH_IDENTITY_HANDLE, 8)
110 }
111 
112 static void test_pack_RPC_AUTH_KEY_RETRIEVAL_FN(void)
113 {
114     /* RPC_AUTH_KEY_RETRIEVAL_FN */
115 }
116 
117 static void test_pack_RPC_AUTHZ_HANDLE(void)
118 {
119     /* RPC_AUTHZ_HANDLE */
120     TEST_TYPE_SIZE   (RPC_AUTHZ_HANDLE, 8)
121     TEST_TYPE_ALIGN  (RPC_AUTHZ_HANDLE, 8)
122 }
123 
124 static void test_pack_RPC_BINDING_HANDLE(void)
125 {
126     /* RPC_BINDING_HANDLE */
127     TEST_TYPE_SIZE   (RPC_BINDING_HANDLE, 8)
128     TEST_TYPE_ALIGN  (RPC_BINDING_HANDLE, 8)
129 }
130 
131 static void test_pack_RPC_BINDING_VECTOR(void)
132 {
133     /* RPC_BINDING_VECTOR */
134     TEST_TYPE_SIZE   (RPC_BINDING_VECTOR, 16)
135     TEST_TYPE_ALIGN  (RPC_BINDING_VECTOR, 8)
136     TEST_FIELD_SIZE  (RPC_BINDING_VECTOR, Count, 4)
137     TEST_FIELD_ALIGN (RPC_BINDING_VECTOR, Count, 4)
138     TEST_FIELD_OFFSET(RPC_BINDING_VECTOR, Count, 0)
139     TEST_FIELD_SIZE  (RPC_BINDING_VECTOR, BindingH, 8)
140     TEST_FIELD_ALIGN (RPC_BINDING_VECTOR, BindingH, 8)
141     TEST_FIELD_OFFSET(RPC_BINDING_VECTOR, BindingH, 8)
142 }
143 
144 static void test_pack_RPC_IF_HANDLE(void)
145 {
146     /* RPC_IF_HANDLE */
147     TEST_TYPE_SIZE   (RPC_IF_HANDLE, 8)
148     TEST_TYPE_ALIGN  (RPC_IF_HANDLE, 8)
149 }
150 
151 static void test_pack_RPC_IF_ID(void)
152 {
153     /* RPC_IF_ID */
154     TEST_TYPE_SIZE   (RPC_IF_ID, 20)
155     TEST_TYPE_ALIGN  (RPC_IF_ID, 4)
156     TEST_FIELD_SIZE  (RPC_IF_ID, Uuid, 16)
157     TEST_FIELD_ALIGN (RPC_IF_ID, Uuid, 4)
158     TEST_FIELD_OFFSET(RPC_IF_ID, Uuid, 0)
159     TEST_FIELD_SIZE  (RPC_IF_ID, VersMajor, 2)
160     TEST_FIELD_ALIGN (RPC_IF_ID, VersMajor, 2)
161     TEST_FIELD_OFFSET(RPC_IF_ID, VersMajor, 16)
162     TEST_FIELD_SIZE  (RPC_IF_ID, VersMinor, 2)
163     TEST_FIELD_ALIGN (RPC_IF_ID, VersMinor, 2)
164     TEST_FIELD_OFFSET(RPC_IF_ID, VersMinor, 18)
165 }
166 
167 static void test_pack_RPC_POLICY(void)
168 {
169     /* RPC_POLICY */
170     TEST_TYPE_SIZE   (RPC_POLICY, 12)
171     TEST_TYPE_ALIGN  (RPC_POLICY, 4)
172     TEST_FIELD_SIZE  (RPC_POLICY, Length, 4)
173     TEST_FIELD_ALIGN (RPC_POLICY, Length, 4)
174     TEST_FIELD_OFFSET(RPC_POLICY, Length, 0)
175     TEST_FIELD_SIZE  (RPC_POLICY, EndpointFlags, 4)
176     TEST_FIELD_ALIGN (RPC_POLICY, EndpointFlags, 4)
177     TEST_FIELD_OFFSET(RPC_POLICY, EndpointFlags, 4)
178     TEST_FIELD_SIZE  (RPC_POLICY, NICFlags, 4)
179     TEST_FIELD_ALIGN (RPC_POLICY, NICFlags, 4)
180     TEST_FIELD_OFFSET(RPC_POLICY, NICFlags, 8)
181 }
182 
183 static void test_pack_UUID_VECTOR(void)
184 {
185     /* UUID_VECTOR */
186     TEST_TYPE_SIZE   (UUID_VECTOR, 16)
187     TEST_TYPE_ALIGN  (UUID_VECTOR, 8)
188     TEST_FIELD_SIZE  (UUID_VECTOR, Count, 4)
189     TEST_FIELD_ALIGN (UUID_VECTOR, Count, 4)
190     TEST_FIELD_OFFSET(UUID_VECTOR, Count, 0)
191     TEST_FIELD_SIZE  (UUID_VECTOR, Uuid, 8)
192     TEST_FIELD_ALIGN (UUID_VECTOR, Uuid, 8)
193     TEST_FIELD_OFFSET(UUID_VECTOR, Uuid, 8)
194 }
195 
196 static void test_pack_PRPC_CLIENT_INTERFACE(void)
197 {
198     /* PRPC_CLIENT_INTERFACE */
199     TEST_TYPE_SIZE   (PRPC_CLIENT_INTERFACE, 8)
200     TEST_TYPE_ALIGN  (PRPC_CLIENT_INTERFACE, 8)
201     TEST_TARGET_SIZE (PRPC_CLIENT_INTERFACE, 96)
202     TEST_TARGET_ALIGN(PRPC_CLIENT_INTERFACE, 8)
203 }
204 
205 static void test_pack_PRPC_DISPATCH_TABLE(void)
206 {
207     /* PRPC_DISPATCH_TABLE */
208     TEST_TYPE_SIZE   (PRPC_DISPATCH_TABLE, 8)
209     TEST_TYPE_ALIGN  (PRPC_DISPATCH_TABLE, 8)
210     TEST_TARGET_SIZE (PRPC_DISPATCH_TABLE, 24)
211     TEST_TARGET_ALIGN(PRPC_DISPATCH_TABLE, 8)
212 }
213 
214 static void test_pack_PRPC_MESSAGE(void)
215 {
216     /* PRPC_MESSAGE */
217     TEST_TYPE_SIZE   (PRPC_MESSAGE, 8)
218     TEST_TYPE_ALIGN  (PRPC_MESSAGE, 8)
219     TEST_TARGET_SIZE (PRPC_MESSAGE, 80)
220     TEST_TARGET_ALIGN(PRPC_MESSAGE, 8)
221 }
222 
223 static void test_pack_PRPC_PROTSEQ_ENDPOINT(void)
224 {
225     /* PRPC_PROTSEQ_ENDPOINT */
226     TEST_TYPE_SIZE   (PRPC_PROTSEQ_ENDPOINT, 8)
227     TEST_TYPE_ALIGN  (PRPC_PROTSEQ_ENDPOINT, 8)
228     TEST_TARGET_SIZE (PRPC_PROTSEQ_ENDPOINT, 16)
229     TEST_TARGET_ALIGN(PRPC_PROTSEQ_ENDPOINT, 8)
230 }
231 
232 static void test_pack_PRPC_SERVER_INTERFACE(void)
233 {
234     /* PRPC_SERVER_INTERFACE */
235     TEST_TYPE_SIZE   (PRPC_SERVER_INTERFACE, 8)
236     TEST_TYPE_ALIGN  (PRPC_SERVER_INTERFACE, 8)
237     TEST_TARGET_SIZE (PRPC_SERVER_INTERFACE, 96)
238     TEST_TARGET_ALIGN(PRPC_SERVER_INTERFACE, 8)
239 }
240 
241 static void test_pack_PRPC_SYNTAX_IDENTIFIER(void)
242 {
243     /* PRPC_SYNTAX_IDENTIFIER */
244     TEST_TYPE_SIZE   (PRPC_SYNTAX_IDENTIFIER, 8)
245     TEST_TYPE_ALIGN  (PRPC_SYNTAX_IDENTIFIER, 8)
246     TEST_TARGET_SIZE (PRPC_SYNTAX_IDENTIFIER, 20)
247     TEST_TARGET_ALIGN(PRPC_SYNTAX_IDENTIFIER, 4)
248 }
249 
250 static void test_pack_RPC_CLIENT_INTERFACE(void)
251 {
252     /* RPC_CLIENT_INTERFACE */
253     TEST_TYPE_SIZE   (RPC_CLIENT_INTERFACE, 96)
254     TEST_TYPE_ALIGN  (RPC_CLIENT_INTERFACE, 8)
255     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, Length, 4)
256     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, Length, 4)
257     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, Length, 0)
258     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, InterfaceId, 20)
259     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, InterfaceId, 4)
260     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, InterfaceId, 4)
261     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, TransferSyntax, 20)
262     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, TransferSyntax, 4)
263     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, TransferSyntax, 24)
264     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, DispatchTable, 8)
265     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, DispatchTable, 8)
266     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, DispatchTable, 48)
267     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 4)
268     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 4)
269     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 56)
270     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 8)
271     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 8)
272     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 64)
273     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, Reserved, 8)
274     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, Reserved, 8)
275     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, Reserved, 72)
276     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, InterpreterInfo, 8)
277     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, InterpreterInfo, 8)
278     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, InterpreterInfo, 80)
279     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, Flags, 4)
280     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, Flags, 4)
281     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, Flags, 88)
282 }
283 
284 static void test_pack_RPC_DISPATCH_FUNCTION(void)
285 {
286     /* RPC_DISPATCH_FUNCTION */
287 }
288 
289 static void test_pack_RPC_DISPATCH_TABLE(void)
290 {
291     /* RPC_DISPATCH_TABLE */
292     TEST_TYPE_SIZE   (RPC_DISPATCH_TABLE, 24)
293     TEST_TYPE_ALIGN  (RPC_DISPATCH_TABLE, 8)
294     TEST_FIELD_SIZE  (RPC_DISPATCH_TABLE, DispatchTableCount, 4)
295     TEST_FIELD_ALIGN (RPC_DISPATCH_TABLE, DispatchTableCount, 4)
296     TEST_FIELD_OFFSET(RPC_DISPATCH_TABLE, DispatchTableCount, 0)
297     TEST_FIELD_SIZE  (RPC_DISPATCH_TABLE, DispatchTable, 8)
298     TEST_FIELD_ALIGN (RPC_DISPATCH_TABLE, DispatchTable, 8)
299     TEST_FIELD_OFFSET(RPC_DISPATCH_TABLE, DispatchTable, 8)
300     TEST_FIELD_SIZE  (RPC_DISPATCH_TABLE, Reserved, 8)
301     TEST_FIELD_ALIGN (RPC_DISPATCH_TABLE, Reserved, 8)
302     TEST_FIELD_OFFSET(RPC_DISPATCH_TABLE, Reserved, 16)
303 }
304 
305 static void test_pack_RPC_MESSAGE(void)
306 {
307     /* RPC_MESSAGE */
308     TEST_TYPE_SIZE   (RPC_MESSAGE, 80)
309     TEST_TYPE_ALIGN  (RPC_MESSAGE, 8)
310     TEST_FIELD_SIZE  (RPC_MESSAGE, Handle, 8)
311     TEST_FIELD_ALIGN (RPC_MESSAGE, Handle, 8)
312     TEST_FIELD_OFFSET(RPC_MESSAGE, Handle, 0)
313     TEST_FIELD_SIZE  (RPC_MESSAGE, DataRepresentation, 4)
314     TEST_FIELD_ALIGN (RPC_MESSAGE, DataRepresentation, 4)
315     TEST_FIELD_OFFSET(RPC_MESSAGE, DataRepresentation, 8)
316     TEST_FIELD_SIZE  (RPC_MESSAGE, Buffer, 8)
317     TEST_FIELD_ALIGN (RPC_MESSAGE, Buffer, 8)
318     TEST_FIELD_OFFSET(RPC_MESSAGE, Buffer, 16)
319     TEST_FIELD_SIZE  (RPC_MESSAGE, BufferLength, 4)
320     TEST_FIELD_ALIGN (RPC_MESSAGE, BufferLength, 4)
321     TEST_FIELD_OFFSET(RPC_MESSAGE, BufferLength, 24)
322     TEST_FIELD_SIZE  (RPC_MESSAGE, ProcNum, 4)
323     TEST_FIELD_ALIGN (RPC_MESSAGE, ProcNum, 4)
324     TEST_FIELD_OFFSET(RPC_MESSAGE, ProcNum, 28)
325     TEST_FIELD_SIZE  (RPC_MESSAGE, TransferSyntax, 8)
326     TEST_FIELD_ALIGN (RPC_MESSAGE, TransferSyntax, 8)
327     TEST_FIELD_OFFSET(RPC_MESSAGE, TransferSyntax, 32)
328     TEST_FIELD_SIZE  (RPC_MESSAGE, RpcInterfaceInformation, 8)
329     TEST_FIELD_ALIGN (RPC_MESSAGE, RpcInterfaceInformation, 8)
330     TEST_FIELD_OFFSET(RPC_MESSAGE, RpcInterfaceInformation, 40)
331     TEST_FIELD_SIZE  (RPC_MESSAGE, ReservedForRuntime, 8)
332     TEST_FIELD_ALIGN (RPC_MESSAGE, ReservedForRuntime, 8)
333     TEST_FIELD_OFFSET(RPC_MESSAGE, ReservedForRuntime, 48)
334     TEST_FIELD_SIZE  (RPC_MESSAGE, ManagerEpv, 8)
335     TEST_FIELD_ALIGN (RPC_MESSAGE, ManagerEpv, 8)
336     TEST_FIELD_OFFSET(RPC_MESSAGE, ManagerEpv, 56)
337     TEST_FIELD_SIZE  (RPC_MESSAGE, ImportContext, 8)
338     TEST_FIELD_ALIGN (RPC_MESSAGE, ImportContext, 8)
339     TEST_FIELD_OFFSET(RPC_MESSAGE, ImportContext, 64)
340     TEST_FIELD_SIZE  (RPC_MESSAGE, RpcFlags, 4)
341     TEST_FIELD_ALIGN (RPC_MESSAGE, RpcFlags, 4)
342     TEST_FIELD_OFFSET(RPC_MESSAGE, RpcFlags, 72)
343 }
344 
345 static void test_pack_RPC_PROTSEQ_ENDPOINT(void)
346 {
347     /* RPC_PROTSEQ_ENDPOINT */
348     TEST_TYPE_SIZE   (RPC_PROTSEQ_ENDPOINT, 16)
349     TEST_TYPE_ALIGN  (RPC_PROTSEQ_ENDPOINT, 8)
350     TEST_FIELD_SIZE  (RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 8)
351     TEST_FIELD_ALIGN (RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 8)
352     TEST_FIELD_OFFSET(RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 0)
353     TEST_FIELD_SIZE  (RPC_PROTSEQ_ENDPOINT, Endpoint, 8)
354     TEST_FIELD_ALIGN (RPC_PROTSEQ_ENDPOINT, Endpoint, 8)
355     TEST_FIELD_OFFSET(RPC_PROTSEQ_ENDPOINT, Endpoint, 8)
356 }
357 
358 static void test_pack_RPC_SERVER_INTERFACE(void)
359 {
360     /* RPC_SERVER_INTERFACE */
361     TEST_TYPE_SIZE   (RPC_SERVER_INTERFACE, 96)
362     TEST_TYPE_ALIGN  (RPC_SERVER_INTERFACE, 8)
363     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, Length, 4)
364     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, Length, 4)
365     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, Length, 0)
366     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, InterfaceId, 20)
367     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, InterfaceId, 4)
368     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, InterfaceId, 4)
369     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, TransferSyntax, 20)
370     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, TransferSyntax, 4)
371     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, TransferSyntax, 24)
372     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, DispatchTable, 8)
373     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, DispatchTable, 8)
374     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, DispatchTable, 48)
375     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 4)
376     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 4)
377     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 56)
378     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 8)
379     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 8)
380     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 64)
381     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, DefaultManagerEpv, 8)
382     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, DefaultManagerEpv, 8)
383     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, DefaultManagerEpv, 72)
384     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, InterpreterInfo, 8)
385     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, InterpreterInfo, 8)
386     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, InterpreterInfo, 80)
387     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, Flags, 4)
388     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, Flags, 4)
389     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, Flags, 88)
390 }
391 
392 static void test_pack_RPC_SYNTAX_IDENTIFIER(void)
393 {
394     /* RPC_SYNTAX_IDENTIFIER */
395     TEST_TYPE_SIZE   (RPC_SYNTAX_IDENTIFIER, 20)
396     TEST_TYPE_ALIGN  (RPC_SYNTAX_IDENTIFIER, 4)
397     TEST_FIELD_SIZE  (RPC_SYNTAX_IDENTIFIER, SyntaxGUID, 16)
398     TEST_FIELD_ALIGN (RPC_SYNTAX_IDENTIFIER, SyntaxGUID, 4)
399     TEST_FIELD_OFFSET(RPC_SYNTAX_IDENTIFIER, SyntaxGUID, 0)
400     TEST_FIELD_SIZE  (RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 4)
401     TEST_FIELD_ALIGN (RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 2)
402     TEST_FIELD_OFFSET(RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 16)
403 }
404 
405 static void test_pack_RPC_VERSION(void)
406 {
407     /* RPC_VERSION */
408     TEST_TYPE_SIZE   (RPC_VERSION, 4)
409     TEST_TYPE_ALIGN  (RPC_VERSION, 2)
410     TEST_FIELD_SIZE  (RPC_VERSION, MajorVersion, 2)
411     TEST_FIELD_ALIGN (RPC_VERSION, MajorVersion, 2)
412     TEST_FIELD_OFFSET(RPC_VERSION, MajorVersion, 0)
413     TEST_FIELD_SIZE  (RPC_VERSION, MinorVersion, 2)
414     TEST_FIELD_ALIGN (RPC_VERSION, MinorVersion, 2)
415     TEST_FIELD_OFFSET(RPC_VERSION, MinorVersion, 2)
416 }
417 
418 static void test_pack_ARRAY_INFO(void)
419 {
420     /* ARRAY_INFO */
421     TEST_TYPE_SIZE   (ARRAY_INFO, 48)
422     TEST_TYPE_ALIGN  (ARRAY_INFO, 8)
423     TEST_FIELD_SIZE  (ARRAY_INFO, Dimension, 4)
424     TEST_FIELD_ALIGN (ARRAY_INFO, Dimension, 4)
425     TEST_FIELD_OFFSET(ARRAY_INFO, Dimension, 0)
426     TEST_FIELD_SIZE  (ARRAY_INFO, BufferConformanceMark, 8)
427     TEST_FIELD_ALIGN (ARRAY_INFO, BufferConformanceMark, 8)
428     TEST_FIELD_OFFSET(ARRAY_INFO, BufferConformanceMark, 8)
429     TEST_FIELD_SIZE  (ARRAY_INFO, BufferVarianceMark, 8)
430     TEST_FIELD_ALIGN (ARRAY_INFO, BufferVarianceMark, 8)
431     TEST_FIELD_OFFSET(ARRAY_INFO, BufferVarianceMark, 16)
432     TEST_FIELD_SIZE  (ARRAY_INFO, MaxCountArray, 8)
433     TEST_FIELD_ALIGN (ARRAY_INFO, MaxCountArray, 8)
434     TEST_FIELD_OFFSET(ARRAY_INFO, MaxCountArray, 24)
435     TEST_FIELD_SIZE  (ARRAY_INFO, OffsetArray, 8)
436     TEST_FIELD_ALIGN (ARRAY_INFO, OffsetArray, 8)
437     TEST_FIELD_OFFSET(ARRAY_INFO, OffsetArray, 32)
438     TEST_FIELD_SIZE  (ARRAY_INFO, ActualCountArray, 8)
439     TEST_FIELD_ALIGN (ARRAY_INFO, ActualCountArray, 8)
440     TEST_FIELD_OFFSET(ARRAY_INFO, ActualCountArray, 40)
441 }
442 
443 static void test_pack_COMM_FAULT_OFFSETS(void)
444 {
445     /* COMM_FAULT_OFFSETS */
446     TEST_TYPE_SIZE   (COMM_FAULT_OFFSETS, 4)
447     TEST_TYPE_ALIGN  (COMM_FAULT_OFFSETS, 2)
448     TEST_FIELD_SIZE  (COMM_FAULT_OFFSETS, CommOffset, 2)
449     TEST_FIELD_ALIGN (COMM_FAULT_OFFSETS, CommOffset, 2)
450     TEST_FIELD_OFFSET(COMM_FAULT_OFFSETS, CommOffset, 0)
451     TEST_FIELD_SIZE  (COMM_FAULT_OFFSETS, FaultOffset, 2)
452     TEST_FIELD_ALIGN (COMM_FAULT_OFFSETS, FaultOffset, 2)
453     TEST_FIELD_OFFSET(COMM_FAULT_OFFSETS, FaultOffset, 2)
454 }
455 
456 static void test_pack_CS_STUB_INFO(void)
457 {
458     /* CS_STUB_INFO */
459     TEST_TYPE_SIZE   (CS_STUB_INFO, 16)
460     TEST_TYPE_ALIGN  (CS_STUB_INFO, 8)
461     TEST_FIELD_SIZE  (CS_STUB_INFO, WireCodeset, 4)
462     TEST_FIELD_ALIGN (CS_STUB_INFO, WireCodeset, 4)
463     TEST_FIELD_OFFSET(CS_STUB_INFO, WireCodeset, 0)
464     TEST_FIELD_SIZE  (CS_STUB_INFO, DesiredReceivingCodeset, 4)
465     TEST_FIELD_ALIGN (CS_STUB_INFO, DesiredReceivingCodeset, 4)
466     TEST_FIELD_OFFSET(CS_STUB_INFO, DesiredReceivingCodeset, 4)
467     TEST_FIELD_SIZE  (CS_STUB_INFO, CSArrayInfo, 8)
468     TEST_FIELD_ALIGN (CS_STUB_INFO, CSArrayInfo, 8)
469     TEST_FIELD_OFFSET(CS_STUB_INFO, CSArrayInfo, 8)
470 }
471 
472 static void test_pack_EXPR_EVAL(void)
473 {
474     /* EXPR_EVAL */
475 }
476 
477 static void test_pack_FULL_PTR_TO_REFID_ELEMENT(void)
478 {
479     /* FULL_PTR_TO_REFID_ELEMENT */
480     TEST_TYPE_SIZE   (FULL_PTR_TO_REFID_ELEMENT, 24)
481     TEST_TYPE_ALIGN  (FULL_PTR_TO_REFID_ELEMENT, 8)
482     TEST_FIELD_SIZE  (FULL_PTR_TO_REFID_ELEMENT, Next, 8)
483     TEST_FIELD_ALIGN (FULL_PTR_TO_REFID_ELEMENT, Next, 8)
484     TEST_FIELD_OFFSET(FULL_PTR_TO_REFID_ELEMENT, Next, 0)
485     TEST_FIELD_SIZE  (FULL_PTR_TO_REFID_ELEMENT, Pointer, 8)
486     TEST_FIELD_ALIGN (FULL_PTR_TO_REFID_ELEMENT, Pointer, 8)
487     TEST_FIELD_OFFSET(FULL_PTR_TO_REFID_ELEMENT, Pointer, 8)
488     TEST_FIELD_SIZE  (FULL_PTR_TO_REFID_ELEMENT, RefId, 4)
489     TEST_FIELD_ALIGN (FULL_PTR_TO_REFID_ELEMENT, RefId, 4)
490     TEST_FIELD_OFFSET(FULL_PTR_TO_REFID_ELEMENT, RefId, 16)
491     TEST_FIELD_SIZE  (FULL_PTR_TO_REFID_ELEMENT, State, 1)
492     TEST_FIELD_ALIGN (FULL_PTR_TO_REFID_ELEMENT, State, 1)
493     TEST_FIELD_OFFSET(FULL_PTR_TO_REFID_ELEMENT, State, 20)
494 }
495 
496 static void test_pack_FULL_PTR_XLAT_TABLES(void)
497 {
498     /* FULL_PTR_XLAT_TABLES */
499 }
500 
501 static void test_pack_GENERIC_BINDING_INFO(void)
502 {
503     /* GENERIC_BINDING_INFO */
504     TEST_FIELD_SIZE  (GENERIC_BINDING_INFO, pObj, 8)
505     TEST_FIELD_ALIGN (GENERIC_BINDING_INFO, pObj, 8)
506     TEST_FIELD_OFFSET(GENERIC_BINDING_INFO, pObj, 0)
507     TEST_FIELD_SIZE  (GENERIC_BINDING_INFO, Size, 4)
508     TEST_FIELD_ALIGN (GENERIC_BINDING_INFO, Size, 4)
509     TEST_FIELD_OFFSET(GENERIC_BINDING_INFO, Size, 8)
510 }
511 
512 static void test_pack_GENERIC_BINDING_ROUTINE_PAIR(void)
513 {
514     /* GENERIC_BINDING_ROUTINE_PAIR */
515 }
516 
517 static void test_pack_MALLOC_FREE_STRUCT(void)
518 {
519     /* MALLOC_FREE_STRUCT */
520 }
521 
522 static void test_pack_MIDL_FORMAT_STRING(void)
523 {
524     /* MIDL_FORMAT_STRING */
525     TEST_FIELD_SIZE  (MIDL_FORMAT_STRING, Pad, 2)
526     TEST_FIELD_ALIGN (MIDL_FORMAT_STRING, Pad, 2)
527     TEST_FIELD_OFFSET(MIDL_FORMAT_STRING, Pad, 0)
528 }
529 
530 static void test_pack_MIDL_SERVER_INFO(void)
531 {
532     /* MIDL_SERVER_INFO */
533     TEST_TYPE_SIZE   (MIDL_SERVER_INFO, 64)
534     TEST_TYPE_ALIGN  (MIDL_SERVER_INFO, 8)
535     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, pStubDesc, 8)
536     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pStubDesc, 8)
537     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pStubDesc, 0)
538     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, DispatchTable, 8)
539     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, DispatchTable, 8)
540     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, DispatchTable, 8)
541     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, ProcString, 8)
542     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, ProcString, 8)
543     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, ProcString, 16)
544     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, FmtStringOffset, 8)
545     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, FmtStringOffset, 8)
546     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, FmtStringOffset, 24)
547     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, ThunkTable, 8)
548     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, ThunkTable, 8)
549     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, ThunkTable, 32)
550     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, pTransferSyntax, 8)
551     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pTransferSyntax, 8)
552     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pTransferSyntax, 40)
553     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, nCount, 8)
554     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, nCount, 8)
555     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, nCount, 48)
556     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, pSyntaxInfo, 8)
557     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pSyntaxInfo, 8)
558     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pSyntaxInfo, 56)
559 }
560 
561 static void test_pack_MIDL_STUB_DESC(void)
562 {
563     /* MIDL_STUB_DESC */
564     TEST_FIELD_SIZE  (MIDL_STUB_DESC, RpcInterfaceInformation, 8)
565     TEST_FIELD_ALIGN (MIDL_STUB_DESC, RpcInterfaceInformation, 8)
566     TEST_FIELD_OFFSET(MIDL_STUB_DESC, RpcInterfaceInformation, 0)
567 }
568 
569 static void test_pack_MIDL_STUB_MESSAGE(void)
570 {
571     /* MIDL_STUB_MESSAGE */
572     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, RpcMsg, 8)
573     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, RpcMsg, 8)
574     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, RpcMsg, 0)
575     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, Buffer, 8)
576     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, Buffer, 8)
577     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, Buffer, 8)
578     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, BufferStart, 8)
579     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferStart, 8)
580     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferStart, 16)
581     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, BufferEnd, 8)
582     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferEnd, 8)
583     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferEnd, 24)
584     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, BufferMark, 8)
585     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferMark, 8)
586     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferMark, 32)
587     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, BufferLength, 4)
588     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferLength, 4)
589     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferLength, 40)
590     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, MemorySize, 4)
591     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, MemorySize, 4)
592     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, MemorySize, 44)
593     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, Memory, 8)
594     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, Memory, 8)
595     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, Memory, 48)
596     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, ReuseBuffer, 4)
597     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, ReuseBuffer, 4)
598     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, ReuseBuffer, 60)
599     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, pAllocAllNodesContext, 8)
600     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, pAllocAllNodesContext, 8)
601     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, pAllocAllNodesContext, 64)
602     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, pPointerQueueState, 8)
603     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, pPointerQueueState, 8)
604     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, pPointerQueueState, 72)
605     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 4)
606     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 4)
607     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 80)
608     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, PointerBufferMark, 8)
609     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, PointerBufferMark, 8)
610     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, PointerBufferMark, 88)
611     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, CorrDespIncrement, 1)
612     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, CorrDespIncrement, 1)
613     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, CorrDespIncrement, 96)
614     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, uFlags, 1)
615     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, uFlags, 1)
616     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, uFlags, 97)
617     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, MaxCount, 8)
618     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, MaxCount, 8)
619     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, MaxCount, 104)
620     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, Offset, 4)
621     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, Offset, 4)
622     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, Offset, 112)
623     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, ActualCount, 4)
624     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, ActualCount, 4)
625     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, ActualCount, 116)
626 }
627 
628 static void test_pack_MIDL_STUBLESS_PROXY_INFO(void)
629 {
630     /* MIDL_STUBLESS_PROXY_INFO */
631     TEST_TYPE_SIZE   (MIDL_STUBLESS_PROXY_INFO, 48)
632     TEST_TYPE_ALIGN  (MIDL_STUBLESS_PROXY_INFO, 8)
633     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, pStubDesc, 8)
634     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, pStubDesc, 8)
635     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, pStubDesc, 0)
636     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 8)
637     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 8)
638     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 8)
639     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 8)
640     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 8)
641     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 16)
642     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 8)
643     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 8)
644     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 24)
645     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, nCount, 8)
646     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, nCount, 8)
647     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, nCount, 32)
648     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, pSyntaxInfo, 8)
649     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, pSyntaxInfo, 8)
650     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, pSyntaxInfo, 40)
651 }
652 
653 static void test_pack_MIDL_SYNTAX_INFO(void)
654 {
655     /* MIDL_SYNTAX_INFO */
656     TEST_TYPE_SIZE   (MIDL_SYNTAX_INFO, 80)
657     TEST_TYPE_ALIGN  (MIDL_SYNTAX_INFO, 8)
658     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, TransferSyntax, 20)
659     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, TransferSyntax, 4)
660     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, TransferSyntax, 0)
661     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, DispatchTable, 8)
662     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, DispatchTable, 8)
663     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, DispatchTable, 24)
664     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, ProcString, 8)
665     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, ProcString, 8)
666     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, ProcString, 32)
667     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, FmtStringOffset, 8)
668     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, FmtStringOffset, 8)
669     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, FmtStringOffset, 40)
670     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, TypeString, 8)
671     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, TypeString, 8)
672     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, TypeString, 48)
673     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8)
674     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 8)
675     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 56)
676     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, pReserved1, 8)
677     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved1, 8)
678     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved1, 64)
679     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, pReserved2, 8)
680     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 8)
681     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 72)
682 }
683 
684 static void test_pack_NDR_CCONTEXT(void)
685 {
686     /* NDR_CCONTEXT */
687     TEST_TYPE_SIZE   (NDR_CCONTEXT, 8)
688     TEST_TYPE_ALIGN  (NDR_CCONTEXT, 8)
689 }
690 
691 static void test_pack_NDR_NOTIFY_ROUTINE(void)
692 {
693     /* NDR_NOTIFY_ROUTINE */
694 }
695 
696 static void test_pack_NDR_NOTIFY2_ROUTINE(void)
697 {
698     /* NDR_NOTIFY2_ROUTINE */
699 }
700 
701 static void test_pack_NDR_RUNDOWN(void)
702 {
703     /* NDR_RUNDOWN */
704 }
705 
706 static void test_pack_NDR_SCONTEXT(void)
707 {
708     /* NDR_SCONTEXT */
709     TEST_TYPE_SIZE   (NDR_SCONTEXT, 8)
710     TEST_TYPE_ALIGN  (NDR_SCONTEXT, 8)
711 }
712 
713 static void test_pack_NDR_USER_MARSHAL_INFO(void)
714 {
715     /* NDR_USER_MARSHAL_INFO */
716     TEST_FIELD_SIZE  (NDR_USER_MARSHAL_INFO, InformationLevel, 4)
717     TEST_FIELD_ALIGN (NDR_USER_MARSHAL_INFO, InformationLevel, 4)
718     TEST_FIELD_OFFSET(NDR_USER_MARSHAL_INFO, InformationLevel, 0)
719 }
720 
721 static void test_pack_NDR_USER_MARSHAL_INFO_LEVEL1(void)
722 {
723     /* NDR_USER_MARSHAL_INFO_LEVEL1 */
724     TEST_FIELD_SIZE  (NDR_USER_MARSHAL_INFO_LEVEL1, Buffer, 8)
725     TEST_FIELD_ALIGN (NDR_USER_MARSHAL_INFO_LEVEL1, Buffer, 8)
726     TEST_FIELD_OFFSET(NDR_USER_MARSHAL_INFO_LEVEL1, Buffer, 0)
727     TEST_FIELD_SIZE  (NDR_USER_MARSHAL_INFO_LEVEL1, BufferSize, 4)
728     TEST_FIELD_ALIGN (NDR_USER_MARSHAL_INFO_LEVEL1, BufferSize, 4)
729     TEST_FIELD_OFFSET(NDR_USER_MARSHAL_INFO_LEVEL1, BufferSize, 8)
730 }
731 
732 static void test_pack_PARRAY_INFO(void)
733 {
734     /* PARRAY_INFO */
735     TEST_TYPE_SIZE   (PARRAY_INFO, 8)
736     TEST_TYPE_ALIGN  (PARRAY_INFO, 8)
737     TEST_TARGET_SIZE (PARRAY_INFO, 48)
738     TEST_TARGET_ALIGN(PARRAY_INFO, 8)
739 }
740 
741 static void test_pack_PFORMAT_STRING(void)
742 {
743     /* PFORMAT_STRING */
744     TEST_TYPE_SIZE   (PFORMAT_STRING, 8)
745     TEST_TYPE_ALIGN  (PFORMAT_STRING, 8)
746 }
747 
748 static void test_pack_PFULL_PTR_TO_REFID_ELEMENT(void)
749 {
750     /* PFULL_PTR_TO_REFID_ELEMENT */
751     TEST_TYPE_SIZE   (PFULL_PTR_TO_REFID_ELEMENT, 8)
752     TEST_TYPE_ALIGN  (PFULL_PTR_TO_REFID_ELEMENT, 8)
753     TEST_TARGET_SIZE (PFULL_PTR_TO_REFID_ELEMENT, 24)
754     TEST_TARGET_ALIGN(PFULL_PTR_TO_REFID_ELEMENT, 8)
755 }
756 
757 static void test_pack_PFULL_PTR_XLAT_TABLES(void)
758 {
759     /* PFULL_PTR_XLAT_TABLES */
760     TEST_TYPE_SIZE   (PFULL_PTR_XLAT_TABLES, 8)
761     TEST_TYPE_ALIGN  (PFULL_PTR_XLAT_TABLES, 8)
762 }
763 
764 static void test_pack_PGENERIC_BINDING_INFO(void)
765 {
766     /* PGENERIC_BINDING_INFO */
767     TEST_TYPE_SIZE   (PGENERIC_BINDING_INFO, 8)
768     TEST_TYPE_ALIGN  (PGENERIC_BINDING_INFO, 8)
769 }
770 
771 static void test_pack_PGENERIC_BINDING_ROUTINE_PAIR(void)
772 {
773     /* PGENERIC_BINDING_ROUTINE_PAIR */
774     TEST_TYPE_SIZE   (PGENERIC_BINDING_ROUTINE_PAIR, 8)
775     TEST_TYPE_ALIGN  (PGENERIC_BINDING_ROUTINE_PAIR, 8)
776 }
777 
778 static void test_pack_PMIDL_SERVER_INFO(void)
779 {
780     /* PMIDL_SERVER_INFO */
781     TEST_TYPE_SIZE   (PMIDL_SERVER_INFO, 8)
782     TEST_TYPE_ALIGN  (PMIDL_SERVER_INFO, 8)
783     TEST_TARGET_SIZE (PMIDL_SERVER_INFO, 64)
784     TEST_TARGET_ALIGN(PMIDL_SERVER_INFO, 8)
785 }
786 
787 static void test_pack_PMIDL_STUB_DESC(void)
788 {
789     /* PMIDL_STUB_DESC */
790     TEST_TYPE_SIZE   (PMIDL_STUB_DESC, 8)
791     TEST_TYPE_ALIGN  (PMIDL_STUB_DESC, 8)
792 }
793 
794 static void test_pack_PMIDL_STUB_MESSAGE(void)
795 {
796     /* PMIDL_STUB_MESSAGE */
797     TEST_TYPE_SIZE   (PMIDL_STUB_MESSAGE, 8)
798     TEST_TYPE_ALIGN  (PMIDL_STUB_MESSAGE, 8)
799 }
800 
801 static void test_pack_PMIDL_STUBLESS_PROXY_INFO(void)
802 {
803     /* PMIDL_STUBLESS_PROXY_INFO */
804     TEST_TYPE_SIZE   (PMIDL_STUBLESS_PROXY_INFO, 8)
805     TEST_TYPE_ALIGN  (PMIDL_STUBLESS_PROXY_INFO, 8)
806     TEST_TARGET_SIZE (PMIDL_STUBLESS_PROXY_INFO, 48)
807     TEST_TARGET_ALIGN(PMIDL_STUBLESS_PROXY_INFO, 8)
808 }
809 
810 static void test_pack_PMIDL_SYNTAX_INFO(void)
811 {
812     /* PMIDL_SYNTAX_INFO */
813     TEST_TYPE_SIZE   (PMIDL_SYNTAX_INFO, 8)
814     TEST_TYPE_ALIGN  (PMIDL_SYNTAX_INFO, 8)
815     TEST_TARGET_SIZE (PMIDL_SYNTAX_INFO, 80)
816     TEST_TARGET_ALIGN(PMIDL_SYNTAX_INFO, 8)
817 }
818 
819 static void test_pack_PNDR_ASYNC_MESSAGE(void)
820 {
821     /* PNDR_ASYNC_MESSAGE */
822     TEST_TYPE_SIZE   (PNDR_ASYNC_MESSAGE, 8)
823     TEST_TYPE_ALIGN  (PNDR_ASYNC_MESSAGE, 8)
824 }
825 
826 static void test_pack_PNDR_CORRELATION_INFO(void)
827 {
828     /* PNDR_CORRELATION_INFO */
829     TEST_TYPE_SIZE   (PNDR_CORRELATION_INFO, 8)
830     TEST_TYPE_ALIGN  (PNDR_CORRELATION_INFO, 8)
831 }
832 
833 static void test_pack_PSCONTEXT_QUEUE(void)
834 {
835     /* PSCONTEXT_QUEUE */
836     TEST_TYPE_SIZE   (PSCONTEXT_QUEUE, 8)
837     TEST_TYPE_ALIGN  (PSCONTEXT_QUEUE, 8)
838     TEST_TARGET_SIZE (PSCONTEXT_QUEUE, 16)
839     TEST_TARGET_ALIGN(PSCONTEXT_QUEUE, 8)
840 }
841 
842 static void test_pack_PXMIT_ROUTINE_QUINTUPLE(void)
843 {
844     /* PXMIT_ROUTINE_QUINTUPLE */
845     TEST_TYPE_SIZE   (PXMIT_ROUTINE_QUINTUPLE, 8)
846     TEST_TYPE_ALIGN  (PXMIT_ROUTINE_QUINTUPLE, 8)
847 }
848 
849 static void test_pack_SCONTEXT_QUEUE(void)
850 {
851     /* SCONTEXT_QUEUE */
852     TEST_TYPE_SIZE   (SCONTEXT_QUEUE, 16)
853     TEST_TYPE_ALIGN  (SCONTEXT_QUEUE, 8)
854     TEST_FIELD_SIZE  (SCONTEXT_QUEUE, NumberOfObjects, 4)
855     TEST_FIELD_ALIGN (SCONTEXT_QUEUE, NumberOfObjects, 4)
856     TEST_FIELD_OFFSET(SCONTEXT_QUEUE, NumberOfObjects, 0)
857     TEST_FIELD_SIZE  (SCONTEXT_QUEUE, ArrayOfObjects, 8)
858     TEST_FIELD_ALIGN (SCONTEXT_QUEUE, ArrayOfObjects, 8)
859     TEST_FIELD_OFFSET(SCONTEXT_QUEUE, ArrayOfObjects, 8)
860 }
861 
862 static void test_pack_SERVER_ROUTINE(void)
863 {
864     /* SERVER_ROUTINE */
865 }
866 
867 static void test_pack_STUB_THUNK(void)
868 {
869     /* STUB_THUNK */
870 }
871 
872 static void test_pack_USER_MARSHAL_CB(void)
873 {
874     /* USER_MARSHAL_CB */
875     TEST_FIELD_SIZE  (USER_MARSHAL_CB, Flags, 4)
876     TEST_FIELD_ALIGN (USER_MARSHAL_CB, Flags, 4)
877     TEST_FIELD_OFFSET(USER_MARSHAL_CB, Flags, 0)
878     TEST_FIELD_SIZE  (USER_MARSHAL_CB, pStubMsg, 8)
879     TEST_FIELD_ALIGN (USER_MARSHAL_CB, pStubMsg, 8)
880     TEST_FIELD_OFFSET(USER_MARSHAL_CB, pStubMsg, 8)
881     TEST_FIELD_SIZE  (USER_MARSHAL_CB, pReserve, 8)
882     TEST_FIELD_ALIGN (USER_MARSHAL_CB, pReserve, 8)
883     TEST_FIELD_OFFSET(USER_MARSHAL_CB, pReserve, 16)
884     TEST_FIELD_SIZE  (USER_MARSHAL_CB, Signature, 4)
885     TEST_FIELD_ALIGN (USER_MARSHAL_CB, Signature, 4)
886     TEST_FIELD_OFFSET(USER_MARSHAL_CB, Signature, 24)
887 }
888 
889 static void test_pack_USER_MARSHAL_FREEING_ROUTINE(void)
890 {
891     /* USER_MARSHAL_FREEING_ROUTINE */
892 }
893 
894 static void test_pack_USER_MARSHAL_MARSHALLING_ROUTINE(void)
895 {
896     /* USER_MARSHAL_MARSHALLING_ROUTINE */
897 }
898 
899 static void test_pack_USER_MARSHAL_ROUTINE_QUADRUPLE(void)
900 {
901     /* USER_MARSHAL_ROUTINE_QUADRUPLE */
902 }
903 
904 static void test_pack_USER_MARSHAL_SIZING_ROUTINE(void)
905 {
906     /* USER_MARSHAL_SIZING_ROUTINE */
907 }
908 
909 static void test_pack_USER_MARSHAL_UNMARSHALLING_ROUTINE(void)
910 {
911     /* USER_MARSHAL_UNMARSHALLING_ROUTINE */
912 }
913 
914 static void test_pack_XMIT_HELPER_ROUTINE(void)
915 {
916     /* XMIT_HELPER_ROUTINE */
917 }
918 
919 static void test_pack_XMIT_ROUTINE_QUINTUPLE(void)
920 {
921     /* XMIT_ROUTINE_QUINTUPLE */
922 }
923 
924 static void test_pack_PRPC_STUB_FUNCTION(void)
925 {
926     /* PRPC_STUB_FUNCTION */
927 }
928 
929 #else /* _WIN64 */
930 
931 static void test_pack_I_RPC_HANDLE(void)
932 {
933     /* I_RPC_HANDLE */
934     TEST_TYPE_SIZE   (I_RPC_HANDLE, 4)
935     TEST_TYPE_ALIGN  (I_RPC_HANDLE, 4)
936 }
937 
938 static void test_pack_RPC_STATUS(void)
939 {
940     /* RPC_STATUS */
941     TEST_TYPE_SIZE   (RPC_STATUS, 4)
942     TEST_TYPE_ALIGN  (RPC_STATUS, 4)
943 }
944 
945 static void test_pack_PRPC_POLICY(void)
946 {
947     /* PRPC_POLICY */
948     TEST_TYPE_SIZE   (PRPC_POLICY, 4)
949     TEST_TYPE_ALIGN  (PRPC_POLICY, 4)
950     TEST_TARGET_SIZE (PRPC_POLICY, 12)
951     TEST_TARGET_ALIGN(PRPC_POLICY, 4)
952 }
953 
954 static void test_pack_RPC_AUTH_IDENTITY_HANDLE(void)
955 {
956     /* RPC_AUTH_IDENTITY_HANDLE */
957     TEST_TYPE_SIZE   (RPC_AUTH_IDENTITY_HANDLE, 4)
958     TEST_TYPE_ALIGN  (RPC_AUTH_IDENTITY_HANDLE, 4)
959 }
960 
961 static void test_pack_RPC_AUTH_KEY_RETRIEVAL_FN(void)
962 {
963     /* RPC_AUTH_KEY_RETRIEVAL_FN */
964 }
965 
966 static void test_pack_RPC_AUTHZ_HANDLE(void)
967 {
968     /* RPC_AUTHZ_HANDLE */
969     TEST_TYPE_SIZE   (RPC_AUTHZ_HANDLE, 4)
970     TEST_TYPE_ALIGN  (RPC_AUTHZ_HANDLE, 4)
971 }
972 
973 static void test_pack_RPC_BINDING_HANDLE(void)
974 {
975     /* RPC_BINDING_HANDLE */
976     TEST_TYPE_SIZE   (RPC_BINDING_HANDLE, 4)
977     TEST_TYPE_ALIGN  (RPC_BINDING_HANDLE, 4)
978 }
979 
980 static void test_pack_RPC_BINDING_VECTOR(void)
981 {
982     /* RPC_BINDING_VECTOR */
983     TEST_TYPE_SIZE   (RPC_BINDING_VECTOR, 8)
984     TEST_TYPE_ALIGN  (RPC_BINDING_VECTOR, 4)
985     TEST_FIELD_SIZE  (RPC_BINDING_VECTOR, Count, 4)
986     TEST_FIELD_ALIGN (RPC_BINDING_VECTOR, Count, 4)
987     TEST_FIELD_OFFSET(RPC_BINDING_VECTOR, Count, 0)
988     TEST_FIELD_SIZE  (RPC_BINDING_VECTOR, BindingH, 4)
989     TEST_FIELD_ALIGN (RPC_BINDING_VECTOR, BindingH, 4)
990     TEST_FIELD_OFFSET(RPC_BINDING_VECTOR, BindingH, 4)
991 }
992 
993 static void test_pack_RPC_IF_HANDLE(void)
994 {
995     /* RPC_IF_HANDLE */
996     TEST_TYPE_SIZE   (RPC_IF_HANDLE, 4)
997     TEST_TYPE_ALIGN  (RPC_IF_HANDLE, 4)
998 }
999 
1000 static void test_pack_RPC_IF_ID(void)
1001 {
1002     /* RPC_IF_ID */
1003     TEST_TYPE_SIZE   (RPC_IF_ID, 20)
1004     TEST_TYPE_ALIGN  (RPC_IF_ID, 4)
1005     TEST_FIELD_SIZE  (RPC_IF_ID, Uuid, 16)
1006     TEST_FIELD_ALIGN (RPC_IF_ID, Uuid, 4)
1007     TEST_FIELD_OFFSET(RPC_IF_ID, Uuid, 0)
1008     TEST_FIELD_SIZE  (RPC_IF_ID, VersMajor, 2)
1009     TEST_FIELD_ALIGN (RPC_IF_ID, VersMajor, 2)
1010     TEST_FIELD_OFFSET(RPC_IF_ID, VersMajor, 16)
1011     TEST_FIELD_SIZE  (RPC_IF_ID, VersMinor, 2)
1012     TEST_FIELD_ALIGN (RPC_IF_ID, VersMinor, 2)
1013     TEST_FIELD_OFFSET(RPC_IF_ID, VersMinor, 18)
1014 }
1015 
1016 static void test_pack_RPC_POLICY(void)
1017 {
1018     /* RPC_POLICY */
1019     TEST_TYPE_SIZE   (RPC_POLICY, 12)
1020     TEST_TYPE_ALIGN  (RPC_POLICY, 4)
1021     TEST_FIELD_SIZE  (RPC_POLICY, Length, 4)
1022     TEST_FIELD_ALIGN (RPC_POLICY, Length, 4)
1023     TEST_FIELD_OFFSET(RPC_POLICY, Length, 0)
1024     TEST_FIELD_SIZE  (RPC_POLICY, EndpointFlags, 4)
1025     TEST_FIELD_ALIGN (RPC_POLICY, EndpointFlags, 4)
1026     TEST_FIELD_OFFSET(RPC_POLICY, EndpointFlags, 4)
1027     TEST_FIELD_SIZE  (RPC_POLICY, NICFlags, 4)
1028     TEST_FIELD_ALIGN (RPC_POLICY, NICFlags, 4)
1029     TEST_FIELD_OFFSET(RPC_POLICY, NICFlags, 8)
1030 }
1031 
1032 static void test_pack_UUID_VECTOR(void)
1033 {
1034     /* UUID_VECTOR */
1035     TEST_TYPE_SIZE   (UUID_VECTOR, 8)
1036     TEST_TYPE_ALIGN  (UUID_VECTOR, 4)
1037     TEST_FIELD_SIZE  (UUID_VECTOR, Count, 4)
1038     TEST_FIELD_ALIGN (UUID_VECTOR, Count, 4)
1039     TEST_FIELD_OFFSET(UUID_VECTOR, Count, 0)
1040     TEST_FIELD_SIZE  (UUID_VECTOR, Uuid, 4)
1041     TEST_FIELD_ALIGN (UUID_VECTOR, Uuid, 4)
1042     TEST_FIELD_OFFSET(UUID_VECTOR, Uuid, 4)
1043 }
1044 
1045 static void test_pack_PRPC_CLIENT_INTERFACE(void)
1046 {
1047     /* PRPC_CLIENT_INTERFACE */
1048     TEST_TYPE_SIZE   (PRPC_CLIENT_INTERFACE, 4)
1049     TEST_TYPE_ALIGN  (PRPC_CLIENT_INTERFACE, 4)
1050     TEST_TARGET_SIZE (PRPC_CLIENT_INTERFACE, 68)
1051     TEST_TARGET_ALIGN(PRPC_CLIENT_INTERFACE, 4)
1052 }
1053 
1054 static void test_pack_PRPC_DISPATCH_TABLE(void)
1055 {
1056     /* PRPC_DISPATCH_TABLE */
1057     TEST_TYPE_SIZE   (PRPC_DISPATCH_TABLE, 4)
1058     TEST_TYPE_ALIGN  (PRPC_DISPATCH_TABLE, 4)
1059     TEST_TARGET_SIZE (PRPC_DISPATCH_TABLE, 12)
1060     TEST_TARGET_ALIGN(PRPC_DISPATCH_TABLE, 4)
1061 }
1062 
1063 static void test_pack_PRPC_MESSAGE(void)
1064 {
1065     /* PRPC_MESSAGE */
1066     TEST_TYPE_SIZE   (PRPC_MESSAGE, 4)
1067     TEST_TYPE_ALIGN  (PRPC_MESSAGE, 4)
1068     TEST_TARGET_SIZE (PRPC_MESSAGE, 44)
1069     TEST_TARGET_ALIGN(PRPC_MESSAGE, 4)
1070 }
1071 
1072 static void test_pack_PRPC_PROTSEQ_ENDPOINT(void)
1073 {
1074     /* PRPC_PROTSEQ_ENDPOINT */
1075     TEST_TYPE_SIZE   (PRPC_PROTSEQ_ENDPOINT, 4)
1076     TEST_TYPE_ALIGN  (PRPC_PROTSEQ_ENDPOINT, 4)
1077     TEST_TARGET_SIZE (PRPC_PROTSEQ_ENDPOINT, 8)
1078     TEST_TARGET_ALIGN(PRPC_PROTSEQ_ENDPOINT, 4)
1079 }
1080 
1081 static void test_pack_PRPC_SERVER_INTERFACE(void)
1082 {
1083     /* PRPC_SERVER_INTERFACE */
1084     TEST_TYPE_SIZE   (PRPC_SERVER_INTERFACE, 4)
1085     TEST_TYPE_ALIGN  (PRPC_SERVER_INTERFACE, 4)
1086     TEST_TARGET_SIZE (PRPC_SERVER_INTERFACE, 68)
1087     TEST_TARGET_ALIGN(PRPC_SERVER_INTERFACE, 4)
1088 }
1089 
1090 static void test_pack_PRPC_SYNTAX_IDENTIFIER(void)
1091 {
1092     /* PRPC_SYNTAX_IDENTIFIER */
1093     TEST_TYPE_SIZE   (PRPC_SYNTAX_IDENTIFIER, 4)
1094     TEST_TYPE_ALIGN  (PRPC_SYNTAX_IDENTIFIER, 4)
1095     TEST_TARGET_SIZE (PRPC_SYNTAX_IDENTIFIER, 20)
1096     TEST_TARGET_ALIGN(PRPC_SYNTAX_IDENTIFIER, 4)
1097 }
1098 
1099 static void test_pack_RPC_CLIENT_INTERFACE(void)
1100 {
1101     /* RPC_CLIENT_INTERFACE */
1102     TEST_TYPE_SIZE   (RPC_CLIENT_INTERFACE, 68)
1103     TEST_TYPE_ALIGN  (RPC_CLIENT_INTERFACE, 4)
1104     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, Length, 4)
1105     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, Length, 4)
1106     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, Length, 0)
1107     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, InterfaceId, 20)
1108     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, InterfaceId, 4)
1109     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, InterfaceId, 4)
1110     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, TransferSyntax, 20)
1111     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, TransferSyntax, 4)
1112     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, TransferSyntax, 24)
1113     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, DispatchTable, 4)
1114     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, DispatchTable, 4)
1115     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, DispatchTable, 44)
1116     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 4)
1117     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 4)
1118     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, RpcProtseqEndpointCount, 48)
1119     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 4)
1120     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 4)
1121     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, RpcProtseqEndpoint, 52)
1122     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, Reserved, 4)
1123     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, Reserved, 4)
1124     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, Reserved, 56)
1125     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, InterpreterInfo, 4)
1126     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, InterpreterInfo, 4)
1127     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, InterpreterInfo, 60)
1128     TEST_FIELD_SIZE  (RPC_CLIENT_INTERFACE, Flags, 4)
1129     TEST_FIELD_ALIGN (RPC_CLIENT_INTERFACE, Flags, 4)
1130     TEST_FIELD_OFFSET(RPC_CLIENT_INTERFACE, Flags, 64)
1131 }
1132 
1133 static void test_pack_RPC_DISPATCH_FUNCTION(void)
1134 {
1135     /* RPC_DISPATCH_FUNCTION */
1136 }
1137 
1138 static void test_pack_RPC_DISPATCH_TABLE(void)
1139 {
1140     /* RPC_DISPATCH_TABLE */
1141     TEST_TYPE_SIZE   (RPC_DISPATCH_TABLE, 12)
1142     TEST_TYPE_ALIGN  (RPC_DISPATCH_TABLE, 4)
1143     TEST_FIELD_SIZE  (RPC_DISPATCH_TABLE, DispatchTableCount, 4)
1144     TEST_FIELD_ALIGN (RPC_DISPATCH_TABLE, DispatchTableCount, 4)
1145     TEST_FIELD_OFFSET(RPC_DISPATCH_TABLE, DispatchTableCount, 0)
1146     TEST_FIELD_SIZE  (RPC_DISPATCH_TABLE, DispatchTable, 4)
1147     TEST_FIELD_ALIGN (RPC_DISPATCH_TABLE, DispatchTable, 4)
1148     TEST_FIELD_OFFSET(RPC_DISPATCH_TABLE, DispatchTable, 4)
1149     TEST_FIELD_SIZE  (RPC_DISPATCH_TABLE, Reserved, 4)
1150     TEST_FIELD_ALIGN (RPC_DISPATCH_TABLE, Reserved, 4)
1151     TEST_FIELD_OFFSET(RPC_DISPATCH_TABLE, Reserved, 8)
1152 }
1153 
1154 static void test_pack_RPC_MESSAGE(void)
1155 {
1156     /* RPC_MESSAGE */
1157     TEST_TYPE_SIZE   (RPC_MESSAGE, 44)
1158     TEST_TYPE_ALIGN  (RPC_MESSAGE, 4)
1159     TEST_FIELD_SIZE  (RPC_MESSAGE, Handle, 4)
1160     TEST_FIELD_ALIGN (RPC_MESSAGE, Handle, 4)
1161     TEST_FIELD_OFFSET(RPC_MESSAGE, Handle, 0)
1162     TEST_FIELD_SIZE  (RPC_MESSAGE, DataRepresentation, 4)
1163     TEST_FIELD_ALIGN (RPC_MESSAGE, DataRepresentation, 4)
1164     TEST_FIELD_OFFSET(RPC_MESSAGE, DataRepresentation, 4)
1165     TEST_FIELD_SIZE  (RPC_MESSAGE, Buffer, 4)
1166     TEST_FIELD_ALIGN (RPC_MESSAGE, Buffer, 4)
1167     TEST_FIELD_OFFSET(RPC_MESSAGE, Buffer, 8)
1168     TEST_FIELD_SIZE  (RPC_MESSAGE, BufferLength, 4)
1169     TEST_FIELD_ALIGN (RPC_MESSAGE, BufferLength, 4)
1170     TEST_FIELD_OFFSET(RPC_MESSAGE, BufferLength, 12)
1171     TEST_FIELD_SIZE  (RPC_MESSAGE, ProcNum, 4)
1172     TEST_FIELD_ALIGN (RPC_MESSAGE, ProcNum, 4)
1173     TEST_FIELD_OFFSET(RPC_MESSAGE, ProcNum, 16)
1174     TEST_FIELD_SIZE  (RPC_MESSAGE, TransferSyntax, 4)
1175     TEST_FIELD_ALIGN (RPC_MESSAGE, TransferSyntax, 4)
1176     TEST_FIELD_OFFSET(RPC_MESSAGE, TransferSyntax, 20)
1177     TEST_FIELD_SIZE  (RPC_MESSAGE, RpcInterfaceInformation, 4)
1178     TEST_FIELD_ALIGN (RPC_MESSAGE, RpcInterfaceInformation, 4)
1179     TEST_FIELD_OFFSET(RPC_MESSAGE, RpcInterfaceInformation, 24)
1180     TEST_FIELD_SIZE  (RPC_MESSAGE, ReservedForRuntime, 4)
1181     TEST_FIELD_ALIGN (RPC_MESSAGE, ReservedForRuntime, 4)
1182     TEST_FIELD_OFFSET(RPC_MESSAGE, ReservedForRuntime, 28)
1183     TEST_FIELD_SIZE  (RPC_MESSAGE, ManagerEpv, 4)
1184     TEST_FIELD_ALIGN (RPC_MESSAGE, ManagerEpv, 4)
1185     TEST_FIELD_OFFSET(RPC_MESSAGE, ManagerEpv, 32)
1186     TEST_FIELD_SIZE  (RPC_MESSAGE, ImportContext, 4)
1187     TEST_FIELD_ALIGN (RPC_MESSAGE, ImportContext, 4)
1188     TEST_FIELD_OFFSET(RPC_MESSAGE, ImportContext, 36)
1189     TEST_FIELD_SIZE  (RPC_MESSAGE, RpcFlags, 4)
1190     TEST_FIELD_ALIGN (RPC_MESSAGE, RpcFlags, 4)
1191     TEST_FIELD_OFFSET(RPC_MESSAGE, RpcFlags, 40)
1192 }
1193 
1194 static void test_pack_RPC_PROTSEQ_ENDPOINT(void)
1195 {
1196     /* RPC_PROTSEQ_ENDPOINT */
1197     TEST_TYPE_SIZE   (RPC_PROTSEQ_ENDPOINT, 8)
1198     TEST_TYPE_ALIGN  (RPC_PROTSEQ_ENDPOINT, 4)
1199     TEST_FIELD_SIZE  (RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 4)
1200     TEST_FIELD_ALIGN (RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 4)
1201     TEST_FIELD_OFFSET(RPC_PROTSEQ_ENDPOINT, RpcProtocolSequence, 0)
1202     TEST_FIELD_SIZE  (RPC_PROTSEQ_ENDPOINT, Endpoint, 4)
1203     TEST_FIELD_ALIGN (RPC_PROTSEQ_ENDPOINT, Endpoint, 4)
1204     TEST_FIELD_OFFSET(RPC_PROTSEQ_ENDPOINT, Endpoint, 4)
1205 }
1206 
1207 static void test_pack_RPC_SERVER_INTERFACE(void)
1208 {
1209     /* RPC_SERVER_INTERFACE */
1210     TEST_TYPE_SIZE   (RPC_SERVER_INTERFACE, 68)
1211     TEST_TYPE_ALIGN  (RPC_SERVER_INTERFACE, 4)
1212     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, Length, 4)
1213     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, Length, 4)
1214     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, Length, 0)
1215     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, InterfaceId, 20)
1216     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, InterfaceId, 4)
1217     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, InterfaceId, 4)
1218     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, TransferSyntax, 20)
1219     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, TransferSyntax, 4)
1220     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, TransferSyntax, 24)
1221     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, DispatchTable, 4)
1222     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, DispatchTable, 4)
1223     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, DispatchTable, 44)
1224     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 4)
1225     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 4)
1226     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, RpcProtseqEndpointCount, 48)
1227     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 4)
1228     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 4)
1229     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, RpcProtseqEndpoint, 52)
1230     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, DefaultManagerEpv, 4)
1231     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, DefaultManagerEpv, 4)
1232     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, DefaultManagerEpv, 56)
1233     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, InterpreterInfo, 4)
1234     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, InterpreterInfo, 4)
1235     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, InterpreterInfo, 60)
1236     TEST_FIELD_SIZE  (RPC_SERVER_INTERFACE, Flags, 4)
1237     TEST_FIELD_ALIGN (RPC_SERVER_INTERFACE, Flags, 4)
1238     TEST_FIELD_OFFSET(RPC_SERVER_INTERFACE, Flags, 64)
1239 }
1240 
1241 static void test_pack_RPC_SYNTAX_IDENTIFIER(void)
1242 {
1243     /* RPC_SYNTAX_IDENTIFIER */
1244     TEST_TYPE_SIZE   (RPC_SYNTAX_IDENTIFIER, 20)
1245     TEST_TYPE_ALIGN  (RPC_SYNTAX_IDENTIFIER, 4)
1246     TEST_FIELD_SIZE  (RPC_SYNTAX_IDENTIFIER, SyntaxGUID, 16)
1247     TEST_FIELD_ALIGN (RPC_SYNTAX_IDENTIFIER, SyntaxGUID, 4)
1248     TEST_FIELD_OFFSET(RPC_SYNTAX_IDENTIFIER, SyntaxGUID, 0)
1249     TEST_FIELD_SIZE  (RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 4)
1250     TEST_FIELD_ALIGN (RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 2)
1251     TEST_FIELD_OFFSET(RPC_SYNTAX_IDENTIFIER, SyntaxVersion, 16)
1252 }
1253 
1254 static void test_pack_RPC_VERSION(void)
1255 {
1256     /* RPC_VERSION */
1257     TEST_TYPE_SIZE   (RPC_VERSION, 4)
1258     TEST_TYPE_ALIGN  (RPC_VERSION, 2)
1259     TEST_FIELD_SIZE  (RPC_VERSION, MajorVersion, 2)
1260     TEST_FIELD_ALIGN (RPC_VERSION, MajorVersion, 2)
1261     TEST_FIELD_OFFSET(RPC_VERSION, MajorVersion, 0)
1262     TEST_FIELD_SIZE  (RPC_VERSION, MinorVersion, 2)
1263     TEST_FIELD_ALIGN (RPC_VERSION, MinorVersion, 2)
1264     TEST_FIELD_OFFSET(RPC_VERSION, MinorVersion, 2)
1265 }
1266 
1267 static void test_pack_ARRAY_INFO(void)
1268 {
1269     /* ARRAY_INFO */
1270     TEST_TYPE_SIZE   (ARRAY_INFO, 24)
1271     TEST_TYPE_ALIGN  (ARRAY_INFO, 4)
1272     TEST_FIELD_SIZE  (ARRAY_INFO, Dimension, 4)
1273     TEST_FIELD_ALIGN (ARRAY_INFO, Dimension, 4)
1274     TEST_FIELD_OFFSET(ARRAY_INFO, Dimension, 0)
1275     TEST_FIELD_SIZE  (ARRAY_INFO, BufferConformanceMark, 4)
1276     TEST_FIELD_ALIGN (ARRAY_INFO, BufferConformanceMark, 4)
1277     TEST_FIELD_OFFSET(ARRAY_INFO, BufferConformanceMark, 4)
1278     TEST_FIELD_SIZE  (ARRAY_INFO, BufferVarianceMark, 4)
1279     TEST_FIELD_ALIGN (ARRAY_INFO, BufferVarianceMark, 4)
1280     TEST_FIELD_OFFSET(ARRAY_INFO, BufferVarianceMark, 8)
1281     TEST_FIELD_SIZE  (ARRAY_INFO, MaxCountArray, 4)
1282     TEST_FIELD_ALIGN (ARRAY_INFO, MaxCountArray, 4)
1283     TEST_FIELD_OFFSET(ARRAY_INFO, MaxCountArray, 12)
1284     TEST_FIELD_SIZE  (ARRAY_INFO, OffsetArray, 4)
1285     TEST_FIELD_ALIGN (ARRAY_INFO, OffsetArray, 4)
1286     TEST_FIELD_OFFSET(ARRAY_INFO, OffsetArray, 16)
1287     TEST_FIELD_SIZE  (ARRAY_INFO, ActualCountArray, 4)
1288     TEST_FIELD_ALIGN (ARRAY_INFO, ActualCountArray, 4)
1289     TEST_FIELD_OFFSET(ARRAY_INFO, ActualCountArray, 20)
1290 }
1291 
1292 static void test_pack_COMM_FAULT_OFFSETS(void)
1293 {
1294     /* COMM_FAULT_OFFSETS */
1295     TEST_TYPE_SIZE   (COMM_FAULT_OFFSETS, 4)
1296     TEST_TYPE_ALIGN  (COMM_FAULT_OFFSETS, 2)
1297     TEST_FIELD_SIZE  (COMM_FAULT_OFFSETS, CommOffset, 2)
1298     TEST_FIELD_ALIGN (COMM_FAULT_OFFSETS, CommOffset, 2)
1299     TEST_FIELD_OFFSET(COMM_FAULT_OFFSETS, CommOffset, 0)
1300     TEST_FIELD_SIZE  (COMM_FAULT_OFFSETS, FaultOffset, 2)
1301     TEST_FIELD_ALIGN (COMM_FAULT_OFFSETS, FaultOffset, 2)
1302     TEST_FIELD_OFFSET(COMM_FAULT_OFFSETS, FaultOffset, 2)
1303 }
1304 
1305 static void test_pack_CS_STUB_INFO(void)
1306 {
1307     /* CS_STUB_INFO */
1308     TEST_TYPE_SIZE   (CS_STUB_INFO, 12)
1309     TEST_TYPE_ALIGN  (CS_STUB_INFO, 4)
1310     TEST_FIELD_SIZE  (CS_STUB_INFO, WireCodeset, 4)
1311     TEST_FIELD_ALIGN (CS_STUB_INFO, WireCodeset, 4)
1312     TEST_FIELD_OFFSET(CS_STUB_INFO, WireCodeset, 0)
1313     TEST_FIELD_SIZE  (CS_STUB_INFO, DesiredReceivingCodeset, 4)
1314     TEST_FIELD_ALIGN (CS_STUB_INFO, DesiredReceivingCodeset, 4)
1315     TEST_FIELD_OFFSET(CS_STUB_INFO, DesiredReceivingCodeset, 4)
1316     TEST_FIELD_SIZE  (CS_STUB_INFO, CSArrayInfo, 4)
1317     TEST_FIELD_ALIGN (CS_STUB_INFO, CSArrayInfo, 4)
1318     TEST_FIELD_OFFSET(CS_STUB_INFO, CSArrayInfo, 8)
1319 }
1320 
1321 static void test_pack_EXPR_EVAL(void)
1322 {
1323     /* EXPR_EVAL */
1324 }
1325 
1326 static void test_pack_FULL_PTR_TO_REFID_ELEMENT(void)
1327 {
1328     /* FULL_PTR_TO_REFID_ELEMENT */
1329     TEST_TYPE_SIZE   (FULL_PTR_TO_REFID_ELEMENT, 16)
1330     TEST_TYPE_ALIGN  (FULL_PTR_TO_REFID_ELEMENT, 4)
1331     TEST_FIELD_SIZE  (FULL_PTR_TO_REFID_ELEMENT, Next, 4)
1332     TEST_FIELD_ALIGN (FULL_PTR_TO_REFID_ELEMENT, Next, 4)
1333     TEST_FIELD_OFFSET(FULL_PTR_TO_REFID_ELEMENT, Next, 0)
1334     TEST_FIELD_SIZE  (FULL_PTR_TO_REFID_ELEMENT, Pointer, 4)
1335     TEST_FIELD_ALIGN (FULL_PTR_TO_REFID_ELEMENT, Pointer, 4)
1336     TEST_FIELD_OFFSET(FULL_PTR_TO_REFID_ELEMENT, Pointer, 4)
1337     TEST_FIELD_SIZE  (FULL_PTR_TO_REFID_ELEMENT, RefId, 4)
1338     TEST_FIELD_ALIGN (FULL_PTR_TO_REFID_ELEMENT, RefId, 4)
1339     TEST_FIELD_OFFSET(FULL_PTR_TO_REFID_ELEMENT, RefId, 8)
1340     TEST_FIELD_SIZE  (FULL_PTR_TO_REFID_ELEMENT, State, 1)
1341     TEST_FIELD_ALIGN (FULL_PTR_TO_REFID_ELEMENT, State, 1)
1342     TEST_FIELD_OFFSET(FULL_PTR_TO_REFID_ELEMENT, State, 12)
1343 }
1344 
1345 static void test_pack_FULL_PTR_XLAT_TABLES(void)
1346 {
1347     /* FULL_PTR_XLAT_TABLES */
1348 }
1349 
1350 static void test_pack_GENERIC_BINDING_INFO(void)
1351 {
1352     /* GENERIC_BINDING_INFO */
1353     TEST_FIELD_SIZE  (GENERIC_BINDING_INFO, pObj, 4)
1354     TEST_FIELD_ALIGN (GENERIC_BINDING_INFO, pObj, 4)
1355     TEST_FIELD_OFFSET(GENERIC_BINDING_INFO, pObj, 0)
1356     TEST_FIELD_SIZE  (GENERIC_BINDING_INFO, Size, 4)
1357     TEST_FIELD_ALIGN (GENERIC_BINDING_INFO, Size, 4)
1358     TEST_FIELD_OFFSET(GENERIC_BINDING_INFO, Size, 4)
1359 }
1360 
1361 static void test_pack_GENERIC_BINDING_ROUTINE_PAIR(void)
1362 {
1363     /* GENERIC_BINDING_ROUTINE_PAIR */
1364 }
1365 
1366 static void test_pack_MALLOC_FREE_STRUCT(void)
1367 {
1368     /* MALLOC_FREE_STRUCT */
1369 }
1370 
1371 static void test_pack_MIDL_FORMAT_STRING(void)
1372 {
1373     /* MIDL_FORMAT_STRING */
1374     TEST_FIELD_SIZE  (MIDL_FORMAT_STRING, Pad, 2)
1375     TEST_FIELD_ALIGN (MIDL_FORMAT_STRING, Pad, 2)
1376     TEST_FIELD_OFFSET(MIDL_FORMAT_STRING, Pad, 0)
1377 }
1378 
1379 static void test_pack_MIDL_SERVER_INFO(void)
1380 {
1381     /* MIDL_SERVER_INFO */
1382     TEST_TYPE_SIZE   (MIDL_SERVER_INFO, 32)
1383     TEST_TYPE_ALIGN  (MIDL_SERVER_INFO, 4)
1384     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, pStubDesc, 4)
1385     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pStubDesc, 4)
1386     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pStubDesc, 0)
1387     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, DispatchTable, 4)
1388     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, DispatchTable, 4)
1389     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, DispatchTable, 4)
1390     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, ProcString, 4)
1391     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, ProcString, 4)
1392     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, ProcString, 8)
1393     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, FmtStringOffset, 4)
1394     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, FmtStringOffset, 4)
1395     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, FmtStringOffset, 12)
1396     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, ThunkTable, 4)
1397     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, ThunkTable, 4)
1398     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, ThunkTable, 16)
1399     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, pTransferSyntax, 4)
1400     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pTransferSyntax, 4)
1401     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pTransferSyntax, 20)
1402     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, nCount, 4)
1403     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, nCount, 4)
1404     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, nCount, 24)
1405     TEST_FIELD_SIZE  (MIDL_SERVER_INFO, pSyntaxInfo, 4)
1406     TEST_FIELD_ALIGN (MIDL_SERVER_INFO, pSyntaxInfo, 4)
1407     TEST_FIELD_OFFSET(MIDL_SERVER_INFO, pSyntaxInfo, 28)
1408 }
1409 
1410 static void test_pack_MIDL_STUB_DESC(void)
1411 {
1412     /* MIDL_STUB_DESC */
1413     TEST_FIELD_SIZE  (MIDL_STUB_DESC, RpcInterfaceInformation, 4)
1414     TEST_FIELD_ALIGN (MIDL_STUB_DESC, RpcInterfaceInformation, 4)
1415     TEST_FIELD_OFFSET(MIDL_STUB_DESC, RpcInterfaceInformation, 0)
1416 }
1417 
1418 static void test_pack_MIDL_STUB_MESSAGE(void)
1419 {
1420     /* MIDL_STUB_MESSAGE */
1421     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, RpcMsg, 4)
1422     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, RpcMsg, 4)
1423     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, RpcMsg, 0)
1424     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, Buffer, 4)
1425     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, Buffer, 4)
1426     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, Buffer, 4)
1427     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, BufferStart, 4)
1428     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferStart, 4)
1429     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferStart, 8)
1430     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, BufferEnd, 4)
1431     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferEnd, 4)
1432     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferEnd, 12)
1433     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, BufferMark, 4)
1434     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferMark, 4)
1435     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferMark, 16)
1436     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, BufferLength, 4)
1437     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, BufferLength, 4)
1438     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, BufferLength, 20)
1439     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, MemorySize, 4)
1440     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, MemorySize, 4)
1441     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, MemorySize, 24)
1442     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, Memory, 4)
1443     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, Memory, 4)
1444     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, Memory, 28)
1445     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, ReuseBuffer, 4)
1446     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, ReuseBuffer, 4)
1447     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, ReuseBuffer, 36)
1448     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, pAllocAllNodesContext, 4)
1449     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, pAllocAllNodesContext, 4)
1450     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, pAllocAllNodesContext, 40)
1451     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, pPointerQueueState, 4)
1452     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, pPointerQueueState, 4)
1453     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, pPointerQueueState, 44)
1454     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 4)
1455     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 4)
1456     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, IgnoreEmbeddedPointers, 48)
1457     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, PointerBufferMark, 4)
1458     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, PointerBufferMark, 4)
1459     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, PointerBufferMark, 52)
1460     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, CorrDespIncrement, 1)
1461     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, CorrDespIncrement, 1)
1462     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, CorrDespIncrement, 56)
1463     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, uFlags, 1)
1464     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, uFlags, 1)
1465     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, uFlags, 57)
1466     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, MaxCount, 4)
1467     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, MaxCount, 4)
1468     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, MaxCount, 60)
1469     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, Offset, 4)
1470     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, Offset, 4)
1471     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, Offset, 64)
1472     TEST_FIELD_SIZE  (MIDL_STUB_MESSAGE, ActualCount, 4)
1473     TEST_FIELD_ALIGN (MIDL_STUB_MESSAGE, ActualCount, 4)
1474     TEST_FIELD_OFFSET(MIDL_STUB_MESSAGE, ActualCount, 68)
1475 }
1476 
1477 static void test_pack_MIDL_STUBLESS_PROXY_INFO(void)
1478 {
1479     /* MIDL_STUBLESS_PROXY_INFO */
1480     TEST_TYPE_SIZE   (MIDL_STUBLESS_PROXY_INFO, 24)
1481     TEST_TYPE_ALIGN  (MIDL_STUBLESS_PROXY_INFO, 4)
1482     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, pStubDesc, 4)
1483     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, pStubDesc, 4)
1484     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, pStubDesc, 0)
1485     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 4)
1486     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 4)
1487     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, ProcFormatString, 4)
1488     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 4)
1489     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 4)
1490     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, FormatStringOffset, 8)
1491     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 4)
1492     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 4)
1493     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, pTransferSyntax, 12)
1494     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, nCount, 4)
1495     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, nCount, 4)
1496     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, nCount, 16)
1497     TEST_FIELD_SIZE  (MIDL_STUBLESS_PROXY_INFO, pSyntaxInfo, 4)
1498     TEST_FIELD_ALIGN (MIDL_STUBLESS_PROXY_INFO, pSyntaxInfo, 4)
1499     TEST_FIELD_OFFSET(MIDL_STUBLESS_PROXY_INFO, pSyntaxInfo, 20)
1500 }
1501 
1502 static void test_pack_MIDL_SYNTAX_INFO(void)
1503 {
1504     /* MIDL_SYNTAX_INFO */
1505     TEST_TYPE_SIZE   (MIDL_SYNTAX_INFO, 48)
1506     TEST_TYPE_ALIGN  (MIDL_SYNTAX_INFO, 4)
1507     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, TransferSyntax, 20)
1508     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, TransferSyntax, 4)
1509     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, TransferSyntax, 0)
1510     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, DispatchTable, 4)
1511     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, DispatchTable, 4)
1512     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, DispatchTable, 20)
1513     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, ProcString, 4)
1514     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, ProcString, 4)
1515     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, ProcString, 24)
1516     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, FmtStringOffset, 4)
1517     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, FmtStringOffset, 4)
1518     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, FmtStringOffset, 28)
1519     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, TypeString, 4)
1520     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, TypeString, 4)
1521     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, TypeString, 32)
1522     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4)
1523     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 4)
1524     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, aUserMarshalQuadruple, 36)
1525     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, pReserved1, 4)
1526     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved1, 4)
1527     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved1, 40)
1528     TEST_FIELD_SIZE  (MIDL_SYNTAX_INFO, pReserved2, 4)
1529     TEST_FIELD_ALIGN (MIDL_SYNTAX_INFO, pReserved2, 4)
1530     TEST_FIELD_OFFSET(MIDL_SYNTAX_INFO, pReserved2, 44)
1531 }
1532 
1533 static void test_pack_NDR_CCONTEXT(void)
1534 {
1535     /* NDR_CCONTEXT */
1536     TEST_TYPE_SIZE   (NDR_CCONTEXT, 4)
1537     TEST_TYPE_ALIGN  (NDR_CCONTEXT, 4)
1538 }
1539 
1540 static void test_pack_NDR_NOTIFY_ROUTINE(void)
1541 {
1542     /* NDR_NOTIFY_ROUTINE */
1543 }
1544 
1545 static void test_pack_NDR_NOTIFY2_ROUTINE(void)
1546 {
1547     /* NDR_NOTIFY2_ROUTINE */
1548 }
1549 
1550 static void test_pack_NDR_RUNDOWN(void)
1551 {
1552     /* NDR_RUNDOWN */
1553 }
1554 
1555 static void test_pack_NDR_SCONTEXT(void)
1556 {
1557     /* NDR_SCONTEXT */
1558     TEST_TYPE_SIZE   (NDR_SCONTEXT, 4)
1559     TEST_TYPE_ALIGN  (NDR_SCONTEXT, 4)
1560 }
1561 
1562 static void test_pack_NDR_USER_MARSHAL_INFO(void)
1563 {
1564     /* NDR_USER_MARSHAL_INFO */
1565     TEST_FIELD_SIZE  (NDR_USER_MARSHAL_INFO, InformationLevel, 4)
1566     TEST_FIELD_ALIGN (NDR_USER_MARSHAL_INFO, InformationLevel, 4)
1567     TEST_FIELD_OFFSET(NDR_USER_MARSHAL_INFO, InformationLevel, 0)
1568 }
1569 
1570 static void test_pack_NDR_USER_MARSHAL_INFO_LEVEL1(void)
1571 {
1572     /* NDR_USER_MARSHAL_INFO_LEVEL1 */
1573     TEST_FIELD_SIZE  (NDR_USER_MARSHAL_INFO_LEVEL1, Buffer, 4)
1574     TEST_FIELD_ALIGN (NDR_USER_MARSHAL_INFO_LEVEL1, Buffer, 4)
1575     TEST_FIELD_OFFSET(NDR_USER_MARSHAL_INFO_LEVEL1, Buffer, 0)
1576     TEST_FIELD_SIZE  (NDR_USER_MARSHAL_INFO_LEVEL1, BufferSize, 4)
1577     TEST_FIELD_ALIGN (NDR_USER_MARSHAL_INFO_LEVEL1, BufferSize, 4)
1578     TEST_FIELD_OFFSET(NDR_USER_MARSHAL_INFO_LEVEL1, BufferSize, 4)
1579 }
1580 
1581 static void test_pack_PARRAY_INFO(void)
1582 {
1583     /* PARRAY_INFO */
1584     TEST_TYPE_SIZE   (PARRAY_INFO, 4)
1585     TEST_TYPE_ALIGN  (PARRAY_INFO, 4)
1586     TEST_TARGET_SIZE (PARRAY_INFO, 24)
1587     TEST_TARGET_ALIGN(PARRAY_INFO, 4)
1588 }
1589 
1590 static void test_pack_PFORMAT_STRING(void)
1591 {
1592     /* PFORMAT_STRING */
1593     TEST_TYPE_SIZE   (PFORMAT_STRING, 4)
1594     TEST_TYPE_ALIGN  (PFORMAT_STRING, 4)
1595 }
1596 
1597 static void test_pack_PFULL_PTR_TO_REFID_ELEMENT(void)
1598 {
1599     /* PFULL_PTR_TO_REFID_ELEMENT */
1600     TEST_TYPE_SIZE   (PFULL_PTR_TO_REFID_ELEMENT, 4)
1601     TEST_TYPE_ALIGN  (PFULL_PTR_TO_REFID_ELEMENT, 4)
1602     TEST_TARGET_SIZE (PFULL_PTR_TO_REFID_ELEMENT, 16)
1603     TEST_TARGET_ALIGN(PFULL_PTR_TO_REFID_ELEMENT, 4)
1604 }
1605 
1606 static void test_pack_PFULL_PTR_XLAT_TABLES(void)
1607 {
1608     /* PFULL_PTR_XLAT_TABLES */
1609     TEST_TYPE_SIZE   (PFULL_PTR_XLAT_TABLES, 4)
1610     TEST_TYPE_ALIGN  (PFULL_PTR_XLAT_TABLES, 4)
1611 }
1612 
1613 static void test_pack_PGENERIC_BINDING_INFO(void)
1614 {
1615     /* PGENERIC_BINDING_INFO */
1616     TEST_TYPE_SIZE   (PGENERIC_BINDING_INFO, 4)
1617     TEST_TYPE_ALIGN  (PGENERIC_BINDING_INFO, 4)
1618 }
1619 
1620 static void test_pack_PGENERIC_BINDING_ROUTINE_PAIR(void)
1621 {
1622     /* PGENERIC_BINDING_ROUTINE_PAIR */
1623     TEST_TYPE_SIZE   (PGENERIC_BINDING_ROUTINE_PAIR, 4)
1624     TEST_TYPE_ALIGN  (PGENERIC_BINDING_ROUTINE_PAIR, 4)
1625 }
1626 
1627 static void test_pack_PMIDL_SERVER_INFO(void)
1628 {
1629     /* PMIDL_SERVER_INFO */
1630     TEST_TYPE_SIZE   (PMIDL_SERVER_INFO, 4)
1631     TEST_TYPE_ALIGN  (PMIDL_SERVER_INFO, 4)
1632     TEST_TARGET_SIZE (PMIDL_SERVER_INFO, 32)
1633     TEST_TARGET_ALIGN(PMIDL_SERVER_INFO, 4)
1634 }
1635 
1636 static void test_pack_PMIDL_STUB_DESC(void)
1637 {
1638     /* PMIDL_STUB_DESC */
1639     TEST_TYPE_SIZE   (PMIDL_STUB_DESC, 4)
1640     TEST_TYPE_ALIGN  (PMIDL_STUB_DESC, 4)
1641 }
1642 
1643 static void test_pack_PMIDL_STUB_MESSAGE(void)
1644 {
1645     /* PMIDL_STUB_MESSAGE */
1646     TEST_TYPE_SIZE   (PMIDL_STUB_MESSAGE, 4)
1647     TEST_TYPE_ALIGN  (PMIDL_STUB_MESSAGE, 4)
1648 }
1649 
1650 static void test_pack_PMIDL_STUBLESS_PROXY_INFO(void)
1651 {
1652     /* PMIDL_STUBLESS_PROXY_INFO */
1653     TEST_TYPE_SIZE   (PMIDL_STUBLESS_PROXY_INFO, 4)
1654     TEST_TYPE_ALIGN  (PMIDL_STUBLESS_PROXY_INFO, 4)
1655     TEST_TARGET_SIZE (PMIDL_STUBLESS_PROXY_INFO, 24)
1656     TEST_TARGET_ALIGN(PMIDL_STUBLESS_PROXY_INFO, 4)
1657 }
1658 
1659 static void test_pack_PMIDL_SYNTAX_INFO(void)
1660 {
1661     /* PMIDL_SYNTAX_INFO */
1662     TEST_TYPE_SIZE   (PMIDL_SYNTAX_INFO, 4)
1663     TEST_TYPE_ALIGN  (PMIDL_SYNTAX_INFO, 4)
1664     TEST_TARGET_SIZE (PMIDL_SYNTAX_INFO, 48)
1665     TEST_TARGET_ALIGN(PMIDL_SYNTAX_INFO, 4)
1666 }
1667 
1668 static void test_pack_PNDR_ASYNC_MESSAGE(void)
1669 {
1670     /* PNDR_ASYNC_MESSAGE */
1671     TEST_TYPE_SIZE   (PNDR_ASYNC_MESSAGE, 4)
1672     TEST_TYPE_ALIGN  (PNDR_ASYNC_MESSAGE, 4)
1673 }
1674 
1675 static void test_pack_PNDR_CORRELATION_INFO(void)
1676 {
1677     /* PNDR_CORRELATION_INFO */
1678     TEST_TYPE_SIZE   (PNDR_CORRELATION_INFO, 4)
1679     TEST_TYPE_ALIGN  (PNDR_CORRELATION_INFO, 4)
1680 }
1681 
1682 static void test_pack_PSCONTEXT_QUEUE(void)
1683 {
1684     /* PSCONTEXT_QUEUE */
1685     TEST_TYPE_SIZE   (PSCONTEXT_QUEUE, 4)
1686     TEST_TYPE_ALIGN  (PSCONTEXT_QUEUE, 4)
1687     TEST_TARGET_SIZE (PSCONTEXT_QUEUE, 8)
1688     TEST_TARGET_ALIGN(PSCONTEXT_QUEUE, 4)
1689 }
1690 
1691 static void test_pack_PXMIT_ROUTINE_QUINTUPLE(void)
1692 {
1693     /* PXMIT_ROUTINE_QUINTUPLE */
1694     TEST_TYPE_SIZE   (PXMIT_ROUTINE_QUINTUPLE, 4)
1695     TEST_TYPE_ALIGN  (PXMIT_ROUTINE_QUINTUPLE, 4)
1696 }
1697 
1698 static void test_pack_SCONTEXT_QUEUE(void)
1699 {
1700     /* SCONTEXT_QUEUE */
1701     TEST_TYPE_SIZE   (SCONTEXT_QUEUE, 8)
1702     TEST_TYPE_ALIGN  (SCONTEXT_QUEUE, 4)
1703     TEST_FIELD_SIZE  (SCONTEXT_QUEUE, NumberOfObjects, 4)
1704     TEST_FIELD_ALIGN (SCONTEXT_QUEUE, NumberOfObjects, 4)
1705     TEST_FIELD_OFFSET(SCONTEXT_QUEUE, NumberOfObjects, 0)
1706     TEST_FIELD_SIZE  (SCONTEXT_QUEUE, ArrayOfObjects, 4)
1707     TEST_FIELD_ALIGN (SCONTEXT_QUEUE, ArrayOfObjects, 4)
1708     TEST_FIELD_OFFSET(SCONTEXT_QUEUE, ArrayOfObjects, 4)
1709 }
1710 
1711 static void test_pack_SERVER_ROUTINE(void)
1712 {
1713     /* SERVER_ROUTINE */
1714 }
1715 
1716 static void test_pack_STUB_THUNK(void)
1717 {
1718     /* STUB_THUNK */
1719 }
1720 
1721 static void test_pack_USER_MARSHAL_CB(void)
1722 {
1723     /* USER_MARSHAL_CB */
1724     TEST_FIELD_SIZE  (USER_MARSHAL_CB, Flags, 4)
1725     TEST_FIELD_ALIGN (USER_MARSHAL_CB, Flags, 4)
1726     TEST_FIELD_OFFSET(USER_MARSHAL_CB, Flags, 0)
1727     TEST_FIELD_SIZE  (USER_MARSHAL_CB, pStubMsg, 4)
1728     TEST_FIELD_ALIGN (USER_MARSHAL_CB, pStubMsg, 4)
1729     TEST_FIELD_OFFSET(USER_MARSHAL_CB, pStubMsg, 4)
1730     TEST_FIELD_SIZE  (USER_MARSHAL_CB, pReserve, 4)
1731     TEST_FIELD_ALIGN (USER_MARSHAL_CB, pReserve, 4)
1732     TEST_FIELD_OFFSET(USER_MARSHAL_CB, pReserve, 8)
1733     TEST_FIELD_SIZE  (USER_MARSHAL_CB, Signature, 4)
1734     TEST_FIELD_ALIGN (USER_MARSHAL_CB, Signature, 4)
1735     TEST_FIELD_OFFSET(USER_MARSHAL_CB, Signature, 12)
1736 }
1737 
1738 static void test_pack_USER_MARSHAL_FREEING_ROUTINE(void)
1739 {
1740     /* USER_MARSHAL_FREEING_ROUTINE */
1741 }
1742 
1743 static void test_pack_USER_MARSHAL_MARSHALLING_ROUTINE(void)
1744 {
1745     /* USER_MARSHAL_MARSHALLING_ROUTINE */
1746 }
1747 
1748 static void test_pack_USER_MARSHAL_ROUTINE_QUADRUPLE(void)
1749 {
1750     /* USER_MARSHAL_ROUTINE_QUADRUPLE */
1751 }
1752 
1753 static void test_pack_USER_MARSHAL_SIZING_ROUTINE(void)
1754 {
1755     /* USER_MARSHAL_SIZING_ROUTINE */
1756 }
1757 
1758 static void test_pack_USER_MARSHAL_UNMARSHALLING_ROUTINE(void)
1759 {
1760     /* USER_MARSHAL_UNMARSHALLING_ROUTINE */
1761 }
1762 
1763 static void test_pack_XMIT_HELPER_ROUTINE(void)
1764 {
1765     /* XMIT_HELPER_ROUTINE */
1766 }
1767 
1768 static void test_pack_XMIT_ROUTINE_QUINTUPLE(void)
1769 {
1770     /* XMIT_ROUTINE_QUINTUPLE */
1771 }
1772 
1773 static void test_pack_PRPC_STUB_FUNCTION(void)
1774 {
1775     /* PRPC_STUB_FUNCTION */
1776 }
1777 
1778 #endif /* _WIN64 */
1779 
1780 static void test_pack(void)
1781 {
1782     test_pack_ARRAY_INFO();
1783     test_pack_COMM_FAULT_OFFSETS();
1784     test_pack_CS_STUB_INFO();
1785     test_pack_EXPR_EVAL();
1786     test_pack_FULL_PTR_TO_REFID_ELEMENT();
1787     test_pack_FULL_PTR_XLAT_TABLES();
1788     test_pack_GENERIC_BINDING_INFO();
1789     test_pack_GENERIC_BINDING_ROUTINE_PAIR();
1790     test_pack_I_RPC_HANDLE();
1791     test_pack_MALLOC_FREE_STRUCT();
1792     test_pack_MIDL_FORMAT_STRING();
1793     test_pack_MIDL_SERVER_INFO();
1794     test_pack_MIDL_STUBLESS_PROXY_INFO();
1795     test_pack_MIDL_STUB_DESC();
1796     test_pack_MIDL_STUB_MESSAGE();
1797     test_pack_MIDL_SYNTAX_INFO();
1798     test_pack_NDR_CCONTEXT();
1799     test_pack_NDR_NOTIFY2_ROUTINE();
1800     test_pack_NDR_NOTIFY_ROUTINE();
1801     test_pack_NDR_RUNDOWN();
1802     test_pack_NDR_SCONTEXT();
1803     test_pack_NDR_USER_MARSHAL_INFO();
1804     test_pack_NDR_USER_MARSHAL_INFO_LEVEL1();
1805     test_pack_PARRAY_INFO();
1806     test_pack_PFORMAT_STRING();
1807     test_pack_PFULL_PTR_TO_REFID_ELEMENT();
1808     test_pack_PFULL_PTR_XLAT_TABLES();
1809     test_pack_PGENERIC_BINDING_INFO();
1810     test_pack_PGENERIC_BINDING_ROUTINE_PAIR();
1811     test_pack_PMIDL_SERVER_INFO();
1812     test_pack_PMIDL_STUBLESS_PROXY_INFO();
1813     test_pack_PMIDL_STUB_DESC();
1814     test_pack_PMIDL_STUB_MESSAGE();
1815     test_pack_PMIDL_SYNTAX_INFO();
1816     test_pack_PNDR_ASYNC_MESSAGE();
1817     test_pack_PNDR_CORRELATION_INFO();
1818     test_pack_PRPC_CLIENT_INTERFACE();
1819     test_pack_PRPC_DISPATCH_TABLE();
1820     test_pack_PRPC_MESSAGE();
1821     test_pack_PRPC_POLICY();
1822     test_pack_PRPC_PROTSEQ_ENDPOINT();
1823     test_pack_PRPC_SERVER_INTERFACE();
1824     test_pack_PRPC_STUB_FUNCTION();
1825     test_pack_PRPC_SYNTAX_IDENTIFIER();
1826     test_pack_PSCONTEXT_QUEUE();
1827     test_pack_PXMIT_ROUTINE_QUINTUPLE();
1828     test_pack_RPC_AUTHZ_HANDLE();
1829     test_pack_RPC_AUTH_IDENTITY_HANDLE();
1830     test_pack_RPC_AUTH_KEY_RETRIEVAL_FN();
1831     test_pack_RPC_BINDING_HANDLE();
1832     test_pack_RPC_BINDING_VECTOR();
1833     test_pack_RPC_CLIENT_INTERFACE();
1834     test_pack_RPC_DISPATCH_FUNCTION();
1835     test_pack_RPC_DISPATCH_TABLE();
1836     test_pack_RPC_IF_HANDLE();
1837     test_pack_RPC_IF_ID();
1838     test_pack_RPC_MESSAGE();
1839     test_pack_RPC_POLICY();
1840     test_pack_RPC_PROTSEQ_ENDPOINT();
1841     test_pack_RPC_SERVER_INTERFACE();
1842     test_pack_RPC_STATUS();
1843     test_pack_RPC_SYNTAX_IDENTIFIER();
1844     test_pack_RPC_VERSION();
1845     test_pack_SCONTEXT_QUEUE();
1846     test_pack_SERVER_ROUTINE();
1847     test_pack_STUB_THUNK();
1848     test_pack_USER_MARSHAL_CB();
1849     test_pack_USER_MARSHAL_FREEING_ROUTINE();
1850     test_pack_USER_MARSHAL_MARSHALLING_ROUTINE();
1851     test_pack_USER_MARSHAL_ROUTINE_QUADRUPLE();
1852     test_pack_USER_MARSHAL_SIZING_ROUTINE();
1853     test_pack_USER_MARSHAL_UNMARSHALLING_ROUTINE();
1854     test_pack_UUID_VECTOR();
1855     test_pack_XMIT_HELPER_ROUTINE();
1856     test_pack_XMIT_ROUTINE_QUINTUPLE();
1857 }
1858 
1859 START_TEST(generated)
1860 {
1861     test_pack();
1862 }
1863