let apply_choose_call proj ff call =
  SlicingParameters.debug ~level:2 "[Fct_Slice.apply_choose_call] for call-%d" call.sid;
  let call_id = ff, call in
  let call_info = CallInfo.get_info_call (ff, call) in
    if ((CallInfo.get_f_called call_info) = Nonethen
      begin
        if CallInfo.something_visible call_info then
          let fbase_to_call = M.get_fi_call proj call in
          let f_to_call, actions =
            choose_f_to_call fbase_to_call call_info in
          let actions =
            add_change_call_action ff call call_info f_to_call actions in
          let actions = match f_to_call with
            | T.CallSrc _ -> actions
            | T.CallSlice ff ->
                check_called_outputs call_id ff actions
          in actions
        else
          begin
            SlicingParameters.debug ~level:2 "  -> invisible call : nothing to do";
            []
          end
      end
    else
      begin
        SlicingParameters.debug ~level:2 "  -> already call something : nothing to do";
        []
      end