emacs-diffs
[Top][All Lists]
Advanced

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

master 981d5ea: * lisp/emacs-lisp/cl-macs.el (cl--self-tco): Fix build o


From: Stefan Monnier
Subject: master 981d5ea: * lisp/emacs-lisp/cl-macs.el (cl--self-tco): Fix build of gnus-agent.el
Date: Sat, 9 Jan 2021 11:35:59 -0500 (EST)

branch: master
commit 981d5eaba8e9fe3f48e74d957b2b409c32cb258e
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>

    * lisp/emacs-lisp/cl-macs.el (cl--self-tco): Fix build of gnus-agent.el
    
    Don't burp on "naked" variable let bindings.
---
 lisp/emacs-lisp/cl-macs.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 4cee091..c2bf02c 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -2121,7 +2121,8 @@ Like `cl-flet' but the definitions can refer to previous 
ones.
                    ;; Note: it's OK for this `let' to shadow any
                    ;; of the formal arguments since we will only
                    ;; setq the fresh new `ofargs' vars instead ;-)
-                   (let ((shadowings (mapcar #'car bindings)))
+                   (let ((shadowings
+                          (mapcar (lambda (b) (if (consp b) (car b) b)) 
bindings)))
                      ;; If `var' is shadowed, then it clearly can't be
                      ;; tail-called any more.
                      (not (memq var shadowings)))))



reply via email to

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