v0.0.203: [Interpreter] Fix strings with length exceeding `uint8_t`.
mirror-releases
released this
12 Apr 10:06
·
101 commits
to main
since this release
Prior to this commit, the string length was encoded into the opcode of the `StackMachine` instructions `St_Tup_s`, `Ld_s`, and `St_s`. However, this encoding was done using the opcode type which is stored in a `uint8_t` internally. Thus, strings exceeding the length of 255 characters let the encoded length overflow. To circumvent this issue, we now store the string length in the stack machine's context which is able to hold values up to `uint64_t`. Accessing the length is then done via the stack itself.