From 6ff8b7749fcc96b79489f73500bcd4722263383c Mon Sep 17 00:00:00 2001 From: Stefan Monnier Date: Fri, 2 Feb 2018 10:28:34 -0500 Subject: [PATCH] * lisp/emacs-lisp/cconv.el (cconv-convert): Fix compiling compiled code Don't conv-convert the docstring arg of defvar/defconst. --- lisp/emacs-lisp/cconv.el | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lisp/emacs-lisp/cconv.el b/lisp/emacs-lisp/cconv.el index 02fe794467b..ca46dbb7b55 100644 --- a/lisp/emacs-lisp/cconv.el +++ b/lisp/emacs-lisp/cconv.el @@ -449,8 +449,11 @@ places where they originally did not directly appear." ;defconst, defvar (`(,(and sym (or `defconst `defvar)) ,definedsymbol . ,forms) `(,sym ,definedsymbol - . ,(mapcar (lambda (form) (cconv-convert form env extend)) - forms))) + . ,(when (consp forms) + (cons (cconv-convert (car forms) env extend) + ;; The rest (i.e. docstring, of any) is not evaluated, + ;; and may be an invalid expression (e.g. ($# . 678)). + (cdr forms))))) ;condition-case ((and `(condition-case ,var ,protected-form . ,handlers) -- 2.39.2