[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#66979: Wrong number of arguments with completion-at-point
From: |
Alan Mackenzie |
Subject: |
bug#66979: Wrong number of arguments with completion-at-point |
Date: |
Tue, 7 Nov 2023 19:50:22 +0000 |
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).
- bug#66979: Wrong number of arguments with completion-at-point, Juri Linkov, 2023/11/07
- bug#66979: Wrong number of arguments with completion-at-point, Juri Linkov, 2023/11/07
- bug#66979: Wrong number of arguments with completion-at-point, Stefan Monnier, 2023/11/07
- bug#66979: Wrong number of arguments with completion-at-point,
Alan Mackenzie <=
- bug#66979: Wrong number of arguments with completion-at-point, Stefan Monnier, 2023/11/07
- bug#66979: Wrong number of arguments with completion-at-point, Alan Mackenzie, 2023/11/07
- bug#66979: Wrong number of arguments with completion-at-point, Stefan Monnier, 2023/11/07
- bug#66979: Wrong number of arguments with completion-at-point, Juri Linkov, 2023/11/09
- bug#66979: Wrong number of arguments with completion-at-point, Stefan Monnier, 2023/11/12