summaryrefslogtreecommitdiff
path: root/src/InterpreterUtils.ml
diff options
context:
space:
mode:
authorSon Ho2022-01-14 12:17:59 +0100
committerSon Ho2022-01-14 12:17:59 +0100
commitdfafe05012a46d58168f90fc34baa1bdd1f4b52e (patch)
tree71930f0ee36aa6957b3915496873c4728a89c124 /src/InterpreterUtils.ml
parent8bb54af58aad7c4a09afcc13d9e7125d722d2426 (diff)
Implement give_back_symbolic_value
Diffstat (limited to '')
-rw-r--r--src/InterpreterUtils.ml8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/InterpreterUtils.ml b/src/InterpreterUtils.ml
index e431aa30..2886f642 100644
--- a/src/InterpreterUtils.ml
+++ b/src/InterpreterUtils.ml
@@ -58,6 +58,14 @@ let mk_fresh_symbolic_value (ty : T.rty) : V.symbolic_value =
let svalue = { V.sv_id; V.sv_ty = ty } in
svalue
+(** Create a fresh symbolic value *)
+let mk_fresh_symbolic_value (rty : T.rty) : V.symbolic_value =
+ let ty = Subst.erase_regions ty in
+ (* Generate the fresh a symbolic value *)
+ let value = mk_fresh_symbolic_value rty in
+ let value = V.Symbolic svalue in
+ { V.value; V.ty }
+
(** Create a typed value from a symbolic value. *)
let mk_typed_value_from_symbolic_value (svalue : V.symbolic_value) :
V.typed_value =