(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
pr27003.c
       1  /* { dg-do run } */
       2  /* { dg-options "-Os" } */
       3  
       4  unsigned int
       5  foo (unsigned int x)
       6  {
       7    unsigned int r = x;
       8    while (--x)
       9      r *= x;
      10    return r;
      11  }
      12  
      13  unsigned long long
      14  bar (unsigned long long x)
      15  {
      16    unsigned long long r = x;
      17    while (--x)
      18      r *= x;
      19    return r;
      20  }
      21  
      22  extern void abort (void);
      23  
      24  int
      25  main (void)
      26  {
      27    if (foo (5) != 120 || bar (5) != 120)
      28      abort ();
      29    return 0;
      30  }