Hello,

This is an interesting bug, because the only way to hit it (as far as I can tell) is to mess up when writing a compiler. However, I did mess up, and I discover that I can generate a `call' instruction in the trunk VM where the procedure to call will be 0x0. Then the VM will try to check whether the procedure is really a procedure, and Guile will segfault at line 796 of v-i-system.c.

I think the correct behavior would be to throw a `vm-bad-instruction' error instead. The fix should be pretty simple - just check if program is 0x0 and jump to vm-bad-instruction in that case.

Noah