Eric Blake <[EMAIL PROTECTED]> writes:

> According to Paul Eggert on 4/5/2007 10:07 AM:
>>> -  int check_WINT: WINT_MIN <= 0 && 0 < WINT_MAX ? 1 : -1;
>>> +  int check_WINT: WINT_MIN <= (wint_t) 0 && (wint_t) 0 < WINT_MAX ? 1 : -1;

> It shows two bugs - first, that WINT_MIN was not 0; and second, that
> WINT_MIN was a signed value even though wint_t is not.

How about this instead?  It seems like a more-complete check.

   int check_WINT: (((wint_t) -1 < 0
                     ? WINT_MIN + WINT_MAX - 1 < 0
                     : WINT_MIN == 0 && WINT_MAX == (wint_t) -1)
                    ? 1 : -1);


Reply via email to