[Top][All Lists]

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

Re: An Error in Early Boot

From: Noah Lavine
Subject: Re: An Error in Early Boot
Date: Thu, 14 Oct 2010 22:31:16 -0400

Yeah, it looks to me like that code would resolve this issue.

What I don't understand, however, is why the pre-init-catch-tag, which
that patch added, didn't resolve the issue. Is this a difference
between catch tags and prompts?


On Thu, Oct 14, 2010 at 7:36 PM, Mike Gran <address@hidden> wrote:
>> From: Noah Lavine <address@hidden>
>> Hello,
>> I got into a situation just now when Guile was generating an error
>> very early in the boot process (it was loading some objcode from
>> scm_init_eval_in_scheme(), I think, although I haven't looked enough
>> to be sure). The fun part is, instead of printing an error message, it
>> got into an infinite recursion that eventually ended in a memory
>> fault.
>> The reason is that scm_error_scm in error.c calls scm_ithrow (error.c:315),
>> which finds its way through scm_throw and some VM calls to
>> pre_init_throw (throw.c:495)
>> which in turn gets it to scm_at_abort, which goes to scm_c_abort,
>> which finally calls scm_misc_error (control.c:210) because it can't
>> find a prompt on the dynamic stack because the error is too early,
>> which leads back to scm_error_scm again.
> Hi Noah,
> FWIW, I also noticed the infinite recusion problem in bug #30162.
> At the time, I thought that the following revision might be the one
> that caused the problem.
> -Mike

reply via email to

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