Merged revisions 143552,143554,143557,143560,143562,143564-143567,143570-143573,14357...
[official-gcc.git] / gcc / testsuite / g++.dg / torture / predcom-1.C
blobc668cac606dbfc9041288a39faf4db1f2bcdaa1e
1 /* Test for ICE in predictive commoning with empty loop header block
2    on arm-none-linux-gnueabi.  */
4 struct Foo
6   double *ptr;
7   
8   Foo (double *ptr_)
9     : ptr (ptr_)
10   {
11   }
12   
13   Foo PostInc ()
14   {
15     return Foo (ptr++);
16   }
19 bool Baz (Foo first, double *last)
21   Foo prev (first.ptr);
22   
23   first.ptr++;
25   while (first.ptr != last)
26     if (*first.PostInc ().ptr < *prev.PostInc ().ptr)
27       return false;