Subject: bug#24779: 26.0.50; Incorrect Edebug spec for define-skeleton

From: Lars Ingebrigtsen <[email-masked]>
Date: Fri, 23 Aug 2019 02:22:07 +0200

Lars Ingebrigtsen <[email-masked]> writes:

> I'm able to reproduce that, too, and adding "|" to the list of strings
> in the spec seems to fix this.  I know nothing about any of this,
> though, so...  Is this the right thing to do?
>
> diff --git a/lisp/skeleton.el b/lisp/skeleton.el
> index bce73d6bfe..67fc4aae15 100644
> --- a/lisp/skeleton.el
> +++ b/lisp/skeleton.el
> @@ -105,8 +105,8 @@ skeleton-point
>  (defvar skeleton-regions)
>
>  (def-edebug-spec skeleton-edebug-spec
> -  ([&or null stringp (stringp &rest stringp) [[&not atom] def-form]]
> -   &rest &or "n" "_" "-" ">" "@" "&" "!" "resume:"
> +  ([&or null stringp (stringp &rest stringp) [[&not atom] sexp]]
> +   &rest &or "n" "_" "-" ">" "@" "&" "!" "|" "resume:"
>     ("quote" def-form) skeleton-edebug-spec def-form))
>  ;;;###autoload
>  (defmacro define-skeleton (command documentation &rest skeleton)

There weren't any comments, and this does seem to fix the test cases, so
I've applied this now.

But like I said, I don't really know this area, so if this is the wrong
thing to do, feel free to revert.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no