From 66ac5a2d6380778e6ca29924e1c7f8287cb851a9 Mon Sep 17 00:00:00 2001 From: LeSeulArtichaut Date: Mon, 19 Oct 2020 23:14:28 +0200 Subject: [PATCH] Do not ICE on pattern that uses a binding multiple times in generator --- compiler/rustc_typeck/src/check/generator_interior.rs | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/compiler/rustc_typeck/src/check/generator_interior.rs b/compiler/rustc_typeck/src/check/generator_interior.rs index 3fc5f02a4a4..4473aa2081f 100644 --- a/compiler/rustc_typeck/src/check/generator_interior.rs +++ b/compiler/rustc_typeck/src/check/generator_interior.rs @@ -250,10 +250,7 @@ impl<'a, 'tcx> Visitor<'tcx> for InteriorVisitor<'a, 'tcx> { let mut scope_var_ids = self.guard_bindings.pop().expect("should have pushed at least one earlier"); for var_id in scope_var_ids.drain(..) { - assert!( - self.guard_bindings_set.remove(&var_id), - "variable should be placed in scope earlier" - ); + self.guard_bindings_set.remove(&var_id); } } self.visit_expr(body);