Skip to content

Commit ff2413d

Browse files
No need to probe when computing goals
1 parent 7919ef0 commit ff2413d

File tree

1 file changed

+17
-21
lines changed
  • compiler/rustc_trait_selection/src/solve

1 file changed

+17
-21
lines changed

compiler/rustc_trait_selection/src/solve/mod.rs

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -337,15 +337,13 @@ impl<'a, 'tcx> EvalCtxt<'a, 'tcx> {
337337
// That won't actually reflect in the query response, so it seems moot.
338338
self.make_canonical_response(Certainty::AMBIGUOUS)
339339
} else {
340-
self.infcx.probe(|_| {
341-
let InferOk { value: (), obligations } = self
342-
.infcx
343-
.at(&ObligationCause::dummy(), goal.param_env)
344-
.sub(goal.predicate.a, goal.predicate.b)?;
345-
self.evaluate_all_and_make_canonical_response(
346-
obligations.into_iter().map(|pred| pred.into()).collect(),
347-
)
348-
})
340+
let InferOk { value: (), obligations } = self
341+
.infcx
342+
.at(&ObligationCause::dummy(), goal.param_env)
343+
.sub(goal.predicate.a, goal.predicate.b)?;
344+
self.evaluate_all_and_make_canonical_response(
345+
obligations.into_iter().map(|pred| pred.into()).collect(),
346+
)
349347
}
350348
}
351349

@@ -378,18 +376,16 @@ impl<'a, 'tcx> EvalCtxt<'a, 'tcx> {
378376
&mut self,
379377
goal: Goal<'tcx, ty::GenericArg<'tcx>>,
380378
) -> QueryResult<'tcx> {
381-
self.infcx.probe(|_| {
382-
match crate::traits::wf::unnormalized_obligations(
383-
self.infcx,
384-
goal.param_env,
385-
goal.predicate,
386-
) {
387-
Some(obligations) => self.evaluate_all_and_make_canonical_response(
388-
obligations.into_iter().map(|o| o.into()).collect(),
389-
),
390-
None => self.make_canonical_response(Certainty::AMBIGUOUS),
391-
}
392-
})
379+
match crate::traits::wf::unnormalized_obligations(
380+
self.infcx,
381+
goal.param_env,
382+
goal.predicate,
383+
) {
384+
Some(obligations) => self.evaluate_all_and_make_canonical_response(
385+
obligations.into_iter().map(|o| o.into()).collect(),
386+
),
387+
None => self.make_canonical_response(Certainty::AMBIGUOUS),
388+
}
393389
}
394390
}
395391

0 commit comments

Comments
 (0)