diff --git a/compiler/ir1tran.lisp b/compiler/ir1tran.lisp
index f85f4f1168bb197cc3bf1eb6e9f18dd7ae547731..0640007174cb2775cab75896c064e772c0e7891a 100644
--- a/compiler/ir1tran.lisp
+++ b/compiler/ir1tran.lisp
@@ -2485,8 +2485,10 @@
 		  (compiler-warning "Unrecognized proclamation: ~S." form)))))
 
 	(unless ignore
-	  (funcall #'%proclaim form)
-	  (ir1-convert start cont `(%proclaim ,what)))))))
+	  (funcall #'%proclaim form))
+	(if ignore
+	    (ir1-convert start cont nil)
+	    (ir1-convert start cont `(%proclaim ,what)))))))
 
 
 ;;; %Compiler-Defstruct IR1 Convert  --  Internal