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

     1  /* Copyright (C) 2002 Free Software Foundation.
     2  
     3     Ensure that the composite comparison optimization doesn't misfire
     4     and attempt to combine a signed comparison with an unsigned one.
     5  
     6     Written by Roger Sayle, 3rd June 2002.  */
     7  
     8  extern void abort (void);
     9  
    10  int
    11  foo (int x, int y)
    12  {
    13    /* If miscompiled the following may become "x == y".  */
    14    return (x<=y) && ((unsigned int)x >= (unsigned int)y);
    15  }
    16  
    17  int
    18  main ()
    19  {
    20    if (! foo (-1,0))
    21      abort ();
    22    return 0;
    23  }
    24