mirror of
https://github.com/ashinn/chibi-scheme.git
synced 2025-05-20 14:19:18 +02:00
fixing bug in return IP for exceptions
This commit is contained in:
parent
b36c0d2e3a
commit
90280258d0
1 changed files with 1 additions and 2 deletions
3
eval.c
3
eval.c
|
@ -1020,7 +1020,7 @@ sexp vm (sexp self, sexp context, sexp* stack, sexp_sint_t top) {
|
||||||
case OP_ERROR:
|
case OP_ERROR:
|
||||||
call_error_handler:
|
call_error_handler:
|
||||||
stack[top] = (sexp) 1;
|
stack[top] = (sexp) 1;
|
||||||
stack[top+1] = sexp_make_integer(ip+4);
|
stack[top+1] = sexp_make_integer(ip);
|
||||||
stack[top+2] = self;
|
stack[top+2] = self;
|
||||||
stack[top+3] = sexp_make_integer(fp);
|
stack[top+3] = sexp_make_integer(fp);
|
||||||
top += 4;
|
top += 4;
|
||||||
|
@ -1029,7 +1029,6 @@ sexp vm (sexp self, sexp context, sexp* stack, sexp_sint_t top) {
|
||||||
ip = sexp_bytecode_data(bc);
|
ip = sexp_bytecode_data(bc);
|
||||||
cp = sexp_procedure_vars(self);
|
cp = sexp_procedure_vars(self);
|
||||||
fp = top-4;
|
fp = top-4;
|
||||||
/* sexp_print_stack(stack, top, fp, tmp1); */
|
|
||||||
break;
|
break;
|
||||||
case OP_RESUMECC:
|
case OP_RESUMECC:
|
||||||
tmp1 = stack[fp-1];
|
tmp1 = stack[fp-1];
|
||||||
|
|
Loading…
Add table
Reference in a new issue