Skip to content

Commit d7f44ac

Browse files
authored
Rollup merge of rust-lang#48682 - spastorino:make_causal_lazy, r=nikomatsakis
[NLL] Make causal tracking lazy Close rust-lang#46590 cc @nikomatsakis
2 parents f12d5aa + 52a47d4 commit d7f44ac

33 files changed

+1255
-860
lines changed

src/librustc/infer/error_reporting/mod.rs

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -138,9 +138,9 @@ impl<'a, 'gcx, 'tcx> TyCtxt<'a, 'gcx, 'tcx> {
138138
self.explain_span(scope_decorated_tag, span)
139139
}
140140

141-
ty::ReEarlyBound(_) | ty::ReFree(_) => self.msg_span_from_free_region(region),
142-
143-
ty::ReStatic => ("the static lifetime".to_owned(), None),
141+
ty::ReEarlyBound(_) | ty::ReFree(_) | ty::ReStatic => {
142+
self.msg_span_from_free_region(region)
143+
}
144144

145145
ty::ReEmpty => ("the empty lifetime".to_owned(), None),
146146

@@ -175,6 +175,19 @@ impl<'a, 'gcx, 'tcx> TyCtxt<'a, 'gcx, 'tcx> {
175175
}
176176

177177
fn msg_span_from_free_region(self, region: ty::Region<'tcx>) -> (String, Option<Span>) {
178+
match *region {
179+
ty::ReEarlyBound(_) | ty::ReFree(_) => {
180+
self.msg_span_from_early_bound_and_free_regions(region)
181+
},
182+
ty::ReStatic => ("the static lifetime".to_owned(), None),
183+
_ => bug!(),
184+
}
185+
}
186+
187+
fn msg_span_from_early_bound_and_free_regions(
188+
self,
189+
region: ty::Region<'tcx>,
190+
) -> (String, Option<Span>) {
178191
let scope = region.free_region_binding_scope(self);
179192
let node = self.hir.as_local_node_id(scope).unwrap_or(DUMMY_NODE_ID);
180193
let unknown;

0 commit comments

Comments
 (0)