Commit dbfbf11f authored by ram's avatar ram
Browse files

Don't compile load-time-value lambdas if they've already been compiled

because they ended up in a non-top-level component.
parent d5db694b
......@@ -7,7 +7,7 @@
;;; Scott Fahlman or
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/main.lisp,v 1.74 1992/09/22 00:06:14 ram Exp $")
"$Header: /Volumes/share2/src/cmucl/cvs2git/cvsroot/src/compiler/main.lisp,v 1.75 1992/09/23 17:05:30 ram Exp $")
;;; **********************************************************************
......@@ -1105,15 +1105,18 @@
;;; Called by COMPILE-TOP-LEVEL when it was pased T for LOAD-TIME-VALUE-P
;;; (which happens in COMPILE-LOAD-TIME-STUFF). We don't try to combine
;;; this component with anything else and frob the name.
;;; this component with anything else and frob the name. If not in a
;;; :TOP-LEVEL component, then don't bother compiling, because it was merged
;;; with a run-time component.
(defun compile-load-time-value-lambda (lambdas)
(assert (null (cdr lambdas)))
(let* ((lambda (car lambdas))
(component (block-component (node-block (lambda-bind lambda)))))
(setf (component-name component) (leaf-name lambda))
(compile-component component)
(clear-ir1-info component)))
(when (eq (component-kind component) :top-level)
(setf (component-name component) (leaf-name lambda))
(compile-component component)
(clear-ir1-info component))))
;;; EMIT-MAKE-LOAD-FORM -- interface.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment