summaryrefslogtreecommitdiff
path: root/lisp/emacs-lisp
diff options
context:
space:
mode:
authorStefan Monnier <monnier@iro.umontreal.ca>2021-01-09 11:35:53 -0500
committerStefan Monnier <monnier@iro.umontreal.ca>2021-01-09 11:35:53 -0500
commit981d5eaba8e9fe3f48e74d957b2b409c32cb258e (patch)
tree1f8cd67683a227a2580ba9346402a88b459928b4 /lisp/emacs-lisp
parentfe7263803c37c836b3484861fbe13674a5063b4e (diff)
downloademacs-981d5eaba8e9fe3f48e74d957b2b409c32cb258e.tar.gz
emacs-981d5eaba8e9fe3f48e74d957b2b409c32cb258e.tar.bz2
emacs-981d5eaba8e9fe3f48e74d957b2b409c32cb258e.zip
* lisp/emacs-lisp/cl-macs.el (cl--self-tco): Fix build of gnus-agent.el
Don't burp on "naked" variable let bindings.
Diffstat (limited to 'lisp/emacs-lisp')
-rw-r--r--lisp/emacs-lisp/cl-macs.el3
1 files changed, 2 insertions, 1 deletions
diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index 4cee091e60d..c2bf02ccece 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)))))