X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fparse-defmacro.lisp;h=fe30d12fd5069cd81e6b64619faff118608da98d;hb=cd08dc8fd4d4b77fdbe87addb06e97cde247bbf9;hp=eea280114824b9b65e3ba18e60ce08e8a78038e3;hpb=83388ef649bc59c983042c082fb23797ca088406;p=sbcl.git diff --git a/src/code/parse-defmacro.lisp b/src/code/parse-defmacro.lisp index eea2801..fe30d12 100644 --- a/src/code/parse-defmacro.lisp +++ b/src/code/parse-defmacro.lisp @@ -50,13 +50,13 @@ (parse-defmacro-lambda-list lambda-list whole-var name context :error-fun error-fun :anonymousp anonymousp) - (values `(let* (,@(when env-arg-used - `((,*env-var* ,env-arg-name))) - ,@(nreverse *system-lets*)) + (values `(let* (,@(nreverse *system-lets*)) ,@(when *ignorable-vars* `((declare (ignorable ,@*ignorable-vars*)))) ,@*arg-tests* - (let* ,(nreverse *user-lets*) + (let* (,@(when env-arg-used + `((,*env-var* ,env-arg-name))) + ,@(nreverse *user-lets*)) ,@declarations ,@(if wrap-block `((block ,(fun-name-block-name name)