Subject: 24.0.50; &key (var default) in destructuring-bind

From: Helmut Eller <[email-masked]>
Date: Fri, 11 Jun 2010 22:13:27 +0200

With this code:

  (destructuring-bind (&key (x 1)) '()
    x)

Emacs complains that:

  let*: Symbol's value as variable is void: bind-enquote

The attached patch fixes this problem, but I can't explains why.

In GNU Emacs 24.0.50.8 (i686-pc-linux-gnu, GTK+ Version 2.12.12)
 of 2010-04-29 on ix

=== modified file 'lisp/emacs-lisp/cl-macs.el'
--- lisp/emacs-lisp/cl-macs.el	2010-05-19 20:37:57 +0000
+++ lisp/emacs-lisp/cl-macs.el	2010-06-11 20:11:10 +0000
@@ -438,7 +438,7 @@
 ;;;###autoload
 (defmacro destructuring-bind (args expr &rest body)
   (let* ((bind-lets nil) (bind-forms nil) (bind-inits nil)
-	 (bind-defs nil) (bind-block 'cl-none))
+	 (bind-defs nil) (bind-block 'cl-none) (bind-enquote nil))
     (cl-do-arglist (or args '(&aux)) expr)
     (append '(progn) bind-inits
 	    (list (nconc (list 'let* (nreverse bind-lets))