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)6int 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