diff --git a/src/librustc/infer/region_constraints/mod.rs b/src/librustc/infer/region_constraints/mod.rs index 634e46426006..749a47004da3 100644 --- a/src/librustc/infer/region_constraints/mod.rs +++ b/src/librustc/infer/region_constraints/mod.rs @@ -562,7 +562,9 @@ impl<'tcx> RegionConstraintCollector<'tcx> { if self.data.givens.insert((sub, sup)) { debug!("add_given({:?} <= {:?})", sub, sup); - self.undo_log.push(AddGiven(sub, sup)); + if self.in_snapshot() { + self.undo_log.push(AddGiven(sub, sup)); + } } }