summaryrefslogtreecommitdiff
path: root/test/binaryen.js/global.js
diff options
context:
space:
mode:
authorThomas Lively <tlively@google.com>2023-11-30 02:52:01 +0100
committerGitHub <noreply@github.com>2023-11-29 17:52:01 -0800
commit71b9cc0b50b119988b7ad3a5f5d2feec4d6c4a95 (patch)
tree70a560571537f51d78b75f7804259b8881d368bc /test/binaryen.js/global.js
parent24742589f5471a5e72755d8fe1da9e49923a35ff (diff)
downloadbinaryen-71b9cc0b50b119988b7ad3a5f5d2feec4d6c4a95.tar.gz
binaryen-71b9cc0b50b119988b7ad3a5f5d2feec4d6c4a95.tar.bz2
binaryen-71b9cc0b50b119988b7ad3a5f5d2feec4d6c4a95.zip
[Parser] Parse try/catch/catch_all/delegate (#6128)
Parse the legacy v3 syntax for try/catch/catch_all/delegate in both its folded and unfolded forms. The first sources of significant complexity is the optional IDs after `catch` and `catch_all` in the unfolded form, which can be confused for tag indices and require backtracking to parse correctly. The second source of complexity is the handling of delegate labels, which are relative to the try's parent scope despite being parsed after the try's scope has already started. Handling this correctly requires punching a whole big enough to drive a truck through through both the parser and IRBuilder abstractions.
Diffstat (limited to 'test/binaryen.js/global.js')
0 files changed, 0 insertions, 0 deletions