make PlaceholderConst not store the type of the const

This commit is contained in:
Ellen 2022-08-01 15:42:38 +01:00
parent 1f5d8d49eb
commit 825a7cc65c
8 changed files with 13 additions and 13 deletions

View file

@ -105,7 +105,7 @@ impl<'tcx> CanonicalVarInfo<'tcx> {
CanonicalVarKind::Region(_) => true,
CanonicalVarKind::PlaceholderRegion(..) => false,
CanonicalVarKind::Const(..) => true,
CanonicalVarKind::PlaceholderConst(_) => false,
CanonicalVarKind::PlaceholderConst(_, _) => false,
}
}
}
@ -133,7 +133,7 @@ pub enum CanonicalVarKind<'tcx> {
Const(ty::UniverseIndex, Ty<'tcx>),
/// A "placeholder" that represents "any const".
PlaceholderConst(ty::PlaceholderConst<'tcx>),
PlaceholderConst(ty::PlaceholderConst<'tcx>, Ty<'tcx>),
}
impl<'tcx> CanonicalVarKind<'tcx> {
@ -148,7 +148,7 @@ impl<'tcx> CanonicalVarKind<'tcx> {
CanonicalVarKind::Region(ui) => ui,
CanonicalVarKind::PlaceholderRegion(placeholder) => placeholder.universe,
CanonicalVarKind::Const(ui, _) => ui,
CanonicalVarKind::PlaceholderConst(placeholder) => placeholder.universe,
CanonicalVarKind::PlaceholderConst(placeholder, _) => placeholder.universe,
}
}
}

View file

@ -1200,7 +1200,7 @@ pub struct BoundConst<'tcx> {
pub ty: Ty<'tcx>,
}
pub type PlaceholderConst<'tcx> = Placeholder<BoundConst<'tcx>>;
pub type PlaceholderConst<'tcx> = Placeholder<BoundVar>;
/// A `DefId` which, in case it is a const argument, is potentially bundled with
/// the `DefId` of the generic parameter it instantiates.