summaryrefslogtreecommitdiff
path: root/src/InterpreterBorrows.ml
diff options
context:
space:
mode:
authorSon Ho2022-01-15 21:31:57 +0100
committerSon Ho2022-01-15 21:31:57 +0100
commit9564ad271a9d69ca58333ec33c778f3255ca1632 (patch)
treef93460bc00a86750333b3aa50722ac3d31716da4 /src/InterpreterBorrows.ml
parent231c65c04c511db3c8f7f68cd5d37cdeeedfe809 (diff)
Add sv_kind ("symbolic value kind") to track the origin of the symbolic
values
Diffstat (limited to 'src/InterpreterBorrows.ml')
-rw-r--r--src/InterpreterBorrows.ml8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/InterpreterBorrows.ml b/src/InterpreterBorrows.ml
index faa63c0a..9d332543 100644
--- a/src/InterpreterBorrows.ml
+++ b/src/InterpreterBorrows.ml
@@ -746,8 +746,8 @@ let give_back (config : C.config) (l : V.BorrowId.id) (bc : g_borrow_content)
be expanded (because expanding this symbolic value would require expanding
a reference whose region has already ended).
*)
-let convert_avalue_to_value (av : V.typed_avalue) : V.typed_value =
- mk_fresh_symbolic_typed_value av.V.ty
+let convert_avalue_to_given_back_value (av : V.typed_avalue) : V.typed_value =
+ mk_fresh_symbolic_typed_value V.FunCallGivenBack av.V.ty
(** End a borrow identified by its borrow id in a context
@@ -1129,7 +1129,7 @@ and end_abstraction_borrows (config : C.config) (chain : borrow_or_abs_ids)
match bc with
| V.AMutBorrow (bid, av) ->
(* First, convert the avalue to a (fresh symbolic) value *)
- let v = convert_avalue_to_value av in
+ let v = convert_avalue_to_given_back_value av in
give_back_value config bid v ctx
| V.ASharedBorrow bid -> give_back_shared config bid ctx
| V.AProjSharedBorrow _ ->
@@ -1148,7 +1148,7 @@ and end_abstraction_borrows (config : C.config) (chain : borrow_or_abs_ids)
V.AEndedProjBorrows ctx
in
(* Give back a fresh symbolic value *)
- let nsv = mk_fresh_symbolic_value proj_ty in
+ let nsv = mk_fresh_symbolic_value V.FunCallGivenBack proj_ty in
let ctx =
give_back_symbolic_value config abs.regions proj_ty sv nsv ctx
in