| // { dg-do compile } | |
| // { dg-options "-O2 -Warray-bounds" } | |
| void f(); | |
| int c[3]; | |
| int result; | |
| struct Vector { | |
| static int get(int i) { | |
| if (i >= 3) | |
| f(); | |
| return c[i]; | |
| } | |
| }; | |
| void g() | |
| { | |
| for (int i = 0; i < 3; ++i) { | |
| const int index = i % 3; | |
| result = Vector::get(index) + Vector::get(index); | |
| } | |
| } | |