diff --git a/ansi-tests/constantp.lsp b/ansi-tests/constantp.lsp
index 32cad912a2d68e7bc9ccc46f18b30fe0231f2d8a..39f650d2d7edff432d0ddcba5be2827a43c87d94 100644
--- a/ansi-tests/constantp.lsp
+++ b/ansi-tests/constantp.lsp
@@ -65,4 +65,13 @@
   (notnot-mv (constantp 'pi))
   t)
 
+(deftest constantp.order.1
+  (let ((i 0) x y)
+    (values
+     (notnot (constantp (progn (setf x (incf i)) 1)
+			(progn (setf y (incf i)) nil)))
+     i x y))
+  t 2 1 2)
+
+  
 
diff --git a/ansi-tests/subtypep.lsp b/ansi-tests/subtypep.lsp
index 035e4e7ff972bc55aeb8586e9ac106efc0299289..e38c145554e08bbb5650009dbbd01f6a04d01770 100644
--- a/ansi-tests/subtypep.lsp
+++ b/ansi-tests/subtypep.lsp
@@ -247,6 +247,42 @@
    '(integer 0 15))
   nil)
 
+(deftest subtypep.integer.28
+  (check-equivalence
+   '(and integer (not (eql 10)))
+   '(or (integer * 9) (integer 11 *)))
+  nil)
+
+(deftest subtypep.integer.29
+  (check-equivalence
+   '(and integer (not (integer 1 10)))
+   '(or (integer * 0) (integer 11 *)))
+  nil)
+
+(deftest subtypep.integer.30
+  (check-equivalence
+   '(and (integer -100 100) (not (integer 1 10)))
+   '(or (integer -100 0) (integer 11 100)))
+  nil)
+
+(deftest subtypep.integer.31
+  (check-equivalence
+   '(and integer (real 4 10))
+   '(integer 4 10))
+  nil)
+
+(deftest subtypep.integer.32
+  (check-equivalence
+   '(and (integer 4 *) (real * 10))
+   '(integer 4 10))
+  nil)
+
+(deftest subtypep.integer.33
+  (check-equivalence
+   '(and (integer * 10) (real 4))
+   '(integer 4 10))
+  nil)
+
 ;;;;;;;
 
 (deftest subtypep.float.1
@@ -417,6 +453,37 @@
   nil)
 
 
+;;; SUBTYPEP on rational types
+
+(deftest subtypep.rational.1
+  (subtypep* '(rational 10 *) 'rational)
+  t t)
+
+(deftest subtypep.rational.2
+  (subtypep* '(rational 10) 'rational)
+  t t)
+
+(deftest subtypep.rational.3
+  (subtypep* '(rational * 10) 'rational)
+  t t)
+
+(deftest subtypep.rational.4
+  (subtypep '(rational 10 20) 'rational)
+  t t)
+
+(deftest subtypep.rational.5
+  (subtypep '(rational (10) 20) 'rational)
+  t t)
+
+(deftest subtypep.rational.6
+  (subtypep '(rational 10 (20)) 'rational)
+  t t)
+
+(deftest subtypep.rational.7
+  (subtypep '(rational (10) (20)) 'rational)
+  t t)
+
+
 
 
 ;;; SUBTYPEP on CONS types