1 /* PR debug/43670 */
2 /* { dg-do compile } */
3 /* { dg-options "-O -ftree-vrp -fcompare-debug" } */
4 /* { dg-xfail-if "" { powerpc-ibm-aix* } { "*" } { "" } } */
5 
6 extern void abort (void);
7 
8 typedef struct { double T1; } S;
9 
10 void
foo(void)11 foo (void)
12 {
13   int i, j;
14   double s;
15 
16   S y[2][2];
17   S *x[2] = { y[0], y[1] };
18   S **p = x;
19 
20   for (i = 0; i < 2; i++)
21     for (j = 0; j < 2; j++)
22       p[j][i].T1 = 1;
23 
24   for (i = 0; i < 2; i++)
25     for (j = 0; j < 2; j++)
26       s = p[j][i].T1;
27 
28   if (s != 1)
29     abort ();
30 }
31