1
Fork 0

Properly generate multiple candidates for trait upcasting coercion.

This commit is contained in:
Charles Lew 2021-08-18 02:41:29 +08:00
parent adf1688447
commit 1e605023ec
8 changed files with 155 additions and 159 deletions

View file

@ -135,6 +135,11 @@ pub enum SelectionCandidate<'tcx> {
/// `rustc_infer::traits::util::supertraits`.
ObjectCandidate(usize),
/// Perform trait upcasting coercion of `dyn Trait` to a supertrait of `Trait`.
/// The index is the position in the iterator returned by
/// `rustc_infer::traits::util::supertraits`.
TraitUpcastingUnsizeCandidate(usize),
BuiltinObjectCandidate,
BuiltinUnsizeCandidate,