let select_usefull_things ~select_annot ~select_slice_pragma kf_entry =
  let proj = ProjBoolMarks.empty in
  assert (!call_in_to_check = []);
    debug 1 "selecting function %s outputs and entry point@."
      (Kernel_function.get_name kf_entry);
  select_entry_point proj kf_entry;
  select_all_outputs proj kf_entry;
  if (select_annot  or select_slice_pragma) then
    select_annotations ~select_annot ~select_slice_pragma proj;
  finalize proj;
  proj