OSDN Git Service

4bc04bc4da462baa6229a5231bef97dcaf06bd4a
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gcc.dg / tree-ssa / 20030728-1.c
1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-optimized" } */
3     
4
5 union tree_node;
6 typedef union tree_node *tree;
7
8 enum tree_code
9 {
10   ARRAY_TYPE,
11   LAST_AND_UNUSED_TREE_CODE
12 };
13
14 struct tree_common
15 {
16   enum tree_code code:8;
17 };
18
19
20
21
22
23 union tree_node
24 {
25   struct tree_common common;
26 };
27
28
29
30
31 int
32 objects_must_conflict_p (t1, t2)
33      tree t1, t2;
34 {
35
36   if ((t1->common.code == ARRAY_TYPE) != (t2
37                                           && t2->common.code == ARRAY_TYPE))
38     return 0;
39
40
41   return foo (t2 ? get_alias_set (t2) : 0);
42 }
43
44 /* There should be three assignments of variables to the value zero.  */
45 /* { dg-final { scan-tree-dump-times " = 0" 3 "optimized"} } */
46  
47