emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

master c3c2e3b4d3e 1/2: * lisp/emacs-lisp/bytecomp.el (byte-compile-lamb


From: Mattias Engdegård
Subject: master c3c2e3b4d3e 1/2: * lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Simplify.
Date: Tue, 30 Apr 2024 10:26:23 -0400 (EDT)

branch: master
commit c3c2e3b4d3e9eac09293fca23e93f644e00e9431
Author: Mattias Engdegård <mattiase@acm.org>
Commit: Mattias Engdegård <mattiase@acm.org>

    * lisp/emacs-lisp/bytecomp.el (byte-compile-lambda): Simplify.
    
    Remove the add-lambda argument.  All callers adapted.
---
 lisp/emacs-lisp/bytecomp.el | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el
index 6b7b804d7de..8e8fcea9b72 100644
--- a/lisp/emacs-lisp/bytecomp.el
+++ b/lisp/emacs-lisp/bytecomp.el
@@ -2841,7 +2841,7 @@ not to take responsibility for the actual compilation of 
the code."
           ;; Tell the caller that we didn't compile it yet.
           nil)
 
-      (let* ((code (byte-compile-lambda (cons arglist body) t)))
+      (let ((code (byte-compile-lambda `(lambda ,arglist . ,body))))
         (if this-one
             ;; A definition in b-c-initial-m-e should always take precedence
             ;; during compilation, so don't let it be redefined.  (Bug#8647)
@@ -3069,14 +3069,12 @@ If FORM is a lambda or a macro, byte-compile it as a 
function."
                         byte-compile--known-dynamic-vars)
                 ", "))))
 
-(defun byte-compile-lambda (fun &optional add-lambda reserved-csts)
+(defun byte-compile-lambda (fun &optional reserved-csts)
   "Byte-compile a lambda-expression and return a valid function.
 The value is usually a compiled function but may be the original
 lambda-expression."
-  (if add-lambda
-      (setq fun (cons 'lambda fun))
-    (unless (eq 'lambda (car-safe fun))
-      (error "Not a lambda list: %S" fun)))
+  (unless (eq 'lambda (car-safe fun))
+    (error "Not a lambda list: %S" fun))
   (byte-compile-check-lambda-list (nth 1 fun))
   (let* ((arglist (nth 1 fun))
          (bare-arglist (byte-run-strip-symbol-positions arglist)) ; for 
compile-defun.
@@ -4158,7 +4156,7 @@ This function is never called when `lexical-binding' is 
nil."
            (docstring-exp (nth 3 form))
            (body (nthcdr 4 form))
            (fun
-            (byte-compile-lambda `(lambda ,vars . ,body) nil (length env))))
+            (byte-compile-lambda `(lambda ,vars . ,body) (length env))))
       (cl-assert (or (> (length env) 0)
                     docstring-exp))    ;Otherwise, we don't need a closure.
       (cl-assert (byte-code-function-p fun))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]