From 66df1300fd9b4507d5aa3dec1fc44d676eb37bfe Mon Sep 17 00:00:00 2001
From: ram <ram>
Date: Wed, 3 Oct 1990 17:32:24 +0000
Subject: [PATCH] Changed NOTE-FAILED-OPTIMIZATION to reflect the new format of
 *FAILED-OPTIMIZATIONS*.

---
 compiler/ir1final.lisp | 36 ++++++++++++++++++------------------
 1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/compiler/ir1final.lisp b/compiler/ir1final.lisp
index f74d3f16a..c997a909d 100644
--- a/compiler/ir1final.lisp
+++ b/compiler/ir1final.lisp
@@ -22,27 +22,27 @@
 ;;; table.  If the node has been deleted or is no longer a known call, then do
 ;;; nothing; some other optimization must have gotten to it.
 ;;;
-(proclaim '(function note-failed-optimization (combination (or list ctype))
-		     void))
-(defun note-failed-optimization (node what)
+(defun note-failed-optimization (node failures)
+  (declare (type combination node) (list failures))
   (unless (or (node-deleted node)
 	      (not (function-info-p (combination-kind node))))
     (let ((*compiler-error-context* node))
-      (cond ((listp what)
-	     (compiler-note "Unable to optimize because:~%~6T~?"
-			    (first what) (rest what)))
-	    (t
-	     (collect ((messages))
-	       (flet ((frob (string &rest stuff)
-			(messages string)
-			(messages stuff)))
-		 (valid-function-use node what
-				     :warning-function #'frob
-				     :error-function #'frob))
-	       
-	       (compiler-note "Unable to optimize due to type uncertainty:~@
-	                       ~{~6T~?~^~&~}"
-			      (messages))))))))
+      (dolist (failure failures)
+	(let ((what (cdr failure)))
+	  (if (consp what)
+	      (compiler-note "Unable to optimize because:~%~6T~?"
+			     (first what) (rest what))
+	      (collect ((messages))
+		(flet ((frob (string &rest stuff)
+			 (messages string)
+			 (messages stuff)))
+		  (valid-function-use node what
+				      :warning-function #'frob
+				      :error-function #'frob))
+		
+		(compiler-note "Unable to optimize due to type uncertainty:~@
+		                ~{~6T~?~^~&~}"
+			       (messages)))))))))
 
 	  
 ;;; Check-Free-Function  --  Interface
-- 
GitLab