let addr_of_ref env lv =
debug "[addr_of_ref] of %a" !Ast_printer.d_logic_var lv;
try
let x = Logic_var.Map.find lv env.laddr in
debug "[addr_of_ref] of %a already recorded :%a"
!Ast_printer.d_logic_var lv F.pp_var x ; x
with
Not_found ->
debug "[addr_of_ref] %a not yet in"
!Ast_printer.d_logic_var lv;
let x = fresh_addr lv in
env.laddr <-Logic_var.Map.add lv x env.laddr ;
debug "[addr_of_ref] of %a recorded with %a"
!Ast_printer.d_logic_var lv F.pp_var x ; x