summaryrefslogtreecommitdiff
path: root/test/try-body-multiple-insts.wasm.fromBinary
diff options
context:
space:
mode:
authorHeejin Ahn <aheejin@gmail.com>2019-10-09 13:40:06 -0700
committerGitHub <noreply@github.com>2019-10-09 13:40:06 -0700
commit13725e54f845ec84947130aaa888b4c11e53f9af (patch)
tree37284c425c6e2bf62d112b3fb299c03e3e7f73e2 /test/try-body-multiple-insts.wasm.fromBinary
parentd0f538ef24853e88d97f9f1aee3baa6414ac2b13 (diff)
downloadbinaryen-13725e54f845ec84947130aaa888b4c11e53f9af.tar.gz
binaryen-13725e54f845ec84947130aaa888b4c11e53f9af.tar.bz2
binaryen-13725e54f845ec84947130aaa888b4c11e53f9af.zip
Make try body with multiple instructions roundtrip (#2374)
Previously we didn't print an additional block when there are multiple instructions within a `try` body, so those wast files cannot be parsed correctly, because the wast parser assumes there are two bodies within a `try` scope: a try body and a catch body. We don't need to print an additional block for a `catch` body because `(catch ...)` itself serves as a scope.
Diffstat (limited to 'test/try-body-multiple-insts.wasm.fromBinary')
-rw-r--r--test/try-body-multiple-insts.wasm.fromBinary26
1 files changed, 26 insertions, 0 deletions
diff --git a/test/try-body-multiple-insts.wasm.fromBinary b/test/try-body-multiple-insts.wasm.fromBinary
new file mode 100644
index 000000000..f52a1a3dc
--- /dev/null
+++ b/test/try-body-multiple-insts.wasm.fromBinary
@@ -0,0 +1,26 @@
+(module
+ (type $0 (func))
+ (func $0 (; 0 ;) (type $0)
+ (nop)
+ )
+ (func $1 (; 1 ;) (type $0)
+ (nop)
+ )
+ (func $2 (; 2 ;) (type $0)
+ (local $0 exnref)
+ (try
+ (block
+ (call $0)
+ (call $1)
+ )
+ (catch
+ (drop
+ (exnref.pop)
+ )
+ (call $0)
+ (call $1)
+ )
+ )
+ )
+)
+