method compute_kf kf =
if !Db.Value.use_spec_instead_of_definition kf then
(* If only a declaration is available, or we are instructed to use
the spec, do so. If a current stmt is available (most of the times),
do not cache the results. Maybe [compute_funspec] will be able
to deliver a more precise result on this given statement *)
match self#current_stmt with
| None -> self#compute_kf_with_spec_generic kf
| Some _stmt -> self#compute_funspec kf
else
try Memo.find kf
with Not_found -> self#compute_kf_with_def kf