summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libguile/vm-engine.h2
-rw-r--r--libguile/vm.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/libguile/vm-engine.h b/libguile/vm-engine.h
index 240969c37..b819b9028 100644
--- a/libguile/vm-engine.h
+++ b/libguile/vm-engine.h
@@ -252,7 +252,7 @@
#endif
#define CHECK_OVERFLOW() \
- if (sp > stack_limit) \
+ if (sp >= stack_limit) \
goto vm_error_stack_overflow
#define CHECK_UNDERFLOW() \
diff --git a/libguile/vm.c b/libguile/vm.c
index df1ad8850..4aa27104a 100644
--- a/libguile/vm.c
+++ b/libguile/vm.c
@@ -298,7 +298,7 @@ make_vm (void)
#ifdef VM_ENABLE_STACK_NULLING
memset (vp->stack_base, 0, vp->stack_size * sizeof (SCM));
#endif
- vp->stack_limit = vp->stack_base + vp->stack_size - 3;
+ vp->stack_limit = vp->stack_base + vp->stack_size;
vp->ip = NULL;
vp->sp = vp->stack_base - 1;
vp->fp = NULL;