Merge from mainline
[official-gcc.git] / gcc / testsuite / consistency.vlad / layout / f-14-29-30.c
blob3d95e82234c039aef5c2a285c15331ee41edc76f
1 #include <stdio.h>
3 struct sss{
4 int i1:14;
5 int i2:29;
6 int i3:30;
7 };
9 static union u{
10 struct sss sss;
11 unsigned char a[sizeof (struct sss)];
12 } u;
14 int main (void) {
15 int i;
16 for (i = 0; i < sizeof (struct sss); i++)
17 u.a[i] = 0;
18 u.sss.i1 = 16383.0;
19 for (i = 0; i < sizeof (struct sss); i++)
20 printf ("%x ", u.a[i]);
21 printf ("\n");
22 u.sss.i2 = 536870911.0;
23 for (i = 0; i < sizeof (struct sss); i++)
24 printf ("%x ", u.a[i]);
25 printf ("\n");
26 u.sss.i3 = 1073741823.0;
27 for (i = 0; i < sizeof (struct sss); i++)
28 printf ("%x ", u.a[i]);
29 printf ("\n");
30 return 0;