• Tim Peters's avatar
    Rework the way we try to check for libm overflow, given that C99 no longer · a40c793d
    Tim Peters yazdı
    requires that errno ever get set, and it looks like glibc is already
    playing that game.  New rules:
    
    + Never use HUGE_VAL.  Use the new Py_HUGE_VAL instead.
    
    + Never believe errno.  If overflow is the only thing you're interested in,
      use the new Py_OVERFLOWED(x) macro.  If you're interested in any libm
      errors, use the new Py_SET_ERANGE_IF_OVERFLOW(x) macro, which attempts
      to set errno the way C89 said it worked.
    
    Unfortunately, none of these are reliable, but they work on Windows and I
    *expect* under glibc too.
    a40c793d
test_math.py 5.88 KB