]> git.eshelyaron.com Git - emacs.git/commit
Fix M-x compile-defun when an interactive form is (list ...)
authorAlan Mackenzie <acm@muc.de>
Wed, 18 May 2022 09:18:15 +0000 (09:18 +0000)
committerAlan Mackenzie <acm@muc.de>
Wed, 18 May 2022 09:18:15 +0000 (09:18 +0000)
commit7969e41654b2b5c628c290deb938699a95e85fec
tree2235fb38dec67718d1431ca961695970b1c538f2
parente1c972b2479cbd9780224620b52731a2447fa612
Fix M-x compile-defun when an interactive form is (list ...)

This is for when lexical-binding is nil.  The problem fixed was M-x
compile-defun leaving symbols with position in the compiled function's arglist
and interactive form.  This fixes bug #55323.  Also ensure the doc string is
correctly stripped when lexical-binding is t.

* lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): For a (list ...)
interactive form when lexical-binding is nil, strip the positions from the
symbols in the form.  Also strip the position from the symbols in the arglist.
(byte-compile-make-closure): (Twice) strip symbols from positions in the doc
string expression.  Add comments.
lisp/emacs-lisp/bytecomp.el