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. However, I'm not quite sure how to fix this. Noah