summaryrefslogtreecommitdiff
path: root/byterun/interp.c
diff options
context:
space:
mode:
authorJacques Garrigue <garrigue at math.nagoya-u.ac.jp>2002-04-18 07:00:34 +0000
committerJacques Garrigue <garrigue at math.nagoya-u.ac.jp>2002-04-18 07:00:34 +0000
commit3447e059f033e7d59b4262fe869115aae20bcb85 (patch)
treeec3442ebc0940aefd4d6ab0e67dd88c08d5f5496 /byterun/interp.c
parent059d9fc181595b6cf7d2d1a6472eb97fce1fe86a (diff)
downloadocaml-poly_meth2.tar.gz
merging poly_meth2poly_meth2
git-svn-id: http://caml.inria.fr/svn/ocaml/branches/poly_meth2@4692 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'byterun/interp.c')
-rw-r--r--byterun/interp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/byterun/interp.c b/byterun/interp.c
index 599218e487..aed6c053f5 100644
--- a/byterun/interp.c
+++ b/byterun/interp.c
@@ -790,13 +790,13 @@ value interprete(code_t prog, asize_t prog_size)
raise_exception:
if (trapsp >= trap_barrier) debugger(TRAP_BARRIER);
if (backtrace_active) stash_backtrace(accu, pc, sp);
- sp = trapsp;
- if ((char *) sp >= (char *) stack_high - initial_sp_offset) {
+ if ((char *) trapsp >= (char *) stack_high - initial_sp_offset) {
external_raise = initial_external_raise;
- extern_sp = sp;
+ extern_sp = (value *) ((char *) stack_high - initial_sp_offset);
callback_depth--;
return Make_exception_result(accu);
}
+ sp = trapsp;
pc = Trap_pc(sp);
trapsp = Trap_link(sp);
env = sp[2];