Function rustc_trait_selection::solve::eval_ctxt::select::rematch_unsize
source · fn rematch_unsize<'tcx>(
infcx: &InferCtxt<'tcx>,
goal: Goal<'tcx, TraitPredicate<'tcx>>,
nested: Vec<PredicateObligation<'tcx>>,
source: BuiltinImplSource,
certainty: Certainty
) -> SelectionResult<'tcx, Selection<'tcx>>
Expand description
The Unsize
trait is particularly important to coercion, so we try rematch it.
NOTE: This must stay in sync with consider_builtin_unsize_candidate
in trait
goal assembly in the solver, both for soundness and in order to avoid ICEs.