1 /* { dg-do compile } */
2 /* { dg-options "-O1 -fdump-tree-forwprop1 -W -Wall" } */
3 
4 
5 struct X { int a[5]; };
foo(struct X * q)6 int foo(struct X *q)
7 {
8   int (*pointer)[5] = &q->a;
9   return (*pointer)[0];
10 }
11 
12 
13 /* We should have propragated &q->a into (*pointer).  */
14 /* { dg-final { scan-tree-dump "q_.\\\(D\\\)\\\]\\\[0\\\];" "forwprop1" } } */
15