X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Ftarget-main.lisp;h=683804191d368f86bb9700312153dd71b05456fd;hb=b0642df835dc2fca3e4cf47aff978ecdc88799d5;hp=6edf906f20e42efddc56ce51bd4ce67144062f1b;hpb=3eb39e017e52b5d704e7d33405c873af52a533fd;p=sbcl.git diff --git a/src/compiler/target-main.lisp b/src/compiler/target-main.lisp index 6edf906..6838041 100644 --- a/src/compiler/target-main.lisp +++ b/src/compiler/target-main.lisp @@ -61,6 +61,14 @@ (*last-format-args* nil) (*last-message-count* 0) (*gensym-counter* 0) + ;; KLUDGE: This rebinding of policy is necessary so that + ;; forms such as LOCALLY at the REPL actually extend the + ;; compilation policy correctly. However, there is an + ;; invariant that is potentially violated: future + ;; refactoring must not allow this to be done in the file + ;; compiler. At the moment we're clearly alright, as we + ;; call %COMPILE with a core-object, not a fasl-stream, + ;; but caveat future maintainers. -- CSR, 2002-10-27 (*policy* (lexenv-policy *lexenv*)) ;; FIXME: ANSI doesn't say anything about CL:COMPILE ;; interacting with these variables, so we shouldn't. As