Merge -r 127928:132243 from trunk
[official-gcc.git] / gcc / testsuite / gcc.dg / tree-ssa / pr33723.c
blob32a3aad9c1ca73d1a3caa1d4baf7cf8dd0a7904a
1 /* PR tree-optimization/33723 */
2 /* { dg-do compile } */
3 /* { dg-options "-O2 -fdump-tree-gimple" } */
5 typedef union
7 struct
9 int f1, f2, f3, f4, f5, f6, f7, f8;
10 long int f9, f10;
11 int f11;
12 } f;
13 char s[4];
14 long int a;
15 } T;
17 void
18 foo1 (void)
20 T t;
21 t = (T) { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } };
22 test (&t);
25 void
26 bar1 (void)
28 T t = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } };
29 test (&t);
32 void
33 baz1 (void)
35 T t;
36 t = (const T) { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 } };
37 test (&t);
40 void
41 foo2 (void)
43 T t;
44 t = (T) { { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } };
45 test (&t);
48 void
49 bar2 (void)
51 T t = { { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } };
52 test (&t);
55 void
56 baz2 (void)
58 T t;
59 t = (const T) { { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } };
60 test (&t);
63 void
64 baz3 (void)
66 T t;
67 t = (const T) (T) { { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 } };
68 test (&t);
71 /* { dg-final { scan-tree-dump-not "t = D" "gimple"} } */
72 /* { dg-final { cleanup-tree-dump "gimple" } } */