From 1433cf64f5c9077b3e0ca6e2cb41eda644ff5ce2 Mon Sep 17 00:00:00 2001 From: Raymon Zutekouw <40148684+Raymonzut@users.noreply.github.com> Date: Tue, 4 Jan 2022 10:18:53 +0100 Subject: [PATCH] Panic on duplicate variable creation --- src/main.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main.rs b/src/main.rs index e346853..04166bc 100644 --- a/src/main.rs +++ b/src/main.rs @@ -81,10 +81,12 @@ fn instruct(statement: Pair, state: &mut State, out: &mut Builder) { Rule::var => { let variable_name = extract_operand(statement); println!("Creation of variable '{}'", variable_name); - state.variables.insert( + if let Some(_v) = state.variables.insert( String::from(variable_name), MemCell::allocate(state.alloc_cnt), - ); + ) { + panic!("Variable {} already exists", variable_name); + } state.alloc_cnt += 1; } Rule::delvar => {