Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!me!ip From: ip@me.utoronto.ca (Bevis Ip) Newsgroups: comp.sys.mips Subject: broken ldexp() Message-ID: <1989Dec14.135452.16496@me.toronto.edu> Date: 14 Dec 89 18:54:53 GMT Lines: 28 I think this applies to MIPS in general as well. ----------------------- From: gwyn@BRL.MIL (Doug Gwyn, VLD/VMB) Newsgroups: comp.sys.sgi Subject: Irix 3.2 (4D) ldexp() function broken Message-ID: <8912140834.aa03045@VGR.BRL.MIL> Date: 14 Dec 89 13:34:13 GMT Sender: daemon@ucbvax.BERKELEY.EDU Organization: The Internet Lines: 16 $ cat > foo.c #include #include main() { printf( "%g\n", ldexp( 0.0, 0 ) ); return 0; } ^D $ cc -o foo foo.c ./foo $ ./foo 1.11254e-308 $ # answer should be "0"; works properly on all other BRL UNIX systems $ # I think the problem is that they're treating true-0 as a denormalized $ # number and "rounding" it. This is RONG.