diff --git a/ansi-tests/subtypep-cons.lsp b/ansi-tests/subtypep-cons.lsp
index b5063e832ea513d7baf4161d2db979f78397cc45..fc5032af19e59c60c7e3b83d374a0654165c6381 100644
--- a/ansi-tests/subtypep-cons.lsp
+++ b/ansi-tests/subtypep-cons.lsp
@@ -62,3 +62,18 @@
 	(cons (integer 3 15) (integer 4 15)))
    '(cons (integer 0 15) (integer 0 15)))
   nil)
+
+(deftest subtypep.cons.8
+  (check-equivalence
+   '(or
+     (cons integer (cons symbol integer))
+     (cons symbol (cons integer symbol))
+     (cons symbol (cons symbol integer))
+     (cons symbol (cons integer integer))
+     (cons integer (cons integer symbol))
+     (cons symbol (cons symbol symbol))
+     (cons integer (cons integer integer))
+     (cons integer (cons symbol symbol)))
+   '(cons (or symbol integer)
+	  (cons (or symbol integer) (or symbol integer))))
+  nil)