+(defun safe-ctype-for-single-coercion-p (x)
+ ;; See comment in SAFE-SINGLE-COERCION-P -- this deals with the same
+ ;; problem, but in the context of evaluated and compiled (+ <int> <single>)
+ ;; giving different result if we fail to check for this.
+ (or (not (csubtypep x (specifier-type 'integer)))
+ (csubtypep x (specifier-type `(integer ,most-negative-exactly-single-float-fixnum
+ ,most-positive-exactly-single-float-fixnum)))))
+