[Python-Dev] Picking on platform fmod
Tim Peters
tim.one@home.com
Mon, 30 Jul 2001 00:46:23 -0400
Thanks all for torturing your boxes with fmod()! Would still like to hear
about Platforms from Mars (Macs <wink>, Tru64, HP-UX), but it got a clean
bill of health on all these:
Win98SE + MSVC 6
SuSE 7.2 system
Linux mira 2.4.4-4GB #1 Wed May 16 00:37:55 GMT 2001 i686 unknown
glibc-2.2.2-38
gcc-2.95.3-52
Python 2.2a0 (#383, Jul 24 2001, 09:26:51)
Solaris 8
SunOS pandora 5.8 Generic_108528-06 sun4u sparc SUNW,Ultra-Enterprise
Python 2.1.1 (#1, Jul 21 2001, 20:59:12)
[GCC 2.95.2 19991024 (release)] on sunos5
Reliant
ReliantUNIX-Y deukalion 5.45 B0032 RM600 4/512 R4000
Python 2.0 (#6, Apr 10 2001, 13:20:15) [C] on reliantunix-y5
Linux
% uname -a
Linux anthem 2.2.18 #21 SMP Mon Jan 8 00:33:29 EST 2001 i686 unknown
% rpm -q libc
libc-5.3.12-31
% gcc --version
egcs-2.91.66
Linux-Mandrake 7.2
Linux kernel 2.2.17
GNU libc 2.1.3 (includes libm), and GCC 2.95.3.
SunOS 5.8 Generic_108529-08
Linux 2.2.18 / glibc 2.1.3
OSF1 cfata6.harvard.edu V4.0 878 alpha
SunOS cfa0 5.8 Generic_108528-06 sun4u sparc SUNW,Ultra-Enterprise
building with or without gcc
SunOS s454 5.7 Generic_106541-10 sun4m sparc SUNW,SPARCstation-4
SunOS pc200 5.8 Generic_108529-03 i86pc i386 i86pc
BSDI, FreeBSD and Linux on Intel hardware
Solaris on SPARC hardware
Linux on (IBM) PPC (SourceForge?)
Linxux on (Compaq) Alpha (SourceForge)
Only one failure report, from Thomas Wouters on:
Linux usf-cf-sparc-linux-1 2.2.18pre21 #1 SMP Wed Nov 22 17:27:17 EST 2000
sparc64 unknown (SourceForge)
dying with OverflowError in math.fmod(). Looks like a *badly* buggy fmod()
to me!
If we had tried this a decade ago, *most* platforms would have gotten a
wrong answer on almost every try. Assuming we don't get a failure report on
Mac, the major platforms do this correctly now, so we can save Python from
growing another few hundred lines of excruciating workaround code:
http://www.netlib.org/fdlibm/e_fmod.c
when-even-windows-gets-it-right-there's-no-excuse-ly y'rs - tim