0.9.1.63:
[sbcl.git] / tests / type.before-xc.lisp
index 59d1d82..90d8f1d 100644 (file)
   (assert-secondnil (sb-xc:subtypep t '(satisfies foo)))
   (assert-secondnil (sb-xc:subtypep t '(and (satisfies foo) (satisfies bar))))
   (assert-secondnil (sb-xc:subtypep t '(or (satisfies foo) (satisfies bar))))
-  ;; FIXME: Enable these tests when bug 84 is fixed.
-  #|
   (assert-secondnil (sb-xc:subtypep '(satisfies foo) nil))
   (assert-secondnil (sb-xc:subtypep '(and (satisfies foo) (satisfies bar))
                                    nil))
   (assert-secondnil (sb-xc:subtypep '(or (satisfies foo) (satisfies bar))
-                                   nil))
-  |#)
+                                   nil)))
 
 ;;; tests of 2-value quantifieroids FOO/TYPE
 (macrolet ((2= (v1 v2 expr2)
   (assert (type= isect (type-intersection type2 type1 type2)))
   (assert (type= isect (type-intersection type1 type1 type2 type1)))
   (assert (type= isect (type-intersection type1 type2 type1 type2))))
+(assert (csubtypep (specifier-type '(or (single-float -1.0 1.0)
+                                       (single-float 0.1)))
+                  (specifier-type '(or (real -1 7)
+                                       (single-float 0.1)
+                                       (single-float -1.0 1.0)))))
+(assert (not (csubtypep (specifier-type '(or (real -1 7)
+                                            (single-float 0.1)
+                                            (single-float -1.0 1.0)))
+                       (specifier-type '(or (single-float -1.0 1.0)
+                                            (single-float 0.1))))))
+
+(assert (sb-xc:typep #\, 'character))
+(assert (sb-xc:typep #\@ 'character))
+
+(assert (type= (type-intersection (specifier-type '(member #\a #\c #\e))
+                                 (specifier-type '(member #\b #\c #\f)))
+              (specifier-type '(member #\c))))
 
 (/show "done with tests/type.before-xc.lisp")