That makes sense. I hit this error in debugging a CPS->GLIL compiler (which I hope will become Guile's compiler, but that's another story). However, once the debugging is done, I suppose it won't make a difference. What do you think about enabling it only in the debug VM, or something like that? Then if there's some way for me to run my code in debug mode, I can get the better output without slowing down most things. Noah On Wed, Dec 5, 2012 at 9:10 AM, Ludovic Courtès wrote: > Hi Noah, > > Noah Lavine skribis: > > > diff --git a/libguile/vm-i-system.c b/libguile/vm-i-system.c > > index 7153ab5..dff2ab2 100644 > > --- a/libguile/vm-i-system.c > > +++ b/libguile/vm-i-system.c > > @@ -793,7 +793,9 @@ VM_DEFINE_INSTRUCTION (55, call, "call", 1, -1, 1) > > > > VM_HANDLE_INTERRUPTS; > > > > - if (SCM_UNLIKELY (!SCM_PROGRAM_P (program))) > > + if (SCM_UNLIKELY (program == NULL)) > > + goto vm_error_bad_instruction; > > + else if (SCM_UNLIKELY (!SCM_PROGRAM_P (program))) > > { > > if (SCM_STRUCTP (program) && SCM_STRUCT_APPLICABLE_P (program)) > > { > > I’d rather not apply it, because it adds overhead for every call for a > situation that cannot happen when using Guile’s compiler, IIUC. > > WDYT? > > Thanks, > Ludo’. >