bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#15587: [PATCH] Edebug `destructuring-bind' dotted spec


From: Oleh
Subject: bug#15587: [PATCH] Edebug `destructuring-bind' dotted spec
Date: Fri, 11 Oct 2013 12:39:37 +0200
User-agent: mu4e 0.9.9.5; emacs 24.3.4

Hi,

Currently it's not possible to edebug

(defun foo (z)
  (destructuring-bind (x . y) z (+ x y)))

I attach a small patch to fix this.

>From 51a191c06f210eecf594be384e9b835afb9a818f Mon Sep 17 00:00:00 2001
From: Oleh Krehel <ohwoeowho@gmail.com>
Date: Fri, 11 Oct 2013 12:34:03 +0200
Subject: [PATCH] * emacs-lisp/cl-macs.el: (cl-destructuring-bind): added
 dotted form as an option for edebug.

Edebug will now work for:

(defun foo (z)
  (destructuring-bind (x . y) z (+ x y)))
---
 emacs-lisp/cl-macs.el | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/emacs-lisp/cl-macs.el b/emacs-lisp/cl-macs.el
index 60fdc09..a84e677 100644
--- a/emacs-lisp/cl-macs.el
+++ b/emacs-lisp/cl-macs.el
@@ -565,7 +565,7 @@ its argument list allows full Common Lisp conventions."
 (defmacro cl-destructuring-bind (args expr &rest body)
   "Bind the variables in ARGS to the result of EXPR and execute BODY."
   (declare (indent 2)
-           (debug (&define cl-macro-list def-form cl-declarations def-body)))
+           (debug (&define [&or cl-macro-list (sexp . sexp)] def-form 
cl-declarations def-body)))
   (let* ((cl--bind-lets nil) (cl--bind-forms nil) (cl--bind-inits nil)
         (cl--bind-defs nil) (cl--bind-block 'cl-none) (cl--bind-enquote nil))
     (cl--do-arglist (or args '(&aux)) expr)
-- 
1.8.4

regards,
Oleh

reply via email to

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