From c226d145697306111fdf7873fd82013a1d67319b Mon Sep 17 00:00:00 2001 From: Rerumu Date: Thu, 23 Jun 2022 20:59:43 -0400 Subject: [PATCH] Allow valueless constants --- codegen/luajit/src/translator.rs | 6 ++---- codegen/luau/src/translator.rs | 6 ++---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/codegen/luajit/src/translator.rs b/codegen/luajit/src/translator.rs index 426a63c..d9067ad 100644 --- a/codegen/luajit/src/translator.rs +++ b/codegen/luajit/src/translator.rs @@ -52,12 +52,10 @@ fn write_constant(code: &[Instruction], type_info: &TypeInfo, w: &mut dyn Write) let func = Builder::from_type_info(type_info).build_anonymous(code); if let Some(Statement::SetTemporary(stat)) = func.code().code().last() { - stat.value().write(&mut Manager::default(), w)?; + stat.value().write(&mut Manager::default(), w) } else { - panic!("Not a valid constant"); + write!(w, r#"error("Valueless constant")"#) } - - Ok(()) } fn write_import_of(wasm: &Module, lower: &str, cond: T, w: &mut dyn Write) -> Result<()> diff --git a/codegen/luau/src/translator.rs b/codegen/luau/src/translator.rs index 60c6234..ac69608 100644 --- a/codegen/luau/src/translator.rs +++ b/codegen/luau/src/translator.rs @@ -51,12 +51,10 @@ fn write_constant(code: &[Instruction], type_info: &TypeInfo, w: &mut dyn Write) let func = Builder::from_type_info(type_info).build_anonymous(code); if let Some(Statement::SetTemporary(stat)) = func.code().code().last() { - stat.value().write(&mut Manager::default(), w)?; + stat.value().write(&mut Manager::default(), w) } else { - panic!("Not a valid constant"); + write!(w, r#"error("Valueless constant")"#) } - - Ok(()) } fn write_import_of(wasm: &Module, lower: &str, cond: T, w: &mut dyn Write) -> Result<()>