X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Ftypep.lisp;h=121e2054de636c98e91c2b476522ddc5eadd51ae;hb=c7de1989d006e0b3a4f26143b7a81c9bdb754101;hp=2c200f3899a954c506147d1f3df7860f4c533bb7;hpb=2d3cb6dba6461e98744eca2a1df4f770cea468ca;p=sbcl.git diff --git a/src/code/typep.lisp b/src/code/typep.lisp index 2c200f3..121e205 100644 --- a/src/code/typep.lisp +++ b/src/code/typep.lisp @@ -59,7 +59,6 @@ (long-float (typep num 'long-float)) ((nil) (floatp num)))) ((nil) t))) - #!-negative-zero-is-not-zero (flet ((bound-test (val) (let ((low (numeric-type-low type)) (high (numeric-type-high type))) @@ -77,37 +76,6 @@ (bound-test (imagpart object)))) (:real (and (not (complexp object)) - (bound-test object))))) - #!+negative-zero-is-not-zero - (labels ((signed-> (x y) - (if (and (zerop x) (zerop y) (floatp x) (floatp y)) - (> (float-sign x) (float-sign y)) - (> x y))) - (signed->= (x y) - (if (and (zerop x) (zerop y) (floatp x) (floatp y)) - (>= (float-sign x) (float-sign y)) - (>= x y))) - (bound-test (val) - (let ((low (numeric-type-low type)) - (high (numeric-type-high type))) - (and (cond ((null low) t) - ((listp low) - (signed-> val (car low))) - (t - (signed->= val low))) - (cond ((null high) t) - ((listp high) - (signed-> (car high) val)) - (t - (signed->= high val))))))) - (ecase (numeric-type-complexp type) - ((nil) t) - (:complex - (and (complexp object) - (bound-test (realpart object)) - (bound-test (imagpart object)))) - (:real - (and (not (complexp object)) (bound-test object))))))) (array-type (and (arrayp object)