rustc_trait_selection::solve::select

Function candidate_should_be_dropped_in_favor_of

Source
fn candidate_should_be_dropped_in_favor_of<'tcx>(
    victim: &InspectCandidate<'_, 'tcx>,
    other: &InspectCandidate<'_, 'tcx>,
) -> bool
Expand description

This is a lot more limited than the old solver’s equivalent method. This may lead to more Ok(None) results when selecting traits in polymorphic contexts, but we should never rely on the lack of ambiguity, and should always just gracefully fail here. We shouldn’t rely on this incompleteness.