emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r100610: * lisp/emacs-lisp/macroexp.e


From: Stefan Monnier
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r100610: * lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Put back special
Date: Wed, 16 Jun 2010 20:17:22 -0400
User-agent: Bazaar (2.0.3)

------------------------------------------------------------
revno: 100610
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Wed 2010-06-16 20:17:22 -0400
message:
  * lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Put back special
  handling for `lambda' (misunderstanding).
modified:
  lisp/ChangeLog
  lisp/emacs-lisp/macroexp.el
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2010-06-16 23:27:20 +0000
+++ b/lisp/ChangeLog    2010-06-17 00:17:22 +0000
@@ -1,3 +1,8 @@
+2010-06-17  Stefan Monnier  <address@hidden>
+
+       * emacs-lisp/macroexp.el (macroexpand-all-1): Put back special
+       handling for `lambda' (misunderstanding).
+
 2010-06-16  Jay Belanger  <address@hidden>
 
        * calc/calc-poly.el: (math-accum-factors):  Make sure that

=== modified file 'lisp/emacs-lisp/macroexp.el'
--- a/lisp/emacs-lisp/macroexp.el       2010-06-16 21:11:06 +0000
+++ b/lisp/emacs-lisp/macroexp.el       2010-06-17 00:17:22 +0000
@@ -145,6 +145,11 @@
                        form))
           ((eq fun 'quote)
            form)
+          ((and (consp fun) (eq (car fun) 'lambda))
+           ;; Embedded lambda in function position.
+           (maybe-cons (macroexpand-all-forms fun 2)
+                       (macroexpand-all-forms (cdr form))
+                       form))
           ;; The following few cases are for normal function calls that
           ;; are known to funcall one of their arguments.  The byte
           ;; compiler has traditionally handled these functions specially


reply via email to

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