1 /* { dg-do compile } */
2 /* { dg-options "-fstrict-overflow -O2 -Wstrict-overflow=3" } */
3
4 /* Source: Ian Lance Taylor. Based on strict-overflow-6.c. */
5
6 /* We can only simplify the conditional when using strict overflow
7 semantics. */
8
9 int
10 foo (char* p)
11 {
12 return p + 1000 < p; /* { dg-warning "assuming pointer wraparound does not occur" "correct warning" } */
13 }