@@ -72,7 +72,7 @@ and admin_instr' =
7272 | Label of int * instr list * code
7373 | Frame of int * frame * code
7474 | Handler of int * catch list * code
75- | Handle of handle_table * code
75+ | Prompt of handle_table * code
7676 | Suspending of tag_inst * value stack * (int32 * ref_) option * ctxt
7777
7878and ctxt = code -> code
@@ -391,7 +391,7 @@ let rec step (c : config) : config =
391391 let hs = handle_table c xls in
392392 let args, vs' = i32_split n vs e.at in
393393 cont := None ;
394- vs', [Handle (hs, ctxt (args, [] )) @@ e.at]
394+ vs', [Prompt (hs, ctxt (args, [] )) @@ e.at]
395395
396396 | ResumeThrow (x , y , xls ), Ref (NullRef _ ) :: vs ->
397397 vs, [Trapping " null continuation reference" @@ e.at]
@@ -405,7 +405,7 @@ let rec step (c : config) : config =
405405 let hs = handle_table c xls in
406406 let args, vs' = i32_split (Lib.List32. length ts) vs e.at in
407407 cont := None ;
408- vs', [Handle (hs, ctxt ([] , [Throwing (tagt, args) @@ e.at])) @@ e.at]
408+ vs', [Prompt (hs, ctxt ([] , [Throwing (tagt, args) @@ e.at])) @@ e.at]
409409
410410 | Switch (x , y ), Ref (NullRef _ ) :: vs ->
411411 vs, [Trapping " null continuation reference" @@ e.at]
@@ -1285,34 +1285,34 @@ let rec step (c : config) : config =
12851285 with Crash (_ , msg ) -> Crash. error e.at msg)
12861286 )
12871287
1288- | Handle (hso , (vs' , [] )), vs ->
1288+ | Prompt (hso , (vs' , [] )), vs ->
12891289 vs' @ vs, []
12901290
1291- | Handle ((hs, _), (vs', {it = Suspending (tagt, vs1, None , ctxt); at} :: es')), vs
1291+ | Prompt ((hs, _), (vs', {it = Suspending (tagt, vs1, None , ctxt); at} :: es')), vs
12921292 when List. mem_assq tagt hs ->
12931293 let FuncT (_, ts) = func_type_of_tag_type c.frame.inst (Tag. type_of tagt) in
12941294 let ctxt' code = compose (ctxt code) (vs', es') in
12951295 [Ref (ContRef (ref (Some (Lib.List32. length ts, ctxt'))))] @ vs1 @ vs,
12961296 [Plain (Br (List. assq tagt hs)) @@ e.at]
12971297
1298- | Handle ((_, hs) as hso, (vs', {it = Suspending (tagt, vs1, Some (ar, ContRef ({contents = Some (_, ctxt)} as cont)), ctxt'); at} :: es')), vs
1298+ | Prompt ((_, hs) as hso, (vs', {it = Suspending (tagt, vs1, Some (ar, ContRef ({contents = Some (_, ctxt)} as cont)), ctxt'); at} :: es')), vs
12991299 when List. memq tagt hs ->
13001300 let ctxt'' code = compose (ctxt' code) (vs', es') in
13011301 let cont' = Ref (ContRef (ref (Some (ar, ctxt'')))) in
13021302 let args = cont' :: vs1 in
13031303 cont := None ;
1304- vs' @ vs, [Handle (hso, ctxt (args, [] )) @@ e.at]
1304+ vs' @ vs, [Prompt (hso, ctxt (args, [] )) @@ e.at]
13051305
1306- | Handle (hso , (vs' , {it = Suspending (tagt , vs1 , contref , ctxt ); at} :: es' )), vs ->
1307- let ctxt' code = [], [Handle (hso, compose (ctxt code) (vs', es')) @@ e.at] in
1306+ | Prompt (hso , (vs' , {it = Suspending (tagt , vs1 , contref , ctxt ); at} :: es' )), vs ->
1307+ let ctxt' code = [], [Prompt (hso, compose (ctxt code) (vs', es')) @@ e.at] in
13081308 vs, [Suspending (tagt, vs1, contref, ctxt') @@ at]
13091309
1310- | Handle (hso , (vs' , e' :: es' )), vs when is_jumping e' ->
1310+ | Prompt (hso , (vs' , e' :: es' )), vs when is_jumping e' ->
13111311 vs, [e']
13121312
1313- | Handle (hso , code' ), vs ->
1313+ | Prompt (hso , code' ), vs ->
13141314 let c' = step {c with code = code'} in
1315- vs, [Handle (hso, c'.code) @@ e.at]
1315+ vs, [Prompt (hso, c'.code) @@ e.at]
13161316
13171317 | Suspending (_ , _ , _ , _ ), _ -> assert false
13181318
0 commit comments