# HG changeset patch # User Aidan Kehoe # Date 1324486470 0 # Node ID 281bf2b87915b9be4308a380cc58551eb89c4ee7 # Parent a944c124b2d39f393676c0168ae690e7141d5576 Call #'cl-macroexpand-all in #'cl-transform-function-property 2011-12-21 Aidan Kehoe * cl-macs.el (cl-transform-function-property): Call #'cl-macroexpand-all when doing this, avoiding unpleasantness with defsetf and lexical variables. * cl-macs.el (assert): The previous change meant #'remove-if isn't necessarily available yet; use the :key argument with #'remove* instead. diff -r a944c124b2d3 -r 281bf2b87915 lisp/ChangeLog --- a/lisp/ChangeLog Tue Dec 13 20:42:30 2011 +0000 +++ b/lisp/ChangeLog Wed Dec 21 16:54:30 2011 +0000 @@ -1,3 +1,12 @@ +2011-12-21 Aidan Kehoe + + * cl-macs.el (cl-transform-function-property): + Call #'cl-macroexpand-all when doing this, avoiding unpleasantness + with defsetf and lexical variables. + * cl-macs.el (assert): + The previous change meant #'remove-if isn't necessarily available + yet; use the :key argument with #'remove* instead. + 2011-12-10 Aidan Kehoe * mule/mule-cmds.el (posix-charset-to-coding-system-hash): diff -r a944c124b2d3 -r 281bf2b87915 lisp/cl-macs.el --- a/lisp/cl-macs.el Tue Dec 13 20:42:30 2011 +0000 +++ b/lisp/cl-macs.el Wed Dec 21 16:54:30 2011 +0000 @@ -292,7 +292,9 @@ symbol-or-lambda))) (defun cl-transform-function-property (func prop form) - `(put ',func ',prop #'(lambda ,@(cdr (cl-transform-lambda form func))))) + (cl-macroexpand-all + `(put ',func ',prop #'(lambda ,@(cdr (cl-transform-lambda form func)))) + byte-compile-macro-environment)) (defconst lambda-list-keywords '(&optional &rest &key &allow-other-keys &aux &whole &body &environment)) @@ -3054,7 +3056,9 @@ omitted, a default message listing FORM itself is used." (and (or (not (cl-compiling-file)) (< cl-optimize-speed 3) (= cl-optimize-safety 3)) - (let ((sargs (and show-args (remove-if #'cl-const-expr-p (cdr form))))) + (let ((sargs (and show-args + ;; #'remove-if isn't necessarily available yet. + (remove* t (cdr form) :key #'cl-const-expr-p)))) (list 'progn (list 'or form (if string