diff --git a/compiler/ir1tran.lisp b/compiler/ir1tran.lisp
index 07a150e235366488f70c1d283508da328f713d79..393f0a64eae36768a01b73c79dc3daf94e08e4bb 100644
--- a/compiler/ir1tran.lisp
+++ b/compiler/ir1tran.lisp
@@ -5,7 +5,7 @@
 ;;; Carnegie Mellon University, and has been placed in the public domain.
 ;;;
 (ext:file-comment
-  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir1tran.lisp,v 1.169 2004/04/19 22:10:13 rtoy Exp $")
+  "$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/ir1tran.lisp,v 1.170 2004/04/28 17:58:08 rtoy Exp $")
 ;;;
 ;;; **********************************************************************
 ;;;
@@ -1232,7 +1232,14 @@
   (let ((sense (cdr (assoc (first spec) inlinep-translations :test #'eq)))
 	(new-fenv ()))
     (dolist (name (rest spec))
-      (let ((fvar (find name fvars :key #'leaf-name :test #'function-name-eqv-p)))
+      (let ((fvar (find name fvars
+			:key #'(lambda (x)
+				 ;; FVARS doesn't always contain a
+				 ;; LEAF.  Sometimes it comes from a
+				 ;; macrolet.
+				 (and (leaf-p x)
+				      (leaf-name x)))
+			:test #'function-name-eqv-p)))
 	(if fvar
 	    (setf (functional-inlinep fvar) sense)
 	    (let ((found