Subject: Re: bug#31995: 26.1; Condition-case failed to catch error

From: Noam Postavsky <[email-masked]>
Date: Wed, 11 Jul 2018 17:48:53 -0400

retitle 31995 Condition-case can't catch C stack overflow
tags 31995 + wontfix
quit

Sheng Yang (杨圣) <[email-masked]> writes:

> It seems that the function call ~(read (current-buffer))~ causes C stack
> overflow. Though I personally believe the undo-tree file is not
> corrupted, I assume this error should be caught by condition-case even
> if the file to read is indeed corrupted.

The file is not corrupted, it's just that the recursion goes too deep
during reading.  However, I don't think condition-case can reasonably
catch C stack overflow.  As it is, recovering from C stack overflow at
all is a bit controversial, which is why we have the
attempt-stack-overflow-recovery variable which you can set to nil in
order to reliably segfault instead.