Paolo Bonzini wrote:
Jack Howarth wrote:+ if (y == -1 && x < 0 && ((unsigned)x) == -(unsigned)x) return DIVMOD_OVERFLOW;or just a much clearer if (y == -1 && x == INT_MIN) return DIVMOD_OVERFLOW; (possibly with a #include <limits.h> at the top).
Nit picking - "x" is of type long, so the fix should be either x==LONG_MIN or (unsigned long)x == -(unsigned long)x. This is completely off-topic on this list. I am sending this to the list only to avoid having buggy code on the gcc-ml archives. Michael
