summaryrefslogtreecommitdiff
path: root/src/wast-parser.cc
diff options
context:
space:
mode:
authorSoni L. <EnderMoneyMod@gmail.com>2024-10-29 18:55:48 -0300
committerGitHub <noreply@github.com>2024-10-29 14:55:48 -0700
commit6b3b81d13559055830ad3e2867015e6fb78f7846 (patch)
treec385c98634bee47c881808d0a5e376902de1df90 /src/wast-parser.cc
parent22b8252eff251845ac27cf29cf7a9126a5a58f97 (diff)
downloadwabt-6b3b81d13559055830ad3e2867015e6fb78f7846.tar.gz
wabt-6b3b81d13559055830ad3e2867015e6fb78f7846.tar.bz2
wabt-6b3b81d13559055830ad3e2867015e6fb78f7846.zip
interp: Handle ref.null exn (#2497)
Diffstat (limited to 'src/wast-parser.cc')
-rw-r--r--src/wast-parser.cc6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/wast-parser.cc b/src/wast-parser.cc
index c8296461..eb67dceb 100644
--- a/src/wast-parser.cc
+++ b/src/wast-parser.cc
@@ -657,7 +657,8 @@ bool WastParser::PeekMatchExpr() {
}
bool WastParser::PeekMatchRefType() {
- return options_->features.function_references_enabled() &&
+ return (options_->features.function_references_enabled() ||
+ options_->features.exceptions_enabled()) &&
PeekMatchLpar(TokenType::Ref);
}
@@ -934,6 +935,9 @@ Result WastParser::ParseValueType(Var* out_type) {
case Type::ExternRef:
is_enabled = options_->features.reference_types_enabled();
break;
+ case Type::ExnRef:
+ is_enabled = options_->features.exceptions_enabled();
+ break;
default:
is_enabled = true;
break;