From 55fa245f374a897bbdef5ca53d6681419fda8026 Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Mon, 22 Sep 2014 09:47:47 -0400 Subject: [PATCH] * lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Don't add fundoc usage for functions with no arguments. --- lisp/ChangeLog | 3 +++ lisp/emacs-lisp/bytecomp.el | 7 +++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 659c8aa5cba..7dcc1eb9edb 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2014-09-22 Stefan Monnier + * emacs-lisp/bytecomp.el (byte-compile-lambda): Don't add fundoc usage + for functions with no arguments. + * mpc.el (mpc-data-directory): Use locate-user-emacs-file. (mpc-volume-refresh): Make sure the corresponding header-line is updated. diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 9c52cc44eb4..d21b39fd268 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -2521,7 +2521,8 @@ If QUOTED is non-nil, print with quoting; otherwise, print without quoting." "Return an expression which will evaluate to a function value FUN. FUN should be either a `lambda' value or a `closure' value." (pcase-let* (((or (and `(lambda ,args . ,body) (let env nil)) - `(closure ,env ,args . ,body)) fun) + `(closure ,env ,args . ,body)) + fun) (renv ())) ;; Turn the function's closed vars (if any) into local let bindings. (dolist (binding env) @@ -2723,7 +2724,9 @@ for symbols generated by the byte compiler itself." ;; byte-string, constants-vector, stack depth (cdr compiled) ;; optionally, the doc string. - (cond (lexical-binding + (cond ((and lexical-binding arglist) + ;; byte-compile-make-args-desc lost the args's names, + ;; so preserve them in the docstring. (list (help-add-fundoc-usage doc arglist))) ((or doc int) (list doc))) -- 2.39.5