let data_in_visible ff data_in = match data_in with
    | None -> true
    | Some data_in ->
        (* it is too difficult to know if the callers of this slice
        * compute [data_in] or not, but let's see if, by chance,
        * some data have been selected manually... *)

        let m = Fct_slice.get_input_loc_under_mark ff data_in in
          if !Db.Slicing.Mark.is_bottom m then
            begin
              SlicingParameters.debug ~level:2 "[SlicingTransform.Visibility.data_in_visible] data %a invisible"
                Locations.Zone.pretty data_in;
              false
            end
          else true