emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Emacs-diffs] trunk r117741: Handle C stack overflow caused by too n


From: Stefan Monnier
Subject: Re: [Emacs-diffs] trunk r117741: Handle C stack overflow caused by too nested Lisp evaluation.
Date: Wed, 27 Aug 2014 01:04:59 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4.50 (gnu/linux)

>>> +  DEFVAR_LISP ("top-level-message", Vtop_level_message,
>>> +          doc: /* Message displayed by `normal-top-level'.  */);
>> Why does this need to be exported to Elisp?
> This is just to allow 'normal-top-level' to display an appropriate message.

Then please name it "internal--top-level-message" or somesuch.

>>> +  /* Hard GC error may lead to stack overflow caused by
>>> +     too nested calls to mark_object.  No way to survive.  */
>> I don't see why there's no way to survive.  Isn't it safe to interrupt
>> GC within the mark phase and re-run it?
> Maybe (at least, it requires some more work). But if we get SIGSEGV in GC,
> most likely we have 1) too deep data structures or 2) fatal error,
> probably invalid pointer. Since I don't see a way to recover in either
> case, I don't see how restarting GC can help.

Right, we should just abort.


        Stefan



reply via email to

[Prev in Thread] Current Thread [Next in Thread]