1 #include "defines.h"
2 #include "macros.h"
3 
4 /* Check structs and unions of all permutations of 3 basic types.  */
5 int
main(void)6 main (void)
7 {
8   check_struct_and_union3(char, char, char, 3, 1);
9   check_struct_and_union3(char, char, short, 4, 2);
10   check_struct_and_union3(char, char, int, 8, 4);
11   check_struct_and_union3(char, char, long, 8, 4);
12   check_struct_and_union3(char, char, long long, 12, 8);
13   check_struct_and_union3(char, char, float, 8, 4);
14   check_struct_and_union3(char, char, double, 12, 8);
15   check_struct_and_union3(char, char, long double, 12, 8);
16   check_struct_and_union3(char, short, char, 6, 2);
17   check_struct_and_union3(char, short, short, 6, 2);
18   check_struct_and_union3(char, short, int, 8, 4);
19   check_struct_and_union3(char, short, long, 8, 4);
20   check_struct_and_union3(char, short, long long, 12, 8);
21   check_struct_and_union3(char, short, float, 8, 4);
22   check_struct_and_union3(char, short, double, 12, 8);
23   check_struct_and_union3(char, short, long double, 12, 8);
24   check_struct_and_union3(char, int, char, 12, 4);
25   check_struct_and_union3(char, int, short, 12, 4);
26   check_struct_and_union3(char, int, int, 12, 4);
27   check_struct_and_union3(char, int, long, 12, 4);
28   check_struct_and_union3(char, int, long long, 16, 8);
29   check_struct_and_union3(char, int, float, 12, 4);
30   check_struct_and_union3(char, int, double, 16, 8);
31   check_struct_and_union3(char, int, long double, 16, 8);
32   check_struct_and_union3(char, long, char, 12, 4);
33   check_struct_and_union3(char, long, short, 12, 4);
34   check_struct_and_union3(char, long, int, 12, 4);
35   check_struct_and_union3(char, long, long, 12, 4);
36   check_struct_and_union3(char, long, long long, 16, 8);
37   check_struct_and_union3(char, long, float, 12, 4);
38   check_struct_and_union3(char, long, double, 16, 8);
39   check_struct_and_union3(char, long, long double, 16, 8);
40   check_struct_and_union3(char, long long, char, 16, 8);
41   check_struct_and_union3(char, long long, short, 16, 8);
42   check_struct_and_union3(char, long long, int, 16, 8);
43   check_struct_and_union3(char, long long, long, 16, 8);
44   check_struct_and_union3(char, long long, long long, 20, 8);
45   check_struct_and_union3(char, long long, float, 16, 8);
46   check_struct_and_union3(char, long long, double, 20, 8);
47   check_struct_and_union3(char, long long, long double, 20, 8);
48   check_struct_and_union3(char, float, char, 12, 4);
49   check_struct_and_union3(char, float, short, 12, 4);
50   check_struct_and_union3(char, float, int, 12, 4);
51   check_struct_and_union3(char, float, long, 12, 4);
52   check_struct_and_union3(char, float, long long, 16, 8);
53   check_struct_and_union3(char, float, float, 12, 4);
54   check_struct_and_union3(char, float, double, 16, 8);
55   check_struct_and_union3(char, float, long double, 16, 8);
56   check_struct_and_union3(char, double, char, 16, 8);
57   check_struct_and_union3(char, double, short, 16, 8);
58   check_struct_and_union3(char, double, int, 16, 8);
59   check_struct_and_union3(char, double, long, 16, 8);
60   check_struct_and_union3(char, double, long long, 20, 8);
61   check_struct_and_union3(char, double, float, 16, 8);
62   check_struct_and_union3(char, double, double, 20, 8);
63   check_struct_and_union3(char, double, long double, 20, 8);
64   check_struct_and_union3(char, long double, char, 16, 8);
65   check_struct_and_union3(char, long double, short, 16, 8);
66   check_struct_and_union3(char, long double, int, 16, 8);
67   check_struct_and_union3(char, long double, long, 16, 8);
68   check_struct_and_union3(char, long double, long long, 20, 8);
69   check_struct_and_union3(char, long double, float, 16, 8);
70   check_struct_and_union3(char, long double, double, 20, 8);
71   check_struct_and_union3(char, long double, long double, 20, 8);
72   check_struct_and_union3(short, char, char, 4, 2);
73   check_struct_and_union3(short, char, short, 6, 2);
74   check_struct_and_union3(short, char, int, 8, 4);
75   check_struct_and_union3(short, char, long, 8, 4);
76   check_struct_and_union3(short, char, long long, 12, 8);
77   check_struct_and_union3(short, char, float, 8, 4);
78   check_struct_and_union3(short, char, double, 12, 8);
79   check_struct_and_union3(short, char, long double, 12, 8);
80   check_struct_and_union3(short, short, char, 6, 2);
81   check_struct_and_union3(short, short, short, 6, 2);
82   check_struct_and_union3(short, short, int, 8, 4);
83   check_struct_and_union3(short, short, long, 8, 4);
84   check_struct_and_union3(short, short, long long, 12, 8);
85   check_struct_and_union3(short, short, float, 8, 4);
86   check_struct_and_union3(short, short, double, 12, 8);
87   check_struct_and_union3(short, short, long double, 12, 8);
88   check_struct_and_union3(short, int, char, 12, 4);
89   check_struct_and_union3(short, int, short, 12, 4);
90   check_struct_and_union3(short, int, int, 12, 4);
91   check_struct_and_union3(short, int, long, 12, 4);
92   check_struct_and_union3(short, int, long long, 16, 8);
93   check_struct_and_union3(short, int, float, 12, 4);
94   check_struct_and_union3(short, int, double, 16, 8);
95   check_struct_and_union3(short, int, long double, 16, 8);
96   check_struct_and_union3(short, long, char, 12, 4);
97   check_struct_and_union3(short, long, short, 12, 4);
98   check_struct_and_union3(short, long, int, 12, 4);
99   check_struct_and_union3(short, long, long, 12, 4);
100   check_struct_and_union3(short, long, long long, 16, 8);
101   check_struct_and_union3(short, long, float, 12, 4);
102   check_struct_and_union3(short, long, double, 16, 8);
103   check_struct_and_union3(short, long, long double, 16, 8);
104   check_struct_and_union3(short, long long, char, 16, 8);
105   check_struct_and_union3(short, long long, short, 16, 8);
106   check_struct_and_union3(short, long long, int, 16, 8);
107   check_struct_and_union3(short, long long, long, 16, 8);
108   check_struct_and_union3(short, long long, long long, 20, 8);
109   check_struct_and_union3(short, long long, float, 16, 8);
110   check_struct_and_union3(short, long long, double, 20, 8);
111   check_struct_and_union3(short, long long, long double, 20, 8);
112   check_struct_and_union3(short, float, char, 12, 4);
113   check_struct_and_union3(short, float, short, 12, 4);
114   check_struct_and_union3(short, float, int, 12, 4);
115   check_struct_and_union3(short, float, long, 12, 4);
116   check_struct_and_union3(short, float, long long, 16, 8);
117   check_struct_and_union3(short, float, float, 12, 4);
118   check_struct_and_union3(short, float, double, 16, 8);
119   check_struct_and_union3(short, float, long double, 16, 8);
120   check_struct_and_union3(short, double, char, 16, 8);
121   check_struct_and_union3(short, double, short, 16, 8);
122   check_struct_and_union3(short, double, int, 16, 8);
123   check_struct_and_union3(short, double, long, 16, 8);
124   check_struct_and_union3(short, double, long long, 20, 8);
125   check_struct_and_union3(short, double, float, 16, 8);
126   check_struct_and_union3(short, double, double, 20, 8);
127   check_struct_and_union3(short, double, long double, 20, 8);
128   check_struct_and_union3(short, long double, char, 16, 8);
129   check_struct_and_union3(short, long double, short, 16, 8);
130   check_struct_and_union3(short, long double, int, 16, 8);
131   check_struct_and_union3(short, long double, long, 16, 8);
132   check_struct_and_union3(short, long double, long long, 20, 8);
133   check_struct_and_union3(short, long double, float, 16, 8);
134   check_struct_and_union3(short, long double, double, 20, 8);
135   check_struct_and_union3(short, long double, long double, 20, 8);
136   check_struct_and_union3(int, char, char, 8, 4);
137   check_struct_and_union3(int, char, short, 8, 4);
138   check_struct_and_union3(int, char, int, 12, 4);
139   check_struct_and_union3(int, char, long, 12, 4);
140   check_struct_and_union3(int, char, long long, 16, 8);
141   check_struct_and_union3(int, char, float, 12, 4);
142   check_struct_and_union3(int, char, double, 16, 8);
143   check_struct_and_union3(int, char, long double, 16, 8);
144   check_struct_and_union3(int, short, char, 8, 4);
145   check_struct_and_union3(int, short, short, 8, 4);
146   check_struct_and_union3(int, short, int, 12, 4);
147   check_struct_and_union3(int, short, long, 12, 4);
148   check_struct_and_union3(int, short, long long, 16, 8);
149   check_struct_and_union3(int, short, float, 12, 4);
150   check_struct_and_union3(int, short, double, 16, 8);
151   check_struct_and_union3(int, short, long double, 16, 8);
152   check_struct_and_union3(int, int, char, 12, 4);
153   check_struct_and_union3(int, int, short, 12, 4);
154   check_struct_and_union3(int, int, int, 12, 4);
155   check_struct_and_union3(int, int, long, 12, 4);
156   check_struct_and_union3(int, int, long long, 16, 8);
157   check_struct_and_union3(int, int, float, 12, 4);
158   check_struct_and_union3(int, int, double, 16, 8);
159   check_struct_and_union3(int, int, long double, 16, 8);
160   check_struct_and_union3(int, long, char, 12, 4);
161   check_struct_and_union3(int, long, short, 12, 4);
162   check_struct_and_union3(int, long, int, 12, 4);
163   check_struct_and_union3(int, long, long, 12, 4);
164   check_struct_and_union3(int, long, long long, 16, 8);
165   check_struct_and_union3(int, long, float, 12, 4);
166   check_struct_and_union3(int, long, double, 16, 8);
167   check_struct_and_union3(int, long, long double, 16, 8);
168   check_struct_and_union3(int, long long, char, 16, 8);
169   check_struct_and_union3(int, long long, short, 16, 8);
170   check_struct_and_union3(int, long long, int, 16, 8);
171   check_struct_and_union3(int, long long, long, 16, 8);
172   check_struct_and_union3(int, long long, long long, 20, 8);
173   check_struct_and_union3(int, long long, float, 16, 8);
174   check_struct_and_union3(int, long long, double, 20, 8);
175   check_struct_and_union3(int, long long, long double, 20, 8);
176   check_struct_and_union3(int, float, char, 12, 4);
177   check_struct_and_union3(int, float, short, 12, 4);
178   check_struct_and_union3(int, float, int, 12, 4);
179   check_struct_and_union3(int, float, long, 12, 4);
180   check_struct_and_union3(int, float, long long, 16, 8);
181   check_struct_and_union3(int, float, float, 12, 4);
182   check_struct_and_union3(int, float, double, 16, 8);
183   check_struct_and_union3(int, float, long double, 16, 8);
184   check_struct_and_union3(int, double, char, 16, 8);
185   check_struct_and_union3(int, double, short, 16, 8);
186   check_struct_and_union3(int, double, int, 16, 8);
187   check_struct_and_union3(int, double, long, 16, 8);
188   check_struct_and_union3(int, double, long long, 20, 8);
189   check_struct_and_union3(int, double, float, 16, 8);
190   check_struct_and_union3(int, double, double, 20, 8);
191   check_struct_and_union3(int, double, long double, 20, 8);
192   check_struct_and_union3(int, long double, char, 16, 8);
193   check_struct_and_union3(int, long double, short, 16, 8);
194   check_struct_and_union3(int, long double, int, 16, 8);
195   check_struct_and_union3(int, long double, long, 16, 8);
196   check_struct_and_union3(int, long double, long long, 20, 8);
197   check_struct_and_union3(int, long double, float, 16, 8);
198   check_struct_and_union3(int, long double, double, 20, 8);
199   check_struct_and_union3(int, long double, long double, 20, 8);
200   check_struct_and_union3(long, char, char, 8, 4);
201   check_struct_and_union3(long, char, short, 8, 4);
202   check_struct_and_union3(long, char, int, 12, 4);
203   check_struct_and_union3(long, char, long, 12, 4);
204   check_struct_and_union3(long, char, long long, 16, 8);
205   check_struct_and_union3(long, char, float, 12, 4);
206   check_struct_and_union3(long, char, double, 16, 8);
207   check_struct_and_union3(long, char, long double, 16, 8);
208   check_struct_and_union3(long, short, char, 8, 4);
209   check_struct_and_union3(long, short, short, 8, 4);
210   check_struct_and_union3(long, short, int, 12, 4);
211   check_struct_and_union3(long, short, long, 12, 4);
212   check_struct_and_union3(long, short, long long, 16, 8);
213   check_struct_and_union3(long, short, float, 12, 4);
214   check_struct_and_union3(long, short, double, 16, 8);
215   check_struct_and_union3(long, short, long double, 16, 8);
216   check_struct_and_union3(long, int, char, 12, 4);
217   check_struct_and_union3(long, int, short, 12, 4);
218   check_struct_and_union3(long, int, int, 12, 4);
219   check_struct_and_union3(long, int, long, 12, 4);
220   check_struct_and_union3(long, int, long long, 16, 8);
221   check_struct_and_union3(long, int, float, 12, 4);
222   check_struct_and_union3(long, int, double, 16, 8);
223   check_struct_and_union3(long, int, long double, 16, 8);
224   check_struct_and_union3(long, long, char, 12, 4);
225   check_struct_and_union3(long, long, short, 12, 4);
226   check_struct_and_union3(long, long, int, 12, 4);
227   check_struct_and_union3(long, long, long, 12, 4);
228   check_struct_and_union3(long, long, long long, 16, 8);
229   check_struct_and_union3(long, long, float, 12, 4);
230   check_struct_and_union3(long, long, double, 16, 8);
231   check_struct_and_union3(long, long, long double, 16, 8);
232   check_struct_and_union3(long, long long, char, 16, 8);
233   check_struct_and_union3(long, long long, short, 16, 8);
234   check_struct_and_union3(long, long long, int, 16, 8);
235   check_struct_and_union3(long, long long, long, 16, 8);
236   check_struct_and_union3(long, long long, long long, 20, 8);
237   check_struct_and_union3(long, long long, float, 16, 8);
238   check_struct_and_union3(long, long long, double, 20, 8);
239   check_struct_and_union3(long, long long, long double, 20, 8);
240   check_struct_and_union3(long, float, char, 12, 4);
241   check_struct_and_union3(long, float, short, 12, 4);
242   check_struct_and_union3(long, float, int, 12, 4);
243   check_struct_and_union3(long, float, long, 12, 4);
244   check_struct_and_union3(long, float, long long, 16, 8);
245   check_struct_and_union3(long, float, float, 12, 4);
246   check_struct_and_union3(long, float, double, 16, 8);
247   check_struct_and_union3(long, float, long double, 16, 8);
248   check_struct_and_union3(long, double, char, 16, 8);
249   check_struct_and_union3(long, double, short, 16, 8);
250   check_struct_and_union3(long, double, int, 16, 8);
251   check_struct_and_union3(long, double, long, 16, 8);
252   check_struct_and_union3(long, double, long long, 20, 8);
253   check_struct_and_union3(long, double, float, 16, 8);
254   check_struct_and_union3(long, double, double, 20, 8);
255   check_struct_and_union3(long, double, long double, 20, 8);
256   check_struct_and_union3(long, long double, char, 16, 8);
257   check_struct_and_union3(long, long double, short, 16, 8);
258   check_struct_and_union3(long, long double, int, 16, 8);
259   check_struct_and_union3(long, long double, long, 16, 8);
260   check_struct_and_union3(long, long double, long long, 20, 8);
261   check_struct_and_union3(long, long double, float, 16, 8);
262   check_struct_and_union3(long, long double, double, 20, 8);
263   check_struct_and_union3(long, long double, long double, 20, 8);
264   check_struct_and_union3(long long, char, char, 12, 8);
265   check_struct_and_union3(long long, char, short, 12, 8);
266   check_struct_and_union3(long long, char, int, 16, 8);
267   check_struct_and_union3(long long, char, long, 16, 8);
268   check_struct_and_union3(long long, char, long long, 20, 8);
269   check_struct_and_union3(long long, char, float, 16, 8);
270   check_struct_and_union3(long long, char, double, 20, 8);
271   check_struct_and_union3(long long, char, long double, 20, 8);
272   check_struct_and_union3(long long, short, char, 12, 8);
273   check_struct_and_union3(long long, short, short, 12, 8);
274   check_struct_and_union3(long long, short, int, 16, 8);
275   check_struct_and_union3(long long, short, long, 16, 8);
276   check_struct_and_union3(long long, short, long long, 20, 8);
277   check_struct_and_union3(long long, short, float, 16, 8);
278   check_struct_and_union3(long long, short, double, 20, 8);
279   check_struct_and_union3(long long, short, long double, 20, 8);
280   check_struct_and_union3(long long, int, char, 16, 8);
281   check_struct_and_union3(long long, int, short, 16, 8);
282   check_struct_and_union3(long long, int, int, 16, 8);
283   check_struct_and_union3(long long, int, long, 16, 8);
284   check_struct_and_union3(long long, int, long long, 20, 8);
285   check_struct_and_union3(long long, int, float, 16, 8);
286   check_struct_and_union3(long long, int, double, 20, 8);
287   check_struct_and_union3(long long, int, long double, 20, 8);
288   check_struct_and_union3(long long, long, char, 16, 8);
289   check_struct_and_union3(long long, long, short, 16, 8);
290   check_struct_and_union3(long long, long, int, 16, 8);
291   check_struct_and_union3(long long, long, long, 16, 8);
292   check_struct_and_union3(long long, long, long long, 20, 8);
293   check_struct_and_union3(long long, long, float, 16, 8);
294   check_struct_and_union3(long long, long, double, 20, 8);
295   check_struct_and_union3(long long, long, long double, 20, 8);
296   check_struct_and_union3(long long, long long, char, 20, 8);
297   check_struct_and_union3(long long, long long, short, 20, 8);
298   check_struct_and_union3(long long, long long, int, 20, 8);
299   check_struct_and_union3(long long, long long, long, 20, 8);
300   check_struct_and_union3(long long, long long, long long, 24, 8);
301   check_struct_and_union3(long long, long long, float, 20, 8);
302   check_struct_and_union3(long long, long long, double, 24, 8);
303   check_struct_and_union3(long long, long long, long double, 24, 8);
304   check_struct_and_union3(long long, float, char, 16, 8);
305   check_struct_and_union3(long long, float, short, 16, 8);
306   check_struct_and_union3(long long, float, int, 16, 8);
307   check_struct_and_union3(long long, float, long, 16, 8);
308   check_struct_and_union3(long long, float, long long, 20, 8);
309   check_struct_and_union3(long long, float, float, 16, 8);
310   check_struct_and_union3(long long, float, double, 20, 8);
311   check_struct_and_union3(long long, float, long double, 20, 8);
312   check_struct_and_union3(long long, double, char, 20, 8);
313   check_struct_and_union3(long long, double, short, 20, 8);
314   check_struct_and_union3(long long, double, int, 20, 8);
315   check_struct_and_union3(long long, double, long, 20, 8);
316   check_struct_and_union3(long long, double, long long, 24, 8);
317   check_struct_and_union3(long long, double, float, 20, 8);
318   check_struct_and_union3(long long, double, double, 24, 8);
319   check_struct_and_union3(long long, double, long double, 24, 8);
320   check_struct_and_union3(long long, long double, char, 20, 8);
321   check_struct_and_union3(long long, long double, short, 20, 8);
322   check_struct_and_union3(long long, long double, int, 20, 8);
323   check_struct_and_union3(long long, long double, long, 20, 8);
324   check_struct_and_union3(long long, long double, long long, 24, 8);
325   check_struct_and_union3(long long, long double, float, 20, 8);
326   check_struct_and_union3(long long, long double, double, 24, 8);
327   check_struct_and_union3(long long, long double, long double, 24, 8);
328   check_struct_and_union3(float, char, char, 8, 4);
329   check_struct_and_union3(float, char, short, 8, 4);
330   check_struct_and_union3(float, char, int, 12, 4);
331   check_struct_and_union3(float, char, long, 12, 4);
332   check_struct_and_union3(float, char, long long, 16, 8);
333   check_struct_and_union3(float, char, float, 12, 4);
334   check_struct_and_union3(float, char, double, 16, 8);
335   check_struct_and_union3(float, char, long double, 16, 8);
336   check_struct_and_union3(float, short, char, 8, 4);
337   check_struct_and_union3(float, short, short, 8, 4);
338   check_struct_and_union3(float, short, int, 12, 4);
339   check_struct_and_union3(float, short, long, 12, 4);
340   check_struct_and_union3(float, short, long long, 16, 8);
341   check_struct_and_union3(float, short, float, 12, 4);
342   check_struct_and_union3(float, short, double, 16, 8);
343   check_struct_and_union3(float, short, long double, 16, 8);
344   check_struct_and_union3(float, int, char, 12, 4);
345   check_struct_and_union3(float, int, short, 12, 4);
346   check_struct_and_union3(float, int, int, 12, 4);
347   check_struct_and_union3(float, int, long, 12, 4);
348   check_struct_and_union3(float, int, long long, 16, 8);
349   check_struct_and_union3(float, int, float, 12, 4);
350   check_struct_and_union3(float, int, double, 16, 8);
351   check_struct_and_union3(float, int, long double, 16, 8);
352   check_struct_and_union3(float, long, char, 12, 4);
353   check_struct_and_union3(float, long, short, 12, 4);
354   check_struct_and_union3(float, long, int, 12, 4);
355   check_struct_and_union3(float, long, long, 12, 4);
356   check_struct_and_union3(float, long, long long, 16, 8);
357   check_struct_and_union3(float, long, float, 12, 4);
358   check_struct_and_union3(float, long, double, 16, 8);
359   check_struct_and_union3(float, long, long double, 16, 8);
360   check_struct_and_union3(float, long long, char, 16, 8);
361   check_struct_and_union3(float, long long, short, 16, 8);
362   check_struct_and_union3(float, long long, int, 16, 8);
363   check_struct_and_union3(float, long long, long, 16, 8);
364   check_struct_and_union3(float, long long, long long, 20, 8);
365   check_struct_and_union3(float, long long, float, 16, 8);
366   check_struct_and_union3(float, long long, double, 20, 8);
367   check_struct_and_union3(float, long long, long double, 20, 8);
368   check_struct_and_union3(float, float, char, 12, 4);
369   check_struct_and_union3(float, float, short, 12, 4);
370   check_struct_and_union3(float, float, int, 12, 4);
371   check_struct_and_union3(float, float, long, 12, 4);
372   check_struct_and_union3(float, float, long long, 16, 8);
373   check_struct_and_union3(float, float, float, 12, 4);
374   check_struct_and_union3(float, float, double, 16, 8);
375   check_struct_and_union3(float, float, long double, 16, 8);
376   check_struct_and_union3(float, double, char, 16, 8);
377   check_struct_and_union3(float, double, short, 16, 8);
378   check_struct_and_union3(float, double, int, 16, 8);
379   check_struct_and_union3(float, double, long, 16, 8);
380   check_struct_and_union3(float, double, long long, 20, 8);
381   check_struct_and_union3(float, double, float, 16, 8);
382   check_struct_and_union3(float, double, double, 20, 8);
383   check_struct_and_union3(float, double, long double, 20, 8);
384   check_struct_and_union3(float, long double, char, 16, 8);
385   check_struct_and_union3(float, long double, short, 16, 8);
386   check_struct_and_union3(float, long double, int, 16, 8);
387   check_struct_and_union3(float, long double, long, 16, 8);
388   check_struct_and_union3(float, long double, long long, 20, 8);
389   check_struct_and_union3(float, long double, float, 16, 8);
390   check_struct_and_union3(float, long double, double, 20, 8);
391   check_struct_and_union3(float, long double, long double, 20, 8);
392   check_struct_and_union3(double, char, char, 12, 8);
393   check_struct_and_union3(double, char, short, 12, 8);
394   check_struct_and_union3(double, char, int, 16, 8);
395   check_struct_and_union3(double, char, long, 16, 8);
396   check_struct_and_union3(double, char, long long, 20, 8);
397   check_struct_and_union3(double, char, float, 16, 8);
398   check_struct_and_union3(double, char, double, 20, 8);
399   check_struct_and_union3(double, char, long double, 20, 8);
400   check_struct_and_union3(double, short, char, 12, 8);
401   check_struct_and_union3(double, short, short, 12, 8);
402   check_struct_and_union3(double, short, int, 16, 8);
403   check_struct_and_union3(double, short, long, 16, 8);
404   check_struct_and_union3(double, short, long long, 20, 8);
405   check_struct_and_union3(double, short, float, 16, 8);
406   check_struct_and_union3(double, short, double, 20, 8);
407   check_struct_and_union3(double, short, long double, 20, 8);
408   check_struct_and_union3(double, int, char, 16, 8);
409   check_struct_and_union3(double, int, short, 16, 8);
410   check_struct_and_union3(double, int, int, 16, 8);
411   check_struct_and_union3(double, int, long, 16, 8);
412   check_struct_and_union3(double, int, long long, 20, 8);
413   check_struct_and_union3(double, int, float, 16, 8);
414   check_struct_and_union3(double, int, double, 20, 8);
415   check_struct_and_union3(double, int, long double, 20, 8);
416   check_struct_and_union3(double, long, char, 16, 8);
417   check_struct_and_union3(double, long, short, 16, 8);
418   check_struct_and_union3(double, long, int, 16, 8);
419   check_struct_and_union3(double, long, long, 16, 8);
420   check_struct_and_union3(double, long, long long, 20, 8);
421   check_struct_and_union3(double, long, float, 16, 8);
422   check_struct_and_union3(double, long, double, 20, 8);
423   check_struct_and_union3(double, long, long double, 20, 8);
424   check_struct_and_union3(double, long long, char, 20, 8);
425   check_struct_and_union3(double, long long, short, 20, 8);
426   check_struct_and_union3(double, long long, int, 20, 8);
427   check_struct_and_union3(double, long long, long, 20, 8);
428   check_struct_and_union3(double, long long, long long, 24, 8);
429   check_struct_and_union3(double, long long, float, 20, 8);
430   check_struct_and_union3(double, long long, double, 24, 8);
431   check_struct_and_union3(double, long long, long double, 24, 8);
432   check_struct_and_union3(double, float, char, 16, 8);
433   check_struct_and_union3(double, float, short, 16, 8);
434   check_struct_and_union3(double, float, int, 16, 8);
435   check_struct_and_union3(double, float, long, 16, 8);
436   check_struct_and_union3(double, float, long long, 20, 8);
437   check_struct_and_union3(double, float, float, 16, 8);
438   check_struct_and_union3(double, float, double, 20, 8);
439   check_struct_and_union3(double, float, long double, 20, 8);
440   check_struct_and_union3(double, double, char, 20, 8);
441   check_struct_and_union3(double, double, short, 20, 8);
442   check_struct_and_union3(double, double, int, 20, 8);
443   check_struct_and_union3(double, double, long, 20, 8);
444   check_struct_and_union3(double, double, long long, 24, 8);
445   check_struct_and_union3(double, double, float, 20, 8);
446   check_struct_and_union3(double, double, double, 24, 8);
447   check_struct_and_union3(double, double, long double, 24, 8);
448   check_struct_and_union3(double, long double, char, 20, 8);
449   check_struct_and_union3(double, long double, short, 20, 8);
450   check_struct_and_union3(double, long double, int, 20, 8);
451   check_struct_and_union3(double, long double, long, 20, 8);
452   check_struct_and_union3(double, long double, long long, 24, 8);
453   check_struct_and_union3(double, long double, float, 20, 8);
454   check_struct_and_union3(double, long double, double, 24, 8);
455   check_struct_and_union3(double, long double, long double, 24, 8);
456   check_struct_and_union3(long double, char, char, 12, 8);
457   check_struct_and_union3(long double, char, short, 12, 8);
458   check_struct_and_union3(long double, char, int, 16, 8);
459   check_struct_and_union3(long double, char, long, 16, 8);
460   check_struct_and_union3(long double, char, long long, 20, 8);
461   check_struct_and_union3(long double, char, float, 16, 8);
462   check_struct_and_union3(long double, char, double, 20, 8);
463   check_struct_and_union3(long double, char, long double, 20, 8);
464   check_struct_and_union3(long double, short, char, 12, 8);
465   check_struct_and_union3(long double, short, short, 12, 8);
466   check_struct_and_union3(long double, short, int, 16, 8);
467   check_struct_and_union3(long double, short, long, 16, 8);
468   check_struct_and_union3(long double, short, long long, 20, 8);
469   check_struct_and_union3(long double, short, float, 16, 8);
470   check_struct_and_union3(long double, short, double, 20, 8);
471   check_struct_and_union3(long double, short, long double, 20, 8);
472   check_struct_and_union3(long double, int, char, 16, 8);
473   check_struct_and_union3(long double, int, short, 16, 8);
474   check_struct_and_union3(long double, int, int, 16, 8);
475   check_struct_and_union3(long double, int, long, 16, 8);
476   check_struct_and_union3(long double, int, long long, 20, 8);
477   check_struct_and_union3(long double, int, float, 16, 8);
478   check_struct_and_union3(long double, int, double, 20, 8);
479   check_struct_and_union3(long double, int, long double, 20, 8);
480   check_struct_and_union3(long double, long, char, 16, 8);
481   check_struct_and_union3(long double, long, short, 16, 8);
482   check_struct_and_union3(long double, long, int, 16, 8);
483   check_struct_and_union3(long double, long, long, 16, 8);
484   check_struct_and_union3(long double, long, long long, 20, 8);
485   check_struct_and_union3(long double, long, float, 16, 8);
486   check_struct_and_union3(long double, long, double, 20, 8);
487   check_struct_and_union3(long double, long, long double, 20, 8);
488   check_struct_and_union3(long double, long long, char, 20, 8);
489   check_struct_and_union3(long double, long long, short, 20, 8);
490   check_struct_and_union3(long double, long long, int, 20, 8);
491   check_struct_and_union3(long double, long long, long, 20, 8);
492   check_struct_and_union3(long double, long long, long long, 24, 8);
493   check_struct_and_union3(long double, long long, float, 20, 8);
494   check_struct_and_union3(long double, long long, double, 24, 8);
495   check_struct_and_union3(long double, long long, long double, 24, 8);
496   check_struct_and_union3(long double, float, char, 16, 8);
497   check_struct_and_union3(long double, float, short, 16, 8);
498   check_struct_and_union3(long double, float, int, 16, 8);
499   check_struct_and_union3(long double, float, long, 16, 8);
500   check_struct_and_union3(long double, float, long long, 20, 8);
501   check_struct_and_union3(long double, float, float, 16, 8);
502   check_struct_and_union3(long double, float, double, 20, 8);
503   check_struct_and_union3(long double, float, long double, 20, 8);
504   check_struct_and_union3(long double, double, char, 20, 8);
505   check_struct_and_union3(long double, double, short, 20, 8);
506   check_struct_and_union3(long double, double, int, 20, 8);
507   check_struct_and_union3(long double, double, long, 20, 8);
508   check_struct_and_union3(long double, double, long long, 24, 8);
509   check_struct_and_union3(long double, double, float, 20, 8);
510   check_struct_and_union3(long double, double, double, 24, 8);
511   check_struct_and_union3(long double, double, long double, 24, 8);
512   check_struct_and_union3(long double, long double, char, 20, 8);
513   check_struct_and_union3(long double, long double, short, 20, 8);
514   check_struct_and_union3(long double, long double, int, 20, 8);
515   check_struct_and_union3(long double, long double, long, 20, 8);
516   check_struct_and_union3(long double, long double, long long, 24, 8);
517   check_struct_and_union3(long double, long double, float, 20, 8);
518   check_struct_and_union3(long double, long double, double, 24, 8);
519   check_struct_and_union3(long double, long double, long double, 24, 8);
520   return 0;
521 }
522