Subject: Patch (was: bug#24765: 26.0.50; Incorrect Edebug spec for cl-letf, cl-letf*)

From: Gemini Lasswell <[email-masked]>
Date: Tue, 25 Apr 2017 08:28:46 -0700

Here is a patch for the edebug spec of cl-letf* to handle this case.

>From 91091616d994675b2aad28df2031426611273692 Mon Sep 17 00:00:00 2001
From: Gemini Lasswell <[email-masked]>
Date: Tue, 25 Apr 2017 07:42:01 -0700
Subject: [PATCH] * lisp/emacs-lisp/cl-macs.el (cl-letf): Fix Edebug spec
 (bug#24765)

---
 lisp/emacs-lisp/cl-macs.el | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/lisp/emacs-lisp/cl-macs.el b/lisp/emacs-lisp/cl-macs.el
index db1518ce61..20bd92361b 100644
--- a/lisp/emacs-lisp/cl-macs.el
+++ b/lisp/emacs-lisp/cl-macs.el
@@ -2445,7 +2445,9 @@ cl-letf
 the PLACE is not modified before executing BODY.
 
 \(fn ((PLACE VALUE) ...) BODY...)"
-  (declare (indent 1) (debug ((&rest (gate gv-place &optional form)) body)))
+  (declare (indent 1) (debug ((&rest [&or (symbolp form)
+                                          (gate gv-place &optional form)])
+                              body)))
   (if (and (not (cdr bindings)) (cdar bindings) (symbolp (caar bindings)))
       `(let ,bindings ,@body)
     (cl--letf bindings () () body)))
-- 
2.12.2