1 /* PR tree-optimization/55236 */ 2 /* { dg-do run } */ 3 /* { dg-options "-O2 -fwrapv" } */ 4 5 extern void abort (); 6 7 __attribute__((noinline, noclone)) void foo(int i)8foo (int i) 9 { 10 if (i > 0) 11 abort (); 12 i = -i; 13 if (i < 0) 14 return; 15 abort (); 16 } 17 18 __attribute__((noinline, noclone)) void bar(int i)19bar (int i) 20 { 21 if (i > 0 || (-i) >= 0) 22 abort (); 23 } 24 25 int main()26main () 27 { 28 foo (-__INT_MAX__ - 1); 29 bar (-__INT_MAX__ - 1); 30 return 0; 31 } 32