diff --git a/crates/gen-c/src/lib.rs b/crates/gen-c/src/lib.rs index 21acaaf6b..6e2ca0c1e 100644 --- a/crates/gen-c/src/lib.rs +++ b/crates/gen-c/src/lib.rs @@ -1652,7 +1652,7 @@ impl Bindgen for FunctionBindgen<'_> { list_name, elem_name, operands[0], operands[1] )); } - Instruction::IterElem => results.push("e".to_string()), + Instruction::IterElem { .. } => results.push("e".to_string()), Instruction::IterBasePointer => results.push("base".to_string()), Instruction::BufferLowerPtrLen { .. } => { diff --git a/crates/gen-js/src/lib.rs b/crates/gen-js/src/lib.rs index bf9644676..27f720245 100644 --- a/crates/gen-js/src/lib.rs +++ b/crates/gen-js/src/lib.rs @@ -1665,7 +1665,7 @@ impl Bindgen for FunctionBindgen<'_> { } } - Instruction::IterElem => results.push("e".to_string()), + Instruction::IterElem { .. } => results.push("e".to_string()), Instruction::IterBasePointer => results.push("base".to_string()), diff --git a/crates/gen-rust-wasm/src/lib.rs b/crates/gen-rust-wasm/src/lib.rs index f8fede1e2..dd7c3ec53 100644 --- a/crates/gen-rust-wasm/src/lib.rs +++ b/crates/gen-rust-wasm/src/lib.rs @@ -1157,7 +1157,7 @@ impl Bindgen for FunctionBindgen<'_> { )); } - Instruction::IterElem => results.push("e".to_string()), + Instruction::IterElem { .. } => results.push("e".to_string()), Instruction::IterBasePointer => results.push("base".to_string()), diff --git a/crates/gen-wasmtime-py/src/lib.rs b/crates/gen-wasmtime-py/src/lib.rs index 16a67a8f1..3e0b10189 100644 --- a/crates/gen-wasmtime-py/src/lib.rs +++ b/crates/gen-wasmtime-py/src/lib.rs @@ -1965,7 +1965,7 @@ impl Bindgen for FunctionBindgen<'_> { results.push(result); } - Instruction::IterElem => { + Instruction::IterElem { .. } => { let name = self.locals.tmp("e"); results.push(name.clone()); self.payloads.push(name); diff --git a/crates/gen-wasmtime/src/lib.rs b/crates/gen-wasmtime/src/lib.rs index 7fc8fb4bc..34f03b65e 100644 --- a/crates/gen-wasmtime/src/lib.rs +++ b/crates/gen-wasmtime/src/lib.rs @@ -1968,7 +1968,7 @@ impl Bindgen for FunctionBindgen<'_> { } } - Instruction::IterElem => results.push("e".to_string()), + Instruction::IterElem { .. } => results.push("e".to_string()), Instruction::IterBasePointer => results.push("base".to_string()), diff --git a/crates/witx2/src/abi.rs b/crates/witx2/src/abi.rs index 084adfde7..01ded327e 100644 --- a/crates/witx2/src/abi.rs +++ b/crates/witx2/src/abi.rs @@ -479,7 +479,7 @@ def_instruction! { /// each iteration of the list. /// /// This is only used inside of blocks related to lowering lists. - IterElem : [0] => [1], + IterElem { element: &'a Type } : [0] => [1], /// Pushes an operand onto the stack representing the base pointer of /// the next element in a list. @@ -1485,7 +1485,7 @@ impl<'a, B: Bindgen> Generator<'a, B> { self.emit(&ListCanonLower { element, realloc }); } else { self.push_block(); - self.emit(&IterElem); + self.emit(&IterElem { element }); self.emit(&IterBasePointer); let addr = self.stack.pop().unwrap(); self.write_to_memory(element, addr, 0);