X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Fparse-defmacro.lisp;h=8fb6d8c3271d1a0763c3bddcce56c1bc1c9c6e7d;hb=37200d73dfca16507809778574092cfb998711d5;hp=bc233baaaa42ba81cfa4198eb3cfe1f934ffc864;hpb=6ce6b4d3e995f7fae210c8fe139a693fd413ed01;p=sbcl.git diff --git a/src/code/parse-defmacro.lisp b/src/code/parse-defmacro.lisp index bc233ba..8fb6d8c 100644 --- a/src/code/parse-defmacro.lisp +++ b/src/code/parse-defmacro.lisp @@ -109,7 +109,7 @@ ;; Special case compiler-macros: if car of the form is FUNCALL, ;; skip over it for destructuring, pretending cdr of the form is ;; the actual form. Save original for &WHOLE. - (when (eq context 'define-compiler-macro) + (when (and (not sublist) (eq context 'define-compiler-macro)) (push-let-binding compiler-macro-whole whole-var :system t) (push compiler-macro-whole *ignorable-vars*) (push-let-binding whole-var whole-var