GNU bug report logs -
#65622
Inappropriate suppression of backtrace on an error
Previous Next
Reported by: Alan Mackenzie <acm <at> muc.de>
Date: Wed, 30 Aug 2023 13:09:02 UTC
Severity: normal
Done: Alan Mackenzie <acm <at> muc.de>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 65622 in the body.
You can then email your comments to 65622 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65622
; Package
emacs
.
(Wed, 30 Aug 2023 13:09:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Alan Mackenzie <acm <at> muc.de>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Wed, 30 Aug 2023 13:09:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Hello, Emacs.
On a recent master branch Emacs:
(i) emacs -Q
(ii) Insert the following into *scratch*:
(defmacro hash-if (condition then-form &rest else-forms)
"A conditional compilation macro analogous to C's #if.
Evaluate CONDITION at macro-expansion time. If it is non-nil,
expand the macro to THEN-FORM. Otherwise expand it to ELSE-FORMS
enclosed in a `progn' form. ELSE-FORMS may be empty."
(declare (indent 2)
(debug (form sexp &rest sexp)))
(if (eval condition lexical-binding)
then-form
(cons 'progn else-forms)))
(defun foo (bar)
(hash-if (< emacs-major-version 19)
(car bar)
(cons bar bar)))
(iii) Evaluate hash-if by putting point after it and doing C-x C-e.
(iv) Attempt to instrument foo for edebug by putting point inside foo and
doing C-u C-M-x. This throws the error: "Ignoring macroexpansion
error: (void-function edebug-after)".
(v) Set debug-on-error to t with M-: (setq debug-on-error t).
(vi) Repeat (iv). This throws the same error, without a backtrace. This
lack of a backtrace is a bug.
(vii) This backtrace is almost certainly being suppressed by a frivolous
condition-case, whose main purpose appears to be making debugging more
difficult. ;-)
(viii) There would appear to be no justification for "ignoring" the error
(void-function edebug-after). Such error should not occur, and needs
debugging.
--
Alan Mackenzie (Nuremberg, Germany).
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65622
; Package
emacs
.
(Wed, 30 Aug 2023 23:18:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 65622 <at> debbugs.gnu.org (full text, mbox):
Alan Mackenzie <acm <at> muc.de> writes:
> Hello, Emacs.
> (v) Set debug-on-error to t with M-: (setq debug-on-error t).
> (vi) Repeat (iv). This throws the same error, without a backtrace. This
> lack of a backtrace is a bug.
I think you just need (setq eval-expression-debug-on-error t).
Stumbled over the same issue ... yesterday?, or so. Also when debugging
Edebug.
Maybe people would like debug-on-error -> t taking precedence over
eval-expression-debug-on-error -> nil? The danger is they turn both off
by default and then forget about the second one.
Michael.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65622
; Package
emacs
.
(Thu, 31 Aug 2023 07:43:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 65622 <at> debbugs.gnu.org (full text, mbox):
Michael Heerdegen <michael_heerdegen <at> web.de> writes:
> Maybe people would like debug-on-error -> t taking precedence over
> eval-expression-debug-on-error -> nil?
FWIW, I would.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65622
; Package
emacs
.
(Thu, 31 Aug 2023 07:51:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 65622 <at> debbugs.gnu.org (full text, mbox):
> Cc: Alan Mackenzie <acm <at> muc.de>, 65622 <at> debbugs.gnu.org
> From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
> Date: Thu, 31 Aug 2023 09:41:22 +0200
>
> Michael Heerdegen <michael_heerdegen <at> web.de> writes:
>
> > Maybe people would like debug-on-error -> t taking precedence over
> > eval-expression-debug-on-error -> nil?
>
> FWIW, I would.
That'd probably require a special non-nil, non-t value of
debug-on-error, to avoid surprising others.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65622
; Package
emacs
.
(Thu, 31 Aug 2023 08:22:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 65622 <at> debbugs.gnu.org (full text, mbox):
On 31.08.23 09:49, Eli Zaretskii wrote:
>> Cc: Alan Mackenzie <acm <at> muc.de>, 65622 <at> debbugs.gnu.org
>> From: Gerd Möllmann <gerd.moellmann <at> gmail.com>
>> Date: Thu, 31 Aug 2023 09:41:22 +0200
>>
>> Michael Heerdegen <michael_heerdegen <at> web.de> writes:
>>
>>> Maybe people would like debug-on-error -> t taking precedence over
>>> eval-expression-debug-on-error -> nil?
>>
>> FWIW, I would.
>
> That'd probably require a special non-nil, non-t value of
> debug-on-error, to avoid surprising others.
Yes, that's maybe a bit too much effort.
Reply sent
to
Alan Mackenzie <acm <at> muc.de>
:
You have taken responsibility.
(Wed, 20 Sep 2023 15:56:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Alan Mackenzie <acm <at> muc.de>
:
bug acknowledged by developer.
(Wed, 20 Sep 2023 15:56:02 GMT)
Full text and
rfc822 format available.
Message #22 received at 65622-done <at> debbugs.gnu.org (full text, mbox):
Hello, Michael.
The bug is now fixed.
On Thu, Aug 31, 2023 at 01:16:42 +0200, Michael Heerdegen wrote:
> Alan Mackenzie <acm <at> muc.de> writes:
> > Hello, Emacs.
> > (v) Set debug-on-error to t with M-: (setq debug-on-error t).
> > (vi) Repeat (iv). This throws the same error, without a backtrace. This
> > lack of a backtrace is a bug.
> I think you just need (setq eval-expression-debug-on-error t).
> Stumbled over the same issue ... yesterday?, or so. Also when debugging
> Edebug.
> Maybe people would like debug-on-error -> t taking precedence over
> eval-expression-debug-on-error -> nil? The danger is they turn both off
> by default and then forget about the second one.
> Michael.
--
Alan Mackenzie (Nuremberg, Germany).
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65622
; Package
emacs
.
(Thu, 21 Sep 2023 01:46:01 GMT)
Full text and
rfc822 format available.
Message #25 received at 65622 <at> debbugs.gnu.org (full text, mbox):
Alan Mackenzie <acm <at> muc.de> writes:
> Hello, Michael.
>
> The bug is now fixed.
Great, thanks [...looking at the fix...] so this had nothing to do at
all with `eval-expression-debug-on-error'?
Michael.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65622
; Package
emacs
.
(Thu, 21 Sep 2023 13:25:02 GMT)
Full text and
rfc822 format available.
Message #28 received at 65622 <at> debbugs.gnu.org (full text, mbox):
Hello, Michael.
On Thu, Sep 21, 2023 at 03:44:47 +0200, Michael Heerdegen wrote:
> Alan Mackenzie <acm <at> muc.de> writes:
> > The bug is now fixed.
> Great, thanks [...looking at the fix...] so this had nothing to do at
> all with `eval-expression-debug-on-error'?
Well, not really. But having eval-expression-debug-on-error set now
causes useful backtraces on the particular error. In fact, two
successive backtraces, then a bare error message for a single error.
This is not ideal, but IMHO better than what came before.
And there was a devilish typo there, too, which took me days to find.
:-(
> Michael.
--
Alan Mackenzie (Nuremberg, Germany).
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 20 Oct 2023 11:24:06 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 203 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.