emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] trunk r114949: * lisp/emacs-lisp/cconv.el (cconv-convert):


From: Stefan Monnier
Subject: [Emacs-diffs] trunk r114949: * lisp/emacs-lisp/cconv.el (cconv-convert): Check form of let binding.
Date: Mon, 04 Nov 2013 19:48:15 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 114949
revision-id: address@hidden
parent: address@hidden
fixes bug: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=15786
author: Nathan Trapuzzano <address@hidden>
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Mon 2013-11-04 14:48:07 -0500
message:
  * lisp/emacs-lisp/cconv.el (cconv-convert): Check form of let binding.
modified:
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/emacs-lisp/cconv.el       cconv.el-20101015215845-f7w7g0kxa4xzdjdx-1
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2013-11-04 19:25:09 +0000
+++ b/lisp/ChangeLog    2013-11-04 19:48:07 +0000
@@ -1,3 +1,8 @@
+2013-11-04  Nathan Trapuzzano  <address@hidden>  (tiny change)
+
+       * emacs-lisp/cconv.el (cconv-convert): Check form of let binding
+       (bug#15786).
+
 2013-11-04  Stefan Monnier  <address@hidden>
 
        * emacs-lisp/helpers.el: Move from helpers.el.  Use lexical-binding.

=== modified file 'lisp/emacs-lisp/cconv.el'
--- a/lisp/emacs-lisp/cconv.el  2013-10-03 04:58:56 +0000
+++ b/lisp/emacs-lisp/cconv.el  2013-11-04 19:48:07 +0000
@@ -289,12 +289,15 @@
 
        (dolist (binder binders)
          (let* ((value nil)
-                (var (if (not (consp binder))
-                         (prog1 binder (setq binder (list binder)))
-                       (setq value (cadr binder))
-                       (car binder)))
-                (new-val
-                 (cond
+               (var (if (not (consp binder))
+                        (prog1 binder (setq binder (list binder)))
+                      (cl-assert (null (cdr (cdr binder))) nil
+                                 "malformed let binding: `%s'"
+                                  (prin1-to-string binder))
+                      (setq value (cadr binder))
+                      (car binder)))
+               (new-val
+                (cond
                   ;; Check if var is a candidate for lambda lifting.
                   ((and (member (cons binder form) cconv-lambda-candidates)
                         (progn


reply via email to

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