Subject: Re: bug#9463: 24.0.50; Errors should not be continuable

From: Stefan Monnier <[email-masked]>
Date: Wed, 21 Sep 2011 15:09:50 -0400

>>>>> Incidentally, C-M-c does pretty much the same as what c does currently.
>>>> It does something similar but not identical and hence re-introduces some
>>>> of the problems that the change you don't like aimed to solve.
>>> And what exactly is the difference between C-M-c and c?
>> C-M-c does a (throw 'exit), so in the case where we've caught a signal,
>> it prevents the condition-case catchers from doing their job.
> As matter of fact, c calls exit-recursive-edit (= C-M-c).
> So (throw 'exit) can't be the difference.

Ah, yes, indeed, I forgot about that part.  So yes, C-M-c behaves very
similarly (other than details like keeping the window displayed if
there's a upper-level frame marked for debug-on-exit).

> c now destroys information (backtrace, temporary buffers) in more
> situations than in previous releases.  I hope that we agree on this.

`c' always destroys information when it works.  And since it now works
in more cases, it indeed destroys information in more situations.
I think it's a feature.

> You claim that this is "important".  You neither explain why it is
> important nor why not destroying information was a problem previously.

I already explained.  You just disagree that this is important, and you
instead think it's more important to use the "stop at error" as
a heuristic to prevent you from stepping too far.  My experience
is different, so we disagree.
Have you tried the defadvice I suggested?

        Stefan