diff --git a/ansi-tests/ignorable.lsp b/ansi-tests/ignorable.lsp
index 08a3754e96ff832c30b90437c887c2b29cde324d..9f1b3c0648cee733be6c5694ba5bd685c332e49b 100644
--- a/ansi-tests/ignorable.lsp
+++ b/ansi-tests/ignorable.lsp
@@ -23,3 +23,34 @@
     (declare (ignorable (function %f)))
     (%f))
   foo)
+
+;;; TODO: add a test for (function (setf foo))
+
+(deftest ignorable.5
+  (flet (((setf %f) (x y) nil))
+	(declare (ignorable (function (setf %f))))
+	:good)
+  :good)
+
+(deftest ignorable.6
+  (flet (((setf %f) (x y) (setf (car y) x)))
+	(declare (ignorable (function (setf %f))))
+	(let ((z (cons 'a 'b)))
+	  (values (setf (%f z) 'c) z)))
+  c (c . b))
+
+(deftest ignorable.7
+  (labels (((setf %f) (x y) nil))
+	  (declare (ignorable (function (setf %f))))
+	  :good)
+  :good)
+
+(deftest ignorable.8
+  (labels (((setf %f) (x y) (setf (car y) x)))
+	  (declare (ignorable (function (setf %f))))
+	  (let ((z (cons 'a 'b)))
+	    (values (setf (%f z) 'c) z)))
+  c (c . b))
+
+
+