* edebug-syntax-error when instrumenting working cl-defun
@ 2014-08-16 10:45 Thorsten Jolitz
2014-08-16 11:18 ` Thorsten Jolitz
0 siblings, 1 reply; 2+ messages in thread
From: Thorsten Jolitz @ 2014-08-16 10:45 UTC (permalink / raw)
To: help-gnu-emacs
Hi List,
this function can be evaluated and seems to work:
#+begin_src emacs-lisp
(defun* foo (x &optional y &rest args &allow-other-keys)
(list x y args))
#+end_src
#+results:
: foo
#+begin_src emacs-lisp :results raw
(foo 1 2 :key1 'val1 :key2 'val2)
#+end_src
#+results:
(1 2 (:key1 val1 :key2 val2))
but when trying to instrument it for edebug with C-u C-M-x I get this
error:
,----
| edebug-syntax-error: Invalid read syntax: "Failed matching", ([&rest
| arg] [&optional ["&optional" cl-&optional-arg &rest cl-&optional-arg]]
| [&optional ["&rest" arg]] [&optional ["&key" [cl-&key-arg &rest
| cl-&key-arg] &optional "&allow-other-keys"]] [&optional ["&aux" &rest
| &or (symbolp &optional def-form) symbolp]])
`----
Where is the bug here - in my function definition, in cl-defun or in
edebug?
And, given the function definition is valid, how could I debug it
anyway?
--
cheers,
Thorsten
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: edebug-syntax-error when instrumenting working cl-defun
2014-08-16 10:45 edebug-syntax-error when instrumenting working cl-defun Thorsten Jolitz
@ 2014-08-16 11:18 ` Thorsten Jolitz
0 siblings, 0 replies; 2+ messages in thread
From: Thorsten Jolitz @ 2014-08-16 11:18 UTC (permalink / raw)
To: help-gnu-emacs
Thorsten Jolitz <tjolitz@gmail.com> writes:
> this function can be evaluated and seems to work:
>
> #+begin_src emacs-lisp
> (defun* foo (x &optional y &rest args &allow-other-keys)
> (list x y args))
> #+end_src
>
> #+results:
> : foo
>
> #+begin_src emacs-lisp :results raw
> (foo 1 2 :key1 'val1 :key2 'val2)
> #+end_src
>
> #+results:
> (1 2 (:key1 val1 :key2 val2))
>
>
> but when trying to instrument it for edebug with C-u C-M-x I get this
> error:
>
> ,----
> | edebug-syntax-error: Invalid read syntax: "Failed matching", ([&rest
> | arg] [&optional ["&optional" cl-&optional-arg &rest cl-&optional-arg]]
> | [&optional ["&rest" arg]] [&optional ["&key" [cl-&key-arg &rest
> | cl-&key-arg] &optional "&allow-other-keys"]] [&optional ["&aux" &rest
> | &or (symbolp &optional def-form) symbolp]])
> `----
>
> Where is the bug here - in my function definition, in cl-defun or in
> edebug?
Ok, I think I found it myself: the &allow-other-keys is unnecessary here
and expects the presence of :key args in the signature.
--
cheers,
Thorsten
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2014-08-16 11:18 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-08-16 10:45 edebug-syntax-error when instrumenting working cl-defun Thorsten Jolitz
2014-08-16 11:18 ` Thorsten Jolitz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).