modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/execute/pr42006.c (about)

     1  extern void abort (void);
     2  
     3  static unsigned int
     4  my_add(unsigned int si1, unsigned int si2)
     5  {
     6    return (si1 > (50-si2)) ? si1 : (si1 + si2);
     7  }
     8  
     9  static unsigned int
    10  my_shift(unsigned int left, unsigned int right)
    11  {
    12    return  (right > 100) ? left : (left >> right);
    13  }
    14  
    15  static int func_4(unsigned int p_6)
    16  {
    17    int count = 0;
    18    for (p_6 = 1; p_6 < 3; p_6 = my_add(p_6, 1))
    19      {
    20        if (count++ > 1)
    21  	abort ();
    22  
    23        if (my_shift(p_6, p_6))
    24  	return 0;
    25      }
    26    return 0;
    27  }
    28  
    29  int main(void)
    30  {
    31    func_4(0);
    32    return 0;
    33  }