1 /* PR target/71554 */ 2 3 int v; 4 5 __attribute__ ((noinline, noclone)) void bar(void)6bar (void) 7 { 8 v++; 9 } 10 11 __attribute__ ((noinline, noclone)) 12 void foo(unsigned int x)13foo (unsigned int x) 14 { 15 signed int y = ((-__INT_MAX__ - 1) / 2); 16 signed int r; 17 if (__builtin_mul_overflow (x, y, &r)) 18 bar (); 19 } 20 21 int main()22main () 23 { 24 foo (2); 25 if (v) 26 __builtin_abort (); 27 return 0; 28 } 29