// Build don't link: // Special g++ Options: -ansi -pedantic-errors -Wsign-compare // Copyright (C) 2001 Free Software Foundation, Inc. // Contributed by Kaveh R. Ghazi 5/13/2001 int foo(int x, int y, unsigned u) { /* A MAX_EXPR is non-negative if EITHER argument to the MAX_EXPR is determined to be non-negative. */ if (u < (x >? -1)) // WARNING - signed and unsigned return x; if (u < (x >? 10)) return x; if ((10 >? x) < u) return x; if (u < (x >? (y ? (x==y) : 10))) return x; if (((y ? 10 : (x==y)) >? x) < u) return x; /* A MIN_EXPR is non-negative if BOTH arguments to the MIN_EXPR are determined to be non-negative. */ if (u < ((x?11:8)