let compute_with_initial_state ~call_kinstr kf with_formals =
match kf.fundec with
| Declaration _ -> compute_using_declaration kf with_formals
| Definition (f,_) ->
let with_locals =
List.fold_left
(fun acc local ->
Cvalue.Model.add_binding_not_initialized
acc
(Locations.loc_of_varinfo local))
with_formals
f.slocals
in
(* Remark: the pre-condition cannot talk about the locals. BUT
check_fct_preconditions split the state into a stateset, hence
it is simpler to apply it to the (unique) state with locals *)
let initial_states= Eval_logic.check_fct_preconditions kf with_locals in
compute_using_cfg ~call_kinstr kf initial_states