Fixed a bug where predicates would sometimes fail to match 0.0

This commit is contained in:
lvilnis 2011-09-08 20:24:04 -04:00 committed by Vincent St-Amour
parent 29d4bba008
commit 80ece9023a

View File

@ -128,12 +128,12 @@
;; Floating-point numbers ;; Floating-point numbers
(define -FlonumPosZero (make-Base 'Float-Positive-Zero (define -FlonumPosZero (make-Base 'Float-Positive-Zero
#'(lambda (x) (eq? x 0.0)) #'(lambda (x) (eqv? x 0.0))
(lambda (x) (eq? x 0.0)) (lambda (x) (eqv? x 0.0))
#'-FlonumPosZero)) #'-FlonumPosZero))
(define -FlonumNegZero (make-Base 'Float-Negative-Zero (define -FlonumNegZero (make-Base 'Float-Negative-Zero
#'(lambda (x) (eq? x -0.0)) #'(lambda (x) (eqv? x -0.0))
(lambda (x) (eq? x -0.0)) (lambda (x) (eqv? x -0.0))
#'-FlonumNegZero)) #'-FlonumNegZero))
(define -FlonumZero (*Un -FlonumPosZero -FlonumNegZero)) (define -FlonumZero (*Un -FlonumPosZero -FlonumNegZero))
(define -FlonumNan (make-Base 'Float-Nan (define -FlonumNan (make-Base 'Float-Nan