Make ICE a bit more informative

This commit is contained in:
Oli Scherer 2023-07-13 10:35:34 +00:00
parent 6bb4ad6dfb
commit 9088ba9f3e

View File

@ -898,7 +898,10 @@ fn fold_region(&mut self, r: ty::Region<'tcx>) -> ty::Region<'tcx> {
if debruijn.as_usize() + 1 if debruijn.as_usize() + 1
> self.current_index.as_usize() + self.universe_indices.len() => > self.current_index.as_usize() + self.universe_indices.len() =>
{ {
bug!("Bound vars outside of `self.universe_indices`"); bug!(
"Bound vars {r:#?} outside of `self.universe_indices`: {:#?}",
self.universe_indices
);
} }
ty::ReLateBound(debruijn, br) if debruijn >= self.current_index => { ty::ReLateBound(debruijn, br) if debruijn >= self.current_index => {
let universe = self.universe_for(debruijn); let universe = self.universe_for(debruijn);
@ -916,7 +919,10 @@ fn fold_ty(&mut self, t: Ty<'tcx>) -> Ty<'tcx> {
if debruijn.as_usize() + 1 if debruijn.as_usize() + 1
> self.current_index.as_usize() + self.universe_indices.len() => > self.current_index.as_usize() + self.universe_indices.len() =>
{ {
bug!("Bound vars outside of `self.universe_indices`"); bug!(
"Bound vars {t:#?} outside of `self.universe_indices`: {:#?}",
self.universe_indices
);
} }
ty::Bound(debruijn, bound_ty) if debruijn >= self.current_index => { ty::Bound(debruijn, bound_ty) if debruijn >= self.current_index => {
let universe = self.universe_for(debruijn); let universe = self.universe_for(debruijn);
@ -935,7 +941,10 @@ fn fold_const(&mut self, ct: ty::Const<'tcx>) -> ty::Const<'tcx> {
if debruijn.as_usize() + 1 if debruijn.as_usize() + 1
> self.current_index.as_usize() + self.universe_indices.len() => > self.current_index.as_usize() + self.universe_indices.len() =>
{ {
bug!("Bound vars outside of `self.universe_indices`"); bug!(
"Bound vars {ct:#?} outside of `self.universe_indices`: {:#?}",
self.universe_indices
);
} }
ty::ConstKind::Bound(debruijn, bound_const) if debruijn >= self.current_index => { ty::ConstKind::Bound(debruijn, bound_const) if debruijn >= self.current_index => {
let universe = self.universe_for(debruijn); let universe = self.universe_for(debruijn);