diff options
author | Ben Bridle <ben@derelict.engineering> | 2025-03-25 11:49:26 +1300 |
---|---|---|
committer | Ben Bridle <ben@derelict.engineering> | 2025-03-25 11:49:26 +1300 |
commit | d4ef2eed48be4e99f50b51ab57096c9b3532b7a1 (patch) | |
tree | 774341e5fa87a48e7b8df907d4501da3014ee302 /src/stages | |
parent | 8d09c4dcd747f017deaa61ff32c88980d26e8510 (diff) | |
download | bedrock-asm-d4ef2eed48be4e99f50b51ab57096c9b3532b7a1.zip |
Fix incorrect block addresses
The value used for every block open token was their own address,
instead of the address of the matching block close token.
Diffstat (limited to 'src/stages')
-rw-r--r-- | src/stages/bytecode.rs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/stages/bytecode.rs b/src/stages/bytecode.rs index 4b50327..3d43ef4 100644 --- a/src/stages/bytecode.rs +++ b/src/stages/bytecode.rs @@ -119,7 +119,7 @@ impl<'a> BytecodeGenerator<'a> { let Some(addr) = self.stack.pop() else { unreachable!("Uncaught unmatched block terminator"); }; - let [high, low] = (addr as u16).to_be_bytes(); + let [high, low] = (i as u16).to_be_bytes(); self.bytecode[addr] = high; self.bytecode[addr+1] = low; } |