1 /* { dg-do compile } */
2 /* { dg-options "-fno-strict-overflow -O2 -fdump-tree-optimized" } */
4 /* We cannot fold i > 0 because p->a - p->b can be larger than INT_MAX
5 and thus i can wrap. Dual of Wstrict-overflow-18.c */
7 struct c
{ unsigned int a
; unsigned int b
; };
8 extern void bar (struct c
*);
15 for (i
= 0; i
< p
->a
- p
->b
; ++i
)
24 /* { dg-final { scan-tree-dump "i_.* > 0" "optimized" } } */