diff --git a/lib/wasm/src/code_translator.rs b/lib/wasm/src/code_translator.rs index 0b540782f6..1e96b02c4d 100644 --- a/lib/wasm/src/code_translator.rs +++ b/lib/wasm/src/code_translator.rs @@ -126,7 +126,6 @@ pub fn translate_function_body( &mut builder, runtime, &mut state, - sig, functions, signatures, exports, @@ -171,7 +170,6 @@ fn translate_operator( builder: &mut FunctionBuilder, runtime: &mut WasmRuntime, state: &mut TranslationState, - sig: &Signature, functions: &[SignatureIndex], signatures: &[Signature], exports: &Option>, @@ -439,7 +437,7 @@ fn translate_operator( } } Operator::Return => { - let return_count = sig.return_types.len(); + let return_count = state.control_stack[0].return_values().len(); let cut_index = state.stack.len() - return_count; builder.ins().return_(&state.stack[cut_index..]); state.stack.truncate(cut_index);