make (try_)subst_and_normalize_erasing_regions take EarlyBinder
This commit is contained in:
parent
34bee196cb
commit
e5d10cdbc3
8 changed files with 14 additions and 15 deletions
|
@ -115,7 +115,7 @@ impl<'tcx> Instance<'tcx> {
|
|||
/// lifetimes erased, allowing a `ParamEnv` to be specified for use during normalization.
|
||||
pub fn ty(&self, tcx: TyCtxt<'tcx>, param_env: ty::ParamEnv<'tcx>) -> Ty<'tcx> {
|
||||
let ty = tcx.type_of(self.def.def_id());
|
||||
tcx.subst_and_normalize_erasing_regions(self.substs, param_env, ty.skip_binder())
|
||||
tcx.subst_and_normalize_erasing_regions(self.substs, param_env, ty)
|
||||
}
|
||||
|
||||
/// Finds a crate that contains a monomorphization of this instance that
|
||||
|
@ -600,7 +600,7 @@ impl<'tcx> Instance<'tcx> {
|
|||
T: TypeFoldable<TyCtxt<'tcx>> + Clone,
|
||||
{
|
||||
if let Some(substs) = self.substs_for_mir_body() {
|
||||
tcx.subst_and_normalize_erasing_regions(substs, param_env, v)
|
||||
tcx.subst_and_normalize_erasing_regions(substs, param_env, ty::EarlyBinder(v))
|
||||
} else {
|
||||
tcx.normalize_erasing_regions(param_env, v)
|
||||
}
|
||||
|
@ -617,7 +617,7 @@ impl<'tcx> Instance<'tcx> {
|
|||
T: TypeFoldable<TyCtxt<'tcx>> + Clone,
|
||||
{
|
||||
if let Some(substs) = self.substs_for_mir_body() {
|
||||
tcx.try_subst_and_normalize_erasing_regions(substs, param_env, v)
|
||||
tcx.try_subst_and_normalize_erasing_regions(substs, param_env, ty::EarlyBinder(v))
|
||||
} else {
|
||||
tcx.try_normalize_erasing_regions(param_env, v)
|
||||
}
|
||||
|
|
|
@ -139,7 +139,7 @@ impl<'tcx> TyCtxt<'tcx> {
|
|||
self,
|
||||
param_substs: SubstsRef<'tcx>,
|
||||
param_env: ty::ParamEnv<'tcx>,
|
||||
value: T,
|
||||
value: EarlyBinder<T>,
|
||||
) -> T
|
||||
where
|
||||
T: TypeFoldable<TyCtxt<'tcx>>,
|
||||
|
@ -151,7 +151,7 @@ impl<'tcx> TyCtxt<'tcx> {
|
|||
param_env={:?})",
|
||||
param_substs, value, param_env,
|
||||
);
|
||||
let substituted = EarlyBinder(value).subst(self, param_substs);
|
||||
let substituted = value.subst(self, param_substs);
|
||||
self.normalize_erasing_regions(param_env, substituted)
|
||||
}
|
||||
|
||||
|
@ -163,7 +163,7 @@ impl<'tcx> TyCtxt<'tcx> {
|
|||
self,
|
||||
param_substs: SubstsRef<'tcx>,
|
||||
param_env: ty::ParamEnv<'tcx>,
|
||||
value: T,
|
||||
value: EarlyBinder<T>,
|
||||
) -> Result<T, NormalizationError<'tcx>>
|
||||
where
|
||||
T: TypeFoldable<TyCtxt<'tcx>>,
|
||||
|
@ -175,7 +175,7 @@ impl<'tcx> TyCtxt<'tcx> {
|
|||
param_env={:?})",
|
||||
param_substs, value, param_env,
|
||||
);
|
||||
let substituted = EarlyBinder(value).subst(self, param_substs);
|
||||
let substituted = value.subst(self, param_substs);
|
||||
self.try_normalize_erasing_regions(param_env, substituted)
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue