diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2012-11-14 20:26:52 -0500 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2012-11-14 20:26:52 -0500 |
commit | 589fc4791fb569279b23e5a09243115a7b52cf74 (patch) | |
tree | c84ac93d8f4a84c84085770964b789180c3ca634 /lisp/emacs-lisp/cl-macs.el | |
parent | bf20ea80f6331aaea18042a92928deb9db1b66f3 (diff) | |
download | emacs-589fc4791fb569279b23e5a09243115a7b52cf74.tar.gz emacs-589fc4791fb569279b23e5a09243115a7b52cf74.tar.bz2 emacs-589fc4791fb569279b23e5a09243115a7b52cf74.zip |
* lisp/emacs-lisp/cl-macs.el (cl--transform-lambda): Defend against
potential binding of print-gensym to t, and prettify (back)quotes in
case they appear in args's default values.
Fixes: debbugs:12884
Diffstat (limited to 'lisp/emacs-lisp/cl-macs.el')
-rw-r--r-- | lisp/emacs-lisp/cl-macs.el | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el index 3c46c40242d..f83bfe00666 100644 --- a/lisp/emacs-lisp/cl-macs.el +++ b/lisp/emacs-lisp/cl-macs.el @@ -260,9 +260,11 @@ The name is made by appending a number to PREFIX, default \"G\"." (require 'help-fns) (cons (help-add-fundoc-usage (if (stringp (car hdr)) (pop hdr)) - (format "%S" - (cons 'fn - (cl--make-usage-args orig-args)))) + ;; Be careful with make-symbol and (back)quote, + ;; see bug#12884. + (let ((print-gensym nil) (print-quoted t)) + (format "%S" (cons 'fn (cl--make-usage-args + orig-args))))) hdr))) (list `(let* ,cl--bind-lets ,@(nreverse cl--bind-forms) |