summaryrefslogtreecommitdiff
path: root/src/tools/spec-wrapper.h
diff options
context:
space:
mode:
authorDaniel Wirtz <dcode@dcode.io>2020-09-11 03:04:17 +0200
committerGitHub <noreply@github.com>2020-09-10 18:04:17 -0700
commit192757772adce7568fc1f3f3e733a4263b6392c6 (patch)
tree922fec8709cf9008d239a1fcbce7280e6ab46deb /src/tools/spec-wrapper.h
parentcd6f0d908f0e4c68d72fd476a6e0e7cfb7ae8595 (diff)
downloadbinaryen-192757772adce7568fc1f3f3e733a4263b6392c6.tar.gz
binaryen-192757772adce7568fc1f3f3e733a4263b6392c6.tar.bz2
binaryen-192757772adce7568fc1f3f3e733a4263b6392c6.zip
Add anyref feature and type (#3109)
Adds `anyref` type, which is enabled by a new feature `--enable-anyref`. This type is primarily used for testing that passes correctly handle subtype relationships so that the codebase will continue to be prepared for future subtyping. Since `--enable-anyref` is meaningless without also using `--enable-reference-types`, this PR also makes it a validation error to pass only the former (and similarly makes it a validation error to enable exception handling without enabling reference types).
Diffstat (limited to 'src/tools/spec-wrapper.h')
-rw-r--r--src/tools/spec-wrapper.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/tools/spec-wrapper.h b/src/tools/spec-wrapper.h
index c073a994c..200571fd0 100644
--- a/src/tools/spec-wrapper.h
+++ b/src/tools/spec-wrapper.h
@@ -58,6 +58,9 @@ static std::string generateSpecWrapper(Module& wasm) {
case Type::exnref:
ret += "(ref.null exn)";
break;
+ case Type::anyref:
+ ret += "(ref.null any)";
+ break;
case Type::none:
case Type::unreachable:
WASM_UNREACHABLE("unexpected type");