From: Alan Mackenzie <acm@muc.de>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: acm@muc.de, 66979@debbugs.gnu.org, Juri Linkov <juri@linkov.net>
Subject: bug#66979: Wrong number of arguments with completion-at-point
Date: Tue, 7 Nov 2023 19:50:22 +0000 [thread overview]
Message-ID: <ZUqU_sI3MiC4P3BN@ACM> (raw)
In-Reply-To: <jwvzfzp1kzg.fsf-monnier+emacs@gnu.org>
Hello, Stefan
On Tue, Nov 07, 2023 at 13:31:40 -0500, Stefan Monnier wrote:
> >> Some recent change broke completion-at-point:
> >> 0. emacs -Q
> >> 1. (setq debug-on-error t)
> >> 2. Type in the *scratch*:
> >> (defun a M-C-i
> >> raises the error (wrong-number-of-arguments (2 . 2) 1)
> > Stefan, this looks like another case for the recently fixed
> > bug#58148, bug#58396, bug#58557.
> So you're suggesting we should remove the `debug` from the
> `condition-case` in `elisp--local-variables`?
> This was added by Alan in:
> commit f931cebce76d911dfc61274e0a8c1de3627b9179
> Author: Alan Mackenzie <acm@muc.de>
> Date: Wed Sep 20 15:51:17 2023 +0000
> Insert symbol `debug' into two condition-case handlers
> This fixes bug#65622. Also correct a mismatch between a
> function to which advice is added, and that from which it is
> removed.
> * lisp/emacs-lisp/macroexp.el (internal-macroexpand-for-load):
> Add a `debug' to the condition-case handler for `error', so
> that a useful backtrace will be produced on a macro expansion
> error.
> * lisp/progmodes/elisp-mode.el (elisp--local-variables): Add
> `debug' to a condition-case handler, as above. In the
> advice-remove call, give the same function, macroexpand-1, as
> in the corresponding advice-add call.
> Alan do you remember why you also added the `debug` to the
> condition-case in `elisp--local-variables`?
> The rest of the commit looks right to me.
I was trying to debug an error in eager macro expansion (i.e. macro
expansion in forms called directly by read), and that was the
condition-case that was suppressing the backtrace.
> Macro expansion errors in there are perfectly normal since
> `elisp--local-variables` routinely passes incomplete code to
> macroexpand. IOW most errors signal'd in there probably don't need to
> be debugged at all.
But when somebody has set debug-on-error to t, they _want_ those errors
signalled, surely?
> Stefan
--
Alan Mackenzie (Nuremberg, Germany).
next prev parent reply other threads:[~2023-11-07 19:50 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-07 7:13 bug#66979: Wrong number of arguments with completion-at-point Juri Linkov
2023-11-07 17:53 ` Juri Linkov
2023-11-07 18:31 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-11-07 19:50 ` Alan Mackenzie [this message]
2023-11-07 20:13 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-11-07 23:07 ` Alan Mackenzie
2023-11-08 0:02 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
2023-11-09 7:32 ` Juri Linkov
2023-11-12 21:03 ` Stefan Monnier via Bug reports for GNU Emacs, the Swiss army knife of text editors
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZUqU_sI3MiC4P3BN@ACM \
--to=acm@muc.de \
--cc=66979@debbugs.gnu.org \
--cc=juri@linkov.net \
--cc=monnier@iro.umontreal.ca \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.