Simplify BoundUniversalRegionError

This commit is contained in:
Matthew Jasper 2021-03-06 11:22:08 +00:00 committed by Rémy Rakic
parent 4421dd17fa
commit e271383c6b
3 changed files with 8 additions and 8 deletions

View file

@ -75,8 +75,8 @@ crate enum RegionErrorKind<'tcx> {
longer_fr: RegionVid,
/// The region element that erroneously must be outlived by `longer_fr`.
error_element: RegionElement,
/// The origin of the placeholder region.
fr_origin: NllRegionVariableOrigin,
/// The placeholder region.
placeholder: ty::PlaceholderRegion,
},
/// Any other lifetime error.
@ -210,17 +210,17 @@ impl<'a, 'tcx> MirBorrowckCtxt<'a, 'tcx> {
RegionErrorKind::BoundUniversalRegionError {
longer_fr,
fr_origin,
placeholder,
error_element,
} => {
let error_region = self.regioncx.region_from_element(longer_fr, error_element);
let error_vid = self.regioncx.region_from_element(longer_fr, error_element);
// Find the code to blame for the fact that `longer_fr` outlives `error_fr`.
let (_, span) = self.regioncx.find_outlives_blame_span(
&self.body,
longer_fr,
fr_origin,
error_region,
NllRegionVariableOrigin::Placeholder(placeholder),
error_vid,
);
// FIXME: improve this error message

View file

@ -1632,7 +1632,7 @@ impl<'tcx> RegionInferenceContext<'tcx> {
errors_buffer.push(RegionErrorKind::BoundUniversalRegionError {
longer_fr,
error_element,
fr_origin: NllRegionVariableOrigin::Placeholder(placeholder),
placeholder,
});
}

View file

@ -114,7 +114,7 @@ rustc_index::newtype_index! {
/// An individual element in a region value -- the value of a
/// particular region variable consists of a set of these elements.
#[derive(Debug, Clone)]
#[derive(Debug, Copy, Clone)]
crate enum RegionElement {
/// A point in the control-flow graph.
Location(Location),