diff options
| author | bors <bors@rust-lang.org> | 2024-03-07 15:02:36 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2024-03-07 15:02:36 +0000 |
| commit | 1c580bcb703d2ba288c380d2e283451a34d4eb1c (patch) | |
| tree | 3a3b6d9775fdafc5548004739b923c2b66f205a9 /compiler/rustc_trait_selection/src/traits/select/mod.rs | |
| parent | 52f8aec14c616387c5f793687f2d9026de6c78ca (diff) | |
| parent | ce9a6adba90a80b1642d55931006a52bde4e0c3f (diff) | |
| download | rust-1c580bcb703d2ba288c380d2e283451a34d4eb1c.tar.gz rust-1c580bcb703d2ba288c380d2e283451a34d4eb1c.zip | |
Auto merge of #122139 - GuillaumeGomez:rollup-37vtwsc, r=GuillaumeGomez
Rollup of 10 pull requests Successful merges: - #121863 (silence mismatched types errors for implied projections) - #122043 (Apply `EarlyBinder` only to `TraitRef` in `ImplTraitHeader`) - #122066 (Add proper cfgs for struct HirIdValidator used only with debug-assert) - #122104 (Rust is a proper name: rust → Rust) - #122110 (Make `x t miri` respect `MIRI_TEMP`) - #122114 (Make not finding core a fatal error) - #122115 (Cancel parsing ever made during recovery) - #122123 (Don't require specifying unrelated assoc types when trait alias is in `dyn` type) - #122126 (Fix `tidy --bless` on ̶X̶e̶n̶i̶x̶ Windows) - #122129 (Set `RustcDocs` to only run on host) r? `@ghost` `@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_trait_selection/src/traits/select/mod.rs')
| -rw-r--r-- | compiler/rustc_trait_selection/src/traits/select/mod.rs | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/compiler/rustc_trait_selection/src/traits/select/mod.rs b/compiler/rustc_trait_selection/src/traits/select/mod.rs index 7dbea0cdb90..a6bd1ba9c3f 100644 --- a/compiler/rustc_trait_selection/src/traits/select/mod.rs +++ b/compiler/rustc_trait_selection/src/traits/select/mod.rs @@ -42,7 +42,7 @@ use rustc_middle::ty::_match::MatchAgainstFreshVars; use rustc_middle::ty::abstract_const::NotConstEvaluatable; use rustc_middle::ty::relate::TypeRelation; use rustc_middle::ty::GenericArgsRef; -use rustc_middle::ty::{self, EarlyBinder, PolyProjectionPredicate, ToPolyTraitRef, ToPredicate}; +use rustc_middle::ty::{self, PolyProjectionPredicate, ToPolyTraitRef, ToPredicate}; use rustc_middle::ty::{Ty, TyCtxt, TypeFoldable, TypeVisitableExt}; use rustc_span::symbol::sym; use rustc_span::Symbol; @@ -2441,7 +2441,7 @@ impl<'tcx> SelectionContext<'_, 'tcx> { fn match_impl( &mut self, impl_def_id: DefId, - impl_trait_header: EarlyBinder<ty::ImplTraitHeader<'tcx>>, + impl_trait_header: ty::ImplTraitHeader<'tcx>, obligation: &PolyTraitObligation<'tcx>, ) -> Result<Normalized<'tcx, GenericArgsRef<'tcx>>, ()> { let placeholder_obligation = @@ -2450,8 +2450,8 @@ impl<'tcx> SelectionContext<'_, 'tcx> { let impl_args = self.infcx.fresh_args_for_item(obligation.cause.span, impl_def_id); - let impl_trait_header = impl_trait_header.instantiate(self.tcx(), impl_args); - if impl_trait_header.references_error() { + let trait_ref = impl_trait_header.trait_ref.instantiate(self.tcx(), impl_args); + if trait_ref.references_error() { return Err(()); } @@ -2464,7 +2464,7 @@ impl<'tcx> SelectionContext<'_, 'tcx> { obligation.param_env, obligation.cause.clone(), obligation.recursion_depth + 1, - impl_trait_header.trait_ref, + trait_ref, ) }); |
