fix treatment of signed zeroes in INTERVAL-DIV
authorNikodemus Siivola <nikodemus@random-state.net>
Wed, 30 Nov 2011 13:34:30 +0000 (15:34 +0200)
committerNikodemus Siivola <nikodemus@random-state.net>
Mon, 5 Dec 2011 09:28:01 +0000 (11:28 +0200)
commit57e571d82eb271e41f3e8e9de69ad9501888d142
tree387cb59a65de38bfca8d7d3f3630e27efefa2980
parent250bcb73b90571b79a21afb4bdf958800598ab49
fix treatment of signed zeroes in INTERVAL-DIV

 Fixes bug reported by Eric Marsden on sbcl-devel: type derivation going wrong
 due to one signed zeroes: (/ 0.0 -neg) derives correctly as -0.0, but (/ 0
 -neg) derives as 0.0, causing the intersection to be empty causing badness.

 Simply remove special casing of division of zero from INTERVAL-DIV:
 BOUND-BINOP handles signed zeroes correctly, so no sense complicating the
 code by adding handling for them in I-D.
NEWS
src/compiler/srctran.lisp
tests/compiler.pure.lisp