diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2005-12-19 02:17:38 +0000 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2005-12-19 02:17:38 +0000 |
commit | 61f03d6f8f37028c704c9129e82ecfd00bb42f4a (patch) | |
tree | d3105ffa4280280458fe8a6b2730f635ff9b2910 /lisp/emacs-lisp/cl-extra.el | |
parent | 0b0d984ecb71fc74a8bcb60c7cbb9b7b2455562b (diff) | |
download | emacs-61f03d6f8f37028c704c9129e82ecfd00bb42f4a.tar.gz |
(cl-macroexpand-all): Fix code-walk for
lexical-let when encountering ((lambda (...) ...) ...).
Diffstat (limited to 'lisp/emacs-lisp/cl-extra.el')
-rw-r--r-- | lisp/emacs-lisp/cl-extra.el | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lisp/emacs-lisp/cl-extra.el b/lisp/emacs-lisp/cl-extra.el index 4ac1a72b0d7..c5a006912df 100644 --- a/lisp/emacs-lisp/cl-extra.el +++ b/lisp/emacs-lisp/cl-extra.el @@ -743,6 +743,11 @@ This also does some trivial optimizations to make the form prettier." (let* ((args (cl-macroexpand-body (cdr form) env)) (p args)) (while (and p (symbolp (car p))) (setq p (cddr p))) (if p (cl-macroexpand-all (cons 'setf args)) (cons 'setq args)))) + ((consp (car form)) + (cl-macroexpand-all (list* 'funcall + (list 'function (car form)) + (cdr form)) + env)) (t (cons (car form) (cl-macroexpand-body (cdr form) env))))) (defun cl-macroexpand-body (body &optional env) |