summaryrefslogtreecommitdiff
path: root/lisp
diff options
context:
space:
mode:
authorGemini Lasswell <gazally@runbox.com>2017-11-05 21:36:58 -0800
committerGemini Lasswell <gazally@runbox.com>2017-11-26 17:36:14 -0800
commit700f74e4c8d1b33cdf96dab9586dc41ebccaba7d (patch)
tree38353258815ea78e2d4106a5e27b7788a5cf26a5 /lisp
parent0ded1b41a986229eaa4218095d9c78d1800c0b27 (diff)
downloademacs-700f74e4c8d1b33cdf96dab9586dc41ebccaba7d.tar.gz
Fix Edebug specs for if-let* and and-let* (Bug#29236)
* test/lisp/emacs-lisp/subr-x.el (if-let*, if-let): Change Edebug spec to cause Edebug to instrument tests the results of which are not bound to symbols (the (VALUEFORM) case). (and-let*): Change Edebug spec to allow empty body. *test/lisp/emacs-lisp/subr-x-tests.el: (subr-x-and-let*-test-group-1): Add missing quote to erroneous form so Edebug will work on this test.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/emacs-lisp/subr-x.el8
1 files changed, 5 insertions, 3 deletions
diff --git a/lisp/emacs-lisp/subr-x.el b/lisp/emacs-lisp/subr-x.el
index 9ff742c4331..37bcfc2003d 100644
--- a/lisp/emacs-lisp/subr-x.el
+++ b/lisp/emacs-lisp/subr-x.el
@@ -133,7 +133,7 @@ be of the form (VALUEFORM), which is evaluated and checked for
nil; i.e. SYMBOL can be omitted if only the test result is of
interest."
(declare (indent 2)
- (debug ((&rest [&or symbolp (symbolp form) (sexp)])
+ (debug ((&rest [&or symbolp (symbolp form) (form)])
form body)))
(if varlist
`(let* ,(setq varlist (internal--build-bindings varlist))
@@ -156,7 +156,9 @@ VARLIST is the same as in `if-let*'."
"Bind variables according to VARLIST and conditionally eval BODY.
Like `when-let*', except if BODY is empty and all the bindings
are non-nil, then the result is non-nil."
- (declare (indent 1) (debug when-let*))
+ (declare (indent 1)
+ (debug ((&rest [&or symbolp (symbolp form) (form)])
+ body)))
(let (res)
(if varlist
`(let* ,(setq varlist (internal--build-bindings varlist))
@@ -168,7 +170,7 @@ are non-nil, then the result is non-nil."
"Bind variables according to SPEC and eval THEN or ELSE.
Like `if-let*' except SPEC can have the form (SYMBOL VALUEFORM)."
(declare (indent 2)
- (debug ([&or (&rest [&or symbolp (symbolp form) (sexp)])
+ (debug ([&or (&rest [&or symbolp (symbolp form) (form)])
(symbolp form)]
form body))
(obsolete "use `if-let*' instead." "26.1"))