fn collect_used_deps(
    used: &mut BTreeSet<PackageId>,
    resolve: &Resolve,
    pkg_id: PackageId,
    has_dev_units: HasDevUnits,
    requested_kinds: &[CompileKind],
    target_data: &RustcTargetData<'_>,
    force_all_targets: ForceAllTargets
) -> CargoResult<()>