Subject: bug#36145: 26.2; Unable to "trigger another backtrace"

From: Noam Postavsky <[email-masked]>
Date: Sun, 09 Jun 2019 11:50:11 -0400

Noam Postavsky <[email-masked]> writes:

> Xu Chunyang <[email-masked]> writes:
>
>> (info "(elisp) Using Debugger") says
>>
>>> When the debugger has been entered, the ‘debug-on-error’ variable is
>>> temporarily set according to ‘eval-expression-debug-on-error’.  If the
>>> latter variable is non-‘nil’, ‘debug-on-error’ will temporarily be set
>>> to ‘t’.  This means that any further errors that occur while doing a
>>> debugging session will (by default) trigger another backtrace.
>>
>> Text before "This means.." is correct, but the conclusion seems
>> incorrect, to reproduce
>>
>> - emacs -Q
>> - M-: (/ 1 0)     ;; enter the debugger
>> - M-: (/ 2 0)     ;; just message the error, no another backtrace
>>
>> Am I misunderstanding "trigger another backtrace"?
>
> I think this is a documentation bug.  You don't get another backtrace
> because inhibit-debugger is bound to t before invoking the debugger.

Although it is possible to trigger another backtrace if the first one
was from calling `debug' directly, e.g., M-: (debug) RET.