[armedbear-cvs] r11443 - trunk/j/src/org/armedbear/lisp
Ville Voutilainen
vvoutilainen at common-lisp.net
Sun Dec 14 14:17:46 UTC 2008
Author: vvoutilainen
Date: Sun Dec 14 14:17:40 2008
New Revision: 11443
Log:
Fix macrolet.39 in compiled tests by using environment for
local functions.
Modified:
trunk/j/src/org/armedbear/lisp/precompiler.lisp
Modified: trunk/j/src/org/armedbear/lisp/precompiler.lisp
==============================================================================
--- trunk/j/src/org/armedbear/lisp/precompiler.lisp (original)
+++ trunk/j/src/org/armedbear/lisp/precompiler.lisp Sun Dec 14 14:17:40 2008
@@ -828,8 +828,7 @@
(arglist (cadr def))
(body (cddr def)))
;; Macro names are shadowed by local functions.
- (push nil *local-functions-and-macros*)
- (push name *local-functions-and-macros*)
+ (environment-add-function-definition *compile-file-environment* name body)
(list* name arglist (mapcar #'precompile1 body))))
(defun precompile-local-functions (defs)
@@ -849,7 +848,8 @@
(find-use name (%cdr expression))))))
(defun precompile-flet/labels (form)
- (let ((*local-functions-and-macros* *local-functions-and-macros*)
+ (let ((*compile-file-environment*
+ (make-environment *compile-file-environment*))
(operator (car form))
(locals (cadr form))
(body (cddr form)))
More information about the armedbear-cvs
mailing list