diff --git a/compiler/ctype.lisp b/compiler/ctype.lisp
index 7168635847cc608efe8f97b2e09ba730a48bba3e..efa00903785d4115d916e319ddb0a59570c706a9 100644
--- a/compiler/ctype.lisp
+++ b/compiler/ctype.lisp
@@ -7,7 +7,7 @@
 ;;; Scott Fahlman or slisp-group@cs.cmu.edu.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ctype.lisp,v 1.29 1994/03/05 14:32:51 ram Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ctype.lisp,v 1.30 1994/03/05 14:35:57 ram Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -745,9 +745,10 @@
 		   ((:error-function *error-function*) #'compiler-warning)
 		   warning-function
 		   (where "previous declaration"))
-  (declare (type functional functional) (type function-type type)
+  (declare (type functional functional)
 	   (type function *error-function*)
 	   (string where))
+  (unless (function-type-p type) (return t))
   (let ((*lossage-detected* nil))
     (multiple-value-bind
 	(vars types)