From dce1fe8c16559437cae05c0dd782237474ca6082 Mon Sep 17 00:00:00 2001 From: Jay Phelps Date: Tue, 20 Aug 2019 15:27:58 -0500 Subject: Add initial support for anyref as an opaque type (#2294) Another round of trying to push upstream things from my fork. This PR only adds support for anyref itself as an opaque type. It does NOT implement the full [reference types proposal](https://github.com/WebAssembly/reference-types/blob/master/proposals/reference-types/Overview.md)--so no table.get/set/grow/etc or ref.null, ref.func, etc. Figured it was easier to review and merge as we go, especially if I did something fundamentally wrong. *** I did put it under the `--enable-reference-types` flag as I imagine that even though this PR doesn't complete the full feature set, it probably is the right home. Lmk if not. I'll also be adding a few github comments to places I want to point out/question. --- src/wasm/wasm-s-parser.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/wasm/wasm-s-parser.cpp') diff --git a/src/wasm/wasm-s-parser.cpp b/src/wasm/wasm-s-parser.cpp index e1413d5fd..39f6b0a9f 100644 --- a/src/wasm/wasm-s-parser.cpp +++ b/src/wasm/wasm-s-parser.cpp @@ -893,6 +893,9 @@ Type SExpressionWasmBuilder::stringToType(const char* str, return v128; } } + if (strncmp(str, "anyref", 6) == 0 && (prefix || str[6] == 0)) { + return anyref; + } if (strncmp(str, "exnref", 6) == 0 && (prefix || str[6] == 0)) { return exnref; } -- cgit v1.2.3