(cl:in-package :cl-user)
-(let ((+ifni single-float-positive-infinity)
- (-ifni single-float-negative-infinity))
- (assert (= (* +ifni 1) +ifni))
- (assert (= (* +ifni -0.1) -ifni))
- (assert (= (+ +ifni -0.1) +ifni))
- (assert (= (- +ifni -0.1) +ifni))
- (assert (= (sqrt +ifni) +ifni))
- (assert (= (* -ifni -14) +ifni))
- (assert (= (/ -ifni 0.1) -ifni))
- (assert (= (/ -ifni 100/3) -ifni))
- (assert (< -ifni +ifni))
- ;; FIXME: Reenable this when bug 92 is fixed.
- ;; (assert (not (< +ifni 100)))
- (assert (not (< +ifni 100.0)))
- (assert (not (< +ifni -ifni))))
+(dolist (ifnis (list (cons single-float-positive-infinity
+ single-float-negative-infinity)
+ (cons double-float-positive-infinity
+ double-float-negative-infinity)))
+ (destructuring-bind (+ifni . -ifni) ifnis
+ (assert (= (* +ifni 1) +ifni))
+ (assert (= (* +ifni -0.1) -ifni))
+ (assert (= (+ +ifni -0.1) +ifni))
+ (assert (= (- +ifni -0.1) +ifni))
+ (assert (= (sqrt +ifni) +ifni))
+ (assert (= (* -ifni -14) +ifni))
+ (assert (= (/ -ifni 0.1) -ifni))
+ (assert (= (/ -ifni 100/3) -ifni))
+ (assert (not (= +ifni -ifni)))
+ (assert (= -ifni -ifni))
+ (assert (not (= +ifni 100/3)))
+ (assert (not (= -ifni -1.0 -ifni)))
+ (assert (not (= -ifni -17/02 -ifni)))
+ (assert (< -ifni +ifni))
+ (assert (not (< +ifni 100)))
+ (assert (not (< +ifni 100.0)))
+ (assert (not (< +ifni -ifni)))
+ (assert (< 100 +ifni))
+ (assert (< 100.0 +ifni))
+ (assert (>= 100 -ifni))
+ (assert (not (<= 6/7 (* 3 -ifni))))
+ (assert (not (> +ifni +ifni)))))
+
+;;; ANSI: FILE-LENGTH should signal an error of type TYPE-ERROR if
+;;; stream is not a stream associated with a file.
+;;;
+;;; (Peter Van Eynde's ansi-test suite caught this, and Eric Marsden
+;;; reported a fix for CMU CL, which was ported to sbcl-0.6.12.35.)
+(assert (typep (nth-value 1 (ignore-errors (float-radix "notfloat")))
+ 'type-error))