[inferbo] Fix path of allocsite in declaration

Reviewed By: mbouaziz

Differential Revision: D13057595

fbshipit-source-id: 04bda78c0
master
Sungkeun Cho 6 years ago committed by Facebook Github Bot
parent 42b16d45fa
commit 50ebea5faa

@ -157,9 +157,10 @@ module Exec = struct
Itv.make_sym ~unsigned:true pname symbol_table (Itv.SymbolPath.length path) new_sym_num
)
in
let deref_path = Itv.SymbolPath.index path in
let allocsite =
let alloc_num = Itv.Counter.next new_alloc_num in
Allocsite.make pname ~node_hash ~inst_num ~dimension:alloc_num ~path:(Some path)
Allocsite.make pname ~node_hash ~inst_num ~dimension:alloc_num ~path:(Some deref_path)
in
let mem =
let arr =
@ -172,13 +173,12 @@ module Exec = struct
|> Dom.Mem.init_array_relation allocsite ~offset ~size ~size_exp_opt:None
in
let deref_loc = Loc.of_allocsite allocsite in
let path = Itv.SymbolPath.index path in
let represents_multiple_values =
match array_kind with CSymArray_Array -> true | CSymArray_Pointer -> false
(* unsound but avoids many FPs for non-array pointers *)
in
decl_sym_val pname path tenv ~node_hash location ~represents_multiple_values ~depth deref_loc
typ mem
decl_sym_val pname deref_path tenv ~node_hash location ~represents_multiple_values ~depth
deref_loc typ mem
let decl_sym_java_ptr :

Loading…
Cancel
Save