Subject: bug#27585: segfault when evaluating a file containing only backticks

From: Eli Zaretskii <[email-masked]>
Date: Sat, 15 Jul 2017 10:15:46 +0300

> Cc: [email-masked]
> From: Paul Eggert <[email-masked]>
> Date: Fri, 14 Jul 2017 22:12:08 -0700
> 
> Steve Kemp wrote:
> >      $ /tmp/emacs/bin/emacs -Q --batch --script ./t.el
> >      Re-entering top level after C stack overflow
> >      [emacs still running]
> > 
> >    Compare that with the normal example:
> > 
> >      $ echo "(defun foo() "Test")" > t.el
> >      $ /tmp/emacs/bin/emacs -Q --batch --script ./t.el
> >      $
> > 
> >    Perhaps not a huge problem, but it is a change I think?
> 
> After a stack overflow, Emacs drops what it's doing and goes to the top level, 
> regardless of its command-line arguments. Perhaps it would be better if Emacs 
> did something else for this particular case. It's low priority, though.

I think the idea is to let the user do whatever is necessary to end
the session as quickly as possible.  Granted, it is optimized for
interactive usage, since the goal of the stack-overflow protection is
to avoid losing unrelated edits due to some code that's gone awry, and
that makes little sense in non-interactive sessions.  So batch
invocations might indeed do something else, like exit.  I agree that
the priority is not too high, because again, stack overflow is most
harmful in interactive sessions.