1  /* { dg-do compile } */
       2  /* { dg-options "-O1 -fdump-tree-forwprop1 -W -Wall" } */
       3  
       4  
       5  struct X { int a[5]; };
       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" } } */