summaryrefslogtreecommitdiff
path: root/src/wasm/wasm-ir-builder.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/wasm/wasm-ir-builder.cpp')
-rw-r--r--src/wasm/wasm-ir-builder.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/wasm/wasm-ir-builder.cpp b/src/wasm/wasm-ir-builder.cpp
index f8c8cf0a0..8098856e4 100644
--- a/src/wasm/wasm-ir-builder.cpp
+++ b/src/wasm/wasm-ir-builder.cpp
@@ -677,6 +677,9 @@ Result<Expression*> IRBuilder::finishScope(Block* block) {
} else {
auto hoisted = hoistLastValue();
CHECK_ERR(hoisted);
+ if (!hoisted) {
+ return Err{"popping from empty stack"};
+ }
auto hoistedType = scope.exprStack.back()->type;
if (hoistedType.size() != type.size()) {
// We cannot propagate the hoisted value directly because it does not