/* { dg-do compile } */ /* { dg-options "-O2 -Warray-bounds" } */ int a[10]; int *foo1 (int i) { return &a[10]; /* { dg-bogus "above array bounds" } */ } int *foo2 (int i) { return &a[11]; /* { dg-warning "above array bounds" } */ } int foo3 (int i) { return a[9]; /* { dg-bogus "above array bounds" } */ } int foo4 (int i) { return a[10]; /* { dg-warning "above array bounds" } */ }