Subject: Re: bug#65267: 30.0.50; modifying debug-ignored-errors during startup with --debug-init is broken

From: Stefan Monnier <[email-masked]>
Date: Sun, 13 Aug 2023 12:19:31 -0400

> --8<--
> initdir=$(mktemp -d)
>
> echo "(add-to-list 'debug-ignored-errors 'my-error)" >"$initdir"/init.el
> emacs --debug-init --init-dir="$initdir" \
>       --eval '(message "%S" debug-ignored-errors)'
>
> rm -rf "$initdir"
> --8<--
>
> In the emacs thus started, the value of `debug-ignored-errors' is
> "(my-error startup--witness)" instead of `my-error' added to
> the default ignored error symbol list.

Yeah, it's wrong, but I'm not sure how to fix it:
`--debug-init` needs to change the value of `debug-ignored-errors` while
`init.el` is executed, but it's not clear how to "revert" to "the value
it would have if we had not changed it" once we're finished processing
`init.el`.

Maybe we should introduce a new `inhibit-debug-ignored-errors` which we
could let-bind while loading `init.el` without having to modify
`debug-ignored-errors` itself?

        Stefan