(declare (type clambda fun) (type entry-info info))
(let ((bind (lambda-bind fun))
(internal-fun (functional-entry-fun fun)))
- (setf (entry-info-closure-p info)
- (not (null (physenv-closure (lambda-physenv fun)))))
+ (setf (entry-info-closure-tn info)
+ (if (physenv-closure (lambda-physenv fun))
+ (make-normal-tn *backend-t-primitive-type*)
+ nil))
(setf (entry-info-offset info) (gen-label))
(setf (entry-info-name info)
(leaf-debug-name internal-fun))
(setq res t))
(t
(setf (ref-leaf ref) new)
- (push ref (leaf-refs new)))))))))
+ (push ref (leaf-refs new))
+ (setf (leaf-refs lambda)
+ (delq ref (leaf-refs lambda))))))))))
(:toplevel
(setq res t))))
res))