Skip to content

Commit 703308d

Browse files
committed
Refactor how binders are handled in trait selection
1 parent c59fe8b commit 703308d

File tree

3 files changed

+213
-128
lines changed

3 files changed

+213
-128
lines changed

src/librustc/middle/traits/fulfill.rs

+2
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,8 @@ impl<'tcx> FulfillmentContext<'tcx> {
164164
// debug output much nicer to read and so on.
165165
let obligation = infcx.resolve_type_vars_if_possible(&obligation);
166166

167+
assert!(!obligation.has_escaping_regions());
168+
167169
if !self.duplicate_set.insert(obligation.predicate.clone()) {
168170
debug!("register_predicate({}) -- already seen, skip", obligation.repr(infcx.tcx));
169171
return;

0 commit comments

Comments
 (0)