From cf3a6da3ce643e1d602ecac57c69c0d69a8bb481 Mon Sep 17 00:00:00 2001 From: Dzmitry Malyshau Date: Wed, 31 Mar 2021 23:18:33 -0400 Subject: [PATCH] [msl] clean up emitted expressions at the end of a block --- src/back/msl/writer.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/back/msl/writer.rs b/src/back/msl/writer.rs index a82c456613..f748b5a7b0 100644 --- a/src/back/msl/writer.rs +++ b/src/back/msl/writer.rs @@ -969,6 +969,16 @@ impl Writer { } } } + + // un-emit expressions + //TODO: take care of loop/continuing? + for statement in statements { + if let crate::Statement::Emit(ref range) = *statement { + for handle in range.clone() { + self.named_expressions.remove(handle.index()); + } + } + } Ok(()) }