summaryrefslogtreecommitdiff
path: root/test/lit/binary
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2021-12-16 09:39:17 -0800
committerGitHub <noreply@github.com>2021-12-16 09:39:17 -0800
commit62d83d5fcad015ce52f0f3122eab9df1c629cafb (patch)
tree894177e8addef43e42918afa486143925c644608 /test/lit/binary
parent4905e74fff164d57aa1c5aaf7cb0f5c60ec635bc (diff)
downloadbinaryen-62d83d5fcad015ce52f0f3122eab9df1c629cafb.tar.gz
binaryen-62d83d5fcad015ce52f0f3122eab9df1c629cafb.tar.bz2
binaryen-62d83d5fcad015ce52f0f3122eab9df1c629cafb.zip
Add binary format parse checking for ref.as input type (#4389)
If that type is not valid then we cannot even create and finalize the node, which means we'd hit an assertion inside finalize(), before we reach the validator. Fixes #4383
Diffstat (limited to 'test/lit/binary')
-rw-r--r--test/lit/binary/bad-ref-as.test6
-rw-r--r--test/lit/binary/bad-ref-as.test.wasmbin0 -> 29 bytes
2 files changed, 6 insertions, 0 deletions
diff --git a/test/lit/binary/bad-ref-as.test b/test/lit/binary/bad-ref-as.test
new file mode 100644
index 000000000..2afa19904
--- /dev/null
+++ b/test/lit/binary/bad-ref-as.test
@@ -0,0 +1,6 @@
+;; Test that we error properly on a file with a ref.as of a non-ref type.
+
+;; RUN: not wasm-opt %s.wasm 2>&1 | filecheck %s
+
+;; CHECK: parse exception: bad input type for ref.as: i32
+
diff --git a/test/lit/binary/bad-ref-as.test.wasm b/test/lit/binary/bad-ref-as.test.wasm
new file mode 100644
index 000000000..637537dd2
--- /dev/null
+++ b/test/lit/binary/bad-ref-as.test.wasm
Binary files differ