diff options
Diffstat (limited to 'src/wasm-interpreter.h')
-rw-r--r-- | src/wasm-interpreter.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/wasm-interpreter.h b/src/wasm-interpreter.h index fec560e35..56336b237 100644 --- a/src/wasm-interpreter.h +++ b/src/wasm-interpreter.h @@ -1874,6 +1874,9 @@ public: trap("not an i31"); } break; + case ExternInternalize: + case ExternExternalize: + WASM_UNREACHABLE("unimplemented extern conversion"); default: WASM_UNREACHABLE("unimplemented ref.as_*"); } @@ -2226,6 +2229,13 @@ public: Flow visitStringSliceIter(StringSliceIter* curr) { return Flow(NONCONSTANT_FLOW); } + Flow visitRefAs(RefAs* curr) { + // TODO: Remove this once interpretation is implemented. + if (curr->op == ExternInternalize || curr->op == ExternExternalize) { + return Flow(NONCONSTANT_FLOW); + } + return ExpressionRunner<SubType>::visitRefAs(curr); + } void trap(const char* why) override { throw NonconstantException(); } |