diff --git a/codegen-luajit/src/translator.rs b/codegen-luajit/src/translator.rs index 0d8b9c4..5580ba5 100644 --- a/codegen-luajit/src/translator.rs +++ b/codegen-luajit/src/translator.rs @@ -227,7 +227,11 @@ fn write_data_list(wasm: &Module, w: &mut dyn Write) -> Result<()> { } fn build_func_list(wasm: &Module, type_info: &TypeInfo) -> Vec { - let list = wasm.code_section().unwrap().bodies(); + let list = match wasm.code_section() { + Some(v) => v.bodies(), + None => return Vec::new(), + }; + let iter = list.iter().enumerate(); iter.map(|f| Builder::new(type_info).consume(f.0, f.1)) diff --git a/codegen-luau/src/translator.rs b/codegen-luau/src/translator.rs index 4f65ab9..68f877b 100644 --- a/codegen-luau/src/translator.rs +++ b/codegen-luau/src/translator.rs @@ -226,7 +226,11 @@ fn write_data_list(wasm: &Module, w: &mut dyn Write) -> Result<()> { } fn build_func_list(wasm: &Module, type_info: &TypeInfo) -> Vec { - let list = wasm.code_section().unwrap().bodies(); + let list = match wasm.code_section() { + Some(v) => v.bodies(), + None => return Vec::new(), + }; + let iter = list.iter().enumerate(); iter.map(|f| Builder::new(type_info).consume(f.0, f.1))