From: Mattias EngdegÄrd Date: Tue, 30 Apr 2024 13:20:34 +0000 (+0200) Subject: * lisp/emacs-lisp/bytecomp.el (byte-compile-make-closure): Simplify. X-Git-Tag: archive/raspbian/1%30.1+1-3+rpi1^2~2^2~20^2~1713 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=c15d67ecfc8f586165674c289880618caf7f270e;p=emacs.git * lisp/emacs-lisp/bytecomp.el (byte-compile-make-closure): Simplify. --- diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index 8e8fcea9b72..d9890b5c37a 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -4191,16 +4191,13 @@ This function is never called when `lexical-binding' is nil." ;; Nontrivial doc string expression: create a bytecode object ;; from small pieces at run time. `(make-byte-code - ',(aref fun 0) ; 15-bit form of arglist descriptor. - ',(aref fun 1) ; The byte-code. - (vconcat (vector . ,env) ',(aref fun 2)) ; constant vector. - ,@(let ((rest (nthcdr 3 (mapcar (lambda (x) `',x) fun)))) - (if docstring-exp - `(,(car rest) - ,(byte-run-strip-symbol-positions docstring-exp) - ,@(cddr rest)) - rest)))) - )))) + ,(aref fun 0) ; 15-bit form of arglist descriptor. + ,(aref fun 1) ; The byte-code. + (vconcat (vector . ,env) ,(aref fun 2)) ; constant vector + ,(aref fun 3) ; max stack depth + ,(byte-run-strip-symbol-positions docstring-exp) + ;; optional interactive spec and anything else, all quoted + ,@(mapcar (lambda (x) `',x) (drop 5 (append fun nil))))))))) (defun byte-compile-get-closed-var (form) "Byte-compile the special `internal-get-closed-var' form."