Allow fall-through in switch#3
Conversation
Moved opcode number to be by other "strange jumps" Added simple tests for normal cases, and for fallthrough Added some overflow protection from handcrafted bytecode by limiting switch labels to 2^16.
Feedback on algoidurovic#3 for switchi fall-through
algochoi
left a comment
There was a problem hiding this comment.
Do we want to bump up the doc version here or later down the road? It looks like the docs weren't regenerated:
var docVersion = 7 // -> change to 8
Made some changes to cast the label count (numOffsets) to `int` sooner. My bug was multiplying numOffsets by 2 while it was still a byte and _then_ casting to int. It had already wrapped.
|
I think all we need to do first is make sure that devrel (or whoever does it) has taken the v7 docs and put them in place for public consumption. |
|
@jannotti https://github.com/algorand/docs/blob/staging/docs/get-details/dapps/avm/teal/specification.md looks updated to me. As a live proof point, opcodes look updated: https://developer.algorand.org/docs/get-details/dapps/avm/teal/opcodes/. The repo recently introduced Github Actions to automatically generate PRs when there's upstream (go-algorand, indexer) releases: https://github.com/algorand/docs/blob/staging/.github/workflows/release-checker.yml. Due to the auto PR generation, I think we want to hold on merging updated docs to |
|
I bumped the docVersion, moved pairing ops to 9, and put in the v9 nonsense test. |
Moved opcode number to be by other "strange jumps"
Added simple tests for normal cases, and for fallthrough