summaryrefslogtreecommitdiffstats
path: root/compiler/rustc_borrowck/src/diagnostics/bound_region_errors.rs
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:31 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-30 03:57:31 +0000
commitdc0db358abe19481e475e10c32149b53370f1a1c (patch)
treeab8ce99c4b255ce46f99ef402c27916055b899ee /compiler/rustc_borrowck/src/diagnostics/bound_region_errors.rs
parentReleasing progress-linux version 1.71.1+dfsg1-2~progress7.99u1. (diff)
downloadrustc-dc0db358abe19481e475e10c32149b53370f1a1c.tar.xz
rustc-dc0db358abe19481e475e10c32149b53370f1a1c.zip
Merging upstream version 1.72.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'compiler/rustc_borrowck/src/diagnostics/bound_region_errors.rs')
-rw-r--r--compiler/rustc_borrowck/src/diagnostics/bound_region_errors.rs41
1 files changed, 21 insertions, 20 deletions
diff --git a/compiler/rustc_borrowck/src/diagnostics/bound_region_errors.rs b/compiler/rustc_borrowck/src/diagnostics/bound_region_errors.rs
index f41795d60..cfcf31fce 100644
--- a/compiler/rustc_borrowck/src/diagnostics/bound_region_errors.rs
+++ b/compiler/rustc_borrowck/src/diagnostics/bound_region_errors.rs
@@ -180,24 +180,25 @@ trait TypeOpInfo<'tcx> {
return;
};
- let placeholder_region = tcx.mk_re_placeholder(ty::Placeholder {
- universe: adjusted_universe.into(),
- bound: placeholder.bound,
- });
-
- let error_region =
- if let RegionElement::PlaceholderRegion(error_placeholder) = error_element {
- let adjusted_universe =
- error_placeholder.universe.as_u32().checked_sub(base_universe.as_u32());
- adjusted_universe.map(|adjusted| {
- tcx.mk_re_placeholder(ty::Placeholder {
- universe: adjusted.into(),
- bound: error_placeholder.bound,
- })
- })
- } else {
- None
- };
+ let placeholder_region = ty::Region::new_placeholder(
+ tcx,
+ ty::Placeholder { universe: adjusted_universe.into(), bound: placeholder.bound },
+ );
+
+ let error_region = if let RegionElement::PlaceholderRegion(error_placeholder) =
+ error_element
+ {
+ let adjusted_universe =
+ error_placeholder.universe.as_u32().checked_sub(base_universe.as_u32());
+ adjusted_universe.map(|adjusted| {
+ ty::Region::new_placeholder(
+ tcx,
+ ty::Placeholder { universe: adjusted.into(), bound: error_placeholder.bound },
+ )
+ })
+ } else {
+ None
+ };
debug!(?placeholder_region);
@@ -390,7 +391,7 @@ fn try_extract_error_from_fulfill_cx<'tcx>(
error_region,
&region_constraints,
|vid| ocx.infcx.region_var_origin(vid),
- |vid| ocx.infcx.universe_of_region(ocx.infcx.tcx.mk_re_var(vid)),
+ |vid| ocx.infcx.universe_of_region(ty::Region::new_var(ocx.infcx.tcx, vid)),
)
}
@@ -411,7 +412,7 @@ fn try_extract_error_from_region_constraints<'tcx>(
}
// FIXME: Should this check the universe of the var?
Constraint::VarSubReg(vid, sup) if sup == placeholder_region => {
- Some((infcx.tcx.mk_re_var(vid), cause.clone()))
+ Some((ty::Region::new_var(infcx.tcx, vid), cause.clone()))
}
_ => None,
}