diff --git a/ansi-tests/subtypep-cons.lsp b/ansi-tests/subtypep-cons.lsp
index 76d4f5bbecf01bff3bf9eadb7d17c7d9cea7d899..8c38bddbeaf2717acf7e4dd4df539be5a5fc0973 100644
--- a/ansi-tests/subtypep-cons.lsp
+++ b/ansi-tests/subtypep-cons.lsp
@@ -200,3 +200,15 @@
 	 (not (cons (eql c) (eql z)))))
   nil)
 
+;;; Test case that came up in SBCL
+(deftest subtypep.cons.21
+  (check-all-subtypep
+   '(cons integer single-float)
+   '(or (cons fixnum single-float) (cons bignum single-float)))
+  nil)
+
+(deftest subtypep.cons.22
+  (check-all-subtypep
+   '(cons single-float integer)
+   '(or (cons single-float fixnum) (cons single-float bignum)))
+  nil)