projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
1.0.16.35: improved TIME output
[sbcl.git]
/
src
/
compiler
/
float-tran.lisp
diff --git
a/src/compiler/float-tran.lisp
b/src/compiler/float-tran.lisp
index
a4672e5
..
b05138a
100644
(file)
--- a/
src/compiler/float-tran.lisp
+++ b/
src/compiler/float-tran.lisp
@@
-15,8
+15,8
@@
\f
;;;; coercions
\f
;;;; coercions
-(defknown %single-float (real) single-float (movable foldable flushable))
-(defknown %double-float (real) double-float (movable foldable flushable))
+(defknown %single-float (real) single-float (movable foldable))
+(defknown %double-float (real) double-float (movable foldable))
(deftransform float ((n f) (* single-float) *)
'(%single-float n))
(deftransform float ((n f) (* single-float) *)
'(%single-float n))
@@
-286,7
+286,10
@@
(specifier-type `(,',type ,(or lo '*) ,(or hi '*)))))
(defoptimizer (,fun derive-type) ((num))
(specifier-type `(,',type ,(or lo '*) ,(or hi '*)))))
(defoptimizer (,fun derive-type) ((num))
- (one-arg-derive-type num #',aux-name #',fun))))))
+ (handler-case
+ (one-arg-derive-type num #',aux-name #',fun)
+ (type-error ()
+ nil)))))))
(frob %single-float single-float
most-negative-single-float most-positive-single-float)
(frob %double-float double-float
(frob %single-float single-float
most-negative-single-float most-positive-single-float)
(frob %double-float double-float