Move TyCtxt::mk_x
to Ty::new_x
where applicable
This commit is contained in:
parent
5dac6b320b
commit
12138b8e5e
164 changed files with 1386 additions and 1185 deletions
|
@ -64,7 +64,7 @@ fn fn_sig_for_fn_abi<'tcx>(
|
|||
// Modify `fn(self, ...)` to `fn(self: *mut Self, ...)`.
|
||||
sig = sig.map_bound(|mut sig| {
|
||||
let mut inputs_and_output = sig.inputs_and_output.to_vec();
|
||||
inputs_and_output[0] = tcx.mk_mut_ptr(inputs_and_output[0]);
|
||||
inputs_and_output[0] = Ty::new_mut_ptr(tcx, inputs_and_output[0]);
|
||||
sig.inputs_and_output = tcx.mk_type_list(&inputs_and_output);
|
||||
sig
|
||||
});
|
||||
|
@ -106,12 +106,13 @@ fn fn_sig_for_fn_abi<'tcx>(
|
|||
var: ty::BoundVar::from_usize(bound_vars.len() - 1),
|
||||
kind: ty::BoundRegionKind::BrEnv,
|
||||
};
|
||||
let env_ty = tcx.mk_mut_ref(ty::Region::new_late_bound(tcx, ty::INNERMOST, br), ty);
|
||||
let env_ty =
|
||||
Ty::new_mut_ref(tcx, ty::Region::new_late_bound(tcx, ty::INNERMOST, br), ty);
|
||||
|
||||
let pin_did = tcx.require_lang_item(LangItem::Pin, None);
|
||||
let pin_adt_ref = tcx.adt_def(pin_did);
|
||||
let pin_substs = tcx.mk_substs(&[env_ty.into()]);
|
||||
let env_ty = tcx.mk_adt(pin_adt_ref, pin_substs);
|
||||
let env_ty = Ty::new_adt(tcx, pin_adt_ref, pin_substs);
|
||||
|
||||
let sig = sig.skip_binder();
|
||||
// The `FnSig` and the `ret_ty` here is for a generators main
|
||||
|
@ -123,7 +124,7 @@ fn fn_sig_for_fn_abi<'tcx>(
|
|||
let poll_did = tcx.require_lang_item(LangItem::Poll, None);
|
||||
let poll_adt_ref = tcx.adt_def(poll_did);
|
||||
let poll_substs = tcx.mk_substs(&[sig.return_ty.into()]);
|
||||
let ret_ty = tcx.mk_adt(poll_adt_ref, poll_substs);
|
||||
let ret_ty = Ty::new_adt(tcx, poll_adt_ref, poll_substs);
|
||||
|
||||
// We have to replace the `ResumeTy` that is used for type and borrow checking
|
||||
// with `&mut Context<'_>` which is used in codegen.
|
||||
|
@ -137,7 +138,7 @@ fn fn_sig_for_fn_abi<'tcx>(
|
|||
panic!("expected `ResumeTy`, found `{:?}`", sig.resume_ty);
|
||||
};
|
||||
}
|
||||
let context_mut_ref = tcx.mk_task_context();
|
||||
let context_mut_ref = Ty::new_task_context(tcx);
|
||||
|
||||
(context_mut_ref, ret_ty)
|
||||
} else {
|
||||
|
@ -145,7 +146,7 @@ fn fn_sig_for_fn_abi<'tcx>(
|
|||
let state_did = tcx.require_lang_item(LangItem::GeneratorState, None);
|
||||
let state_adt_ref = tcx.adt_def(state_did);
|
||||
let state_substs = tcx.mk_substs(&[sig.yield_ty.into(), sig.return_ty.into()]);
|
||||
let ret_ty = tcx.mk_adt(state_adt_ref, state_substs);
|
||||
let ret_ty = Ty::new_adt(tcx, state_adt_ref, state_substs);
|
||||
|
||||
(sig.resume_ty, ret_ty)
|
||||
};
|
||||
|
@ -566,7 +567,7 @@ fn make_thin_self_ptr<'tcx>(
|
|||
let fat_pointer_ty = if layout.is_unsized() {
|
||||
// unsized `self` is passed as a pointer to `self`
|
||||
// FIXME (mikeyhew) change this to use &own if it is ever added to the language
|
||||
tcx.mk_mut_ptr(layout.ty)
|
||||
Ty::new_mut_ptr(tcx, layout.ty)
|
||||
} else {
|
||||
match layout.abi {
|
||||
Abi::ScalarPair(..) | Abi::Scalar(..) => (),
|
||||
|
@ -600,7 +601,7 @@ fn make_thin_self_ptr<'tcx>(
|
|||
// we now have a type like `*mut RcBox<dyn Trait>`
|
||||
// change its layout to that of `*mut ()`, a thin pointer, but keep the same type
|
||||
// this is understood as a special case elsewhere in the compiler
|
||||
let unit_ptr_ty = tcx.mk_mut_ptr(tcx.mk_unit());
|
||||
let unit_ptr_ty = Ty::new_mut_ptr(tcx, Ty::new_unit(tcx));
|
||||
|
||||
TyAndLayout {
|
||||
ty: fat_pointer_ty,
|
||||
|
|
|
@ -5,7 +5,7 @@ use rustc_hir::def_id::{DefId, DefIdMap, LocalDefId};
|
|||
use rustc_hir::definitions::DefPathData;
|
||||
use rustc_hir::intravisit::{self, Visitor};
|
||||
use rustc_middle::query::Providers;
|
||||
use rustc_middle::ty::{self, ImplTraitInTraitData, InternalSubsts, TyCtxt};
|
||||
use rustc_middle::ty::{self, ImplTraitInTraitData, InternalSubsts, Ty, TyCtxt};
|
||||
use rustc_span::symbol::kw;
|
||||
|
||||
pub fn provide(providers: &mut Providers) {
|
||||
|
@ -301,7 +301,8 @@ fn associated_type_for_impl_trait_in_trait(
|
|||
trait_assoc_ty.defaultness(tcx.defaultness(fn_def_id));
|
||||
|
||||
// Copy type_of of the opaque.
|
||||
trait_assoc_ty.type_of(ty::EarlyBinder::bind(tcx.mk_opaque(
|
||||
trait_assoc_ty.type_of(ty::EarlyBinder::bind(Ty::new_opaque(
|
||||
tcx,
|
||||
opaque_ty_def_id.to_def_id(),
|
||||
InternalSubsts::identity_for_item(tcx, opaque_ty_def_id),
|
||||
)));
|
||||
|
|
|
@ -159,7 +159,7 @@ fn layout_of_uncached<'tcx>(
|
|||
// fall back to structurally deducing metadata.
|
||||
&& !pointee.references_error()
|
||||
{
|
||||
let pointee_metadata = tcx.mk_projection(metadata_def_id, [pointee]);
|
||||
let pointee_metadata = Ty::new_projection(tcx,metadata_def_id, [pointee]);
|
||||
let metadata_ty = match tcx.try_normalize_erasing_regions(
|
||||
param_env,
|
||||
pointee_metadata,
|
||||
|
@ -672,7 +672,7 @@ fn generator_layout<'tcx>(
|
|||
let promoted_layouts = ineligible_locals
|
||||
.iter()
|
||||
.map(|local| subst_field(info.field_tys[local].ty))
|
||||
.map(|ty| tcx.mk_maybe_uninit(ty))
|
||||
.map(|ty| Ty::new_maybe_uninit(tcx, ty))
|
||||
.map(|ty| Ok(cx.layout_of(ty)?.layout));
|
||||
let prefix_layouts = substs
|
||||
.as_generator()
|
||||
|
|
|
@ -95,7 +95,7 @@ fn defaultness(tcx: TyCtxt<'_>, def_id: LocalDefId) -> hir::Defaultness {
|
|||
fn adt_sized_constraint(tcx: TyCtxt<'_>, def_id: DefId) -> &[Ty<'_>] {
|
||||
if let Some(def_id) = def_id.as_local() {
|
||||
if matches!(tcx.representability(def_id), ty::Representability::Infinite) {
|
||||
return tcx.mk_type_list(&[tcx.ty_error_misc()]);
|
||||
return tcx.mk_type_list(&[Ty::new_misc_error(tcx)]);
|
||||
}
|
||||
}
|
||||
let def = tcx.adt_def(def_id);
|
||||
|
@ -285,7 +285,7 @@ impl<'tcx> TypeVisitor<TyCtxt<'tcx>> for ImplTraitInTraitFinder<'_, 'tcx> {
|
|||
let default_ty = if self.tcx.lower_impl_trait_in_trait_to_assoc_ty() {
|
||||
self.tcx.type_of(shifted_alias_ty.def_id).subst(self.tcx, shifted_alias_ty.substs)
|
||||
} else {
|
||||
self.tcx.mk_alias(ty::Opaque, shifted_alias_ty)
|
||||
Ty::new_alias(self.tcx,ty::Opaque, shifted_alias_ty)
|
||||
};
|
||||
|
||||
self.predicates.push(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue