summaryrefslogtreecommitdiff
path: root/compiler
diff options
context:
space:
mode:
Diffstat (limited to 'compiler')
-rw-r--r--compiler/SymbolicToPure.ml4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/SymbolicToPure.ml b/compiler/SymbolicToPure.ml
index 8e06db7c..08f9e950 100644
--- a/compiler/SymbolicToPure.ml
+++ b/compiler/SymbolicToPure.ml
@@ -2605,10 +2605,11 @@ and translate_forward_end (ectx : C.eval_ctx)
assert (not !Config.return_back_funs);
let translate_one_end ctx (bid : RegionGroupId.id option) =
+ let ctx = { ctx with bid } in
(* Update the current state with the additional state received by the backward
function, if needs be, and lookup the proper expression *)
let ctx, e, finish =
- match ctx.bid with
+ match bid with
| None ->
(* We are translating the forward function - nothing to do *)
(ctx, fwd_e, fun e -> e)
@@ -2628,7 +2629,6 @@ and translate_forward_end (ectx : C.eval_ctx)
to introduce fresh variables for the additional inputs,
because they are locally introduced in a lambda *)
let back_sg = RegionGroupId.Map.find bid ctx.sg.back_sg in
- let ctx = { ctx with bid = Some bid } in
let ctx, backward_inputs_no_state =
fresh_vars back_sg.inputs_no_state ctx
in