Subject: Re: bug#57804: An infinite loop in a `fontify-region' function causes Emacs to hang indefinitely

From: Eli Zaretskii <[email-masked]>
Date: Wed, 14 Sep 2022 20:02:30 +0300

tags 57804 wontfix
close 57804
thanks

> From: Paul Pogonyshev <[email-masked]>
> Date: Wed, 14 Sep 2022 17:05:54 +0200
> 
> To reproduce, save the attachment as `font-lock-hangs.el' and execute:
> 
>     $ emacs -Q -l font-lock-hangs.el
> 
> C-g doesn't help anymore. The only thing you can do is to kill and start Emacs anew.
> 
> Git commit fd1ee05977.
> 
> To quote a discussion from another bug, the reply is from Eli Zaretski:
> 
> > > By the way, it would really be nice if Emacs could do something about hangs irrespective of what
> causes
> > > that. Even if Elisp code is buggy, Emacs itself should never allow it to fall into an infinite loop and stop
> > > responding to C-g, leaving full restart as the only way out.
> > 
> > I think that's impossible in general, unless we restrict what Lisp
> > programs can do.  Every programming language can be used to write a
> > buggy program.
> > 
> > However, it should be possible to prevent some cases of such
> > problematic behavior, certainly so when the infloop is caused by our
> > bug.  But for that we need to know the details of the specific case in
> > order to investigate.

This case is exactly one of those which I think we shouldn't try to
fix, because it's the case of "buggy Lisp program", a.k.a. "don't do
that".  There's no reason for any useful Lisp program to have an
infloop like this:

>   (while t
>     "whoopsie")

So I'm closing this bug as "wontfix".