remove leak_check
from the outlives predicate evaluations
This commit is contained in:
parent
6873a76f2c
commit
3a68d56de3
@ -991,14 +991,12 @@ impl<'a, 'tcx> InferCtxt<'a, 'tcx> {
|
||||
return None;
|
||||
}
|
||||
|
||||
Some(self.commit_if_ok(|snapshot| {
|
||||
Some(self.commit_if_ok(|_snapshot| {
|
||||
let (ty::SubtypePredicate { a_is_expected, a, b }, _) =
|
||||
self.replace_bound_vars_with_placeholders(&predicate);
|
||||
|
||||
let ok = self.at(cause, param_env).sub_exp(a_is_expected, a, b)?;
|
||||
|
||||
self.leak_check(false, snapshot)?;
|
||||
|
||||
Ok(ok.unit())
|
||||
}))
|
||||
}
|
||||
@ -1008,14 +1006,13 @@ impl<'a, 'tcx> InferCtxt<'a, 'tcx> {
|
||||
cause: &traits::ObligationCause<'tcx>,
|
||||
predicate: ty::PolyRegionOutlivesPredicate<'tcx>,
|
||||
) -> UnitResult<'tcx> {
|
||||
self.commit_if_ok(|snapshot| {
|
||||
self.commit_if_ok(|_snapshot| {
|
||||
let (ty::OutlivesPredicate(r_a, r_b), _) =
|
||||
self.replace_bound_vars_with_placeholders(&predicate);
|
||||
let origin = SubregionOrigin::from_obligation_cause(cause, || {
|
||||
RelateRegionParamBound(cause.span)
|
||||
});
|
||||
self.sub_regions(origin, r_b, r_a); // `b : a` ==> `a <= b`
|
||||
self.leak_check(false, snapshot)?;
|
||||
Ok(())
|
||||
})
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user