diff options
author | Thomas Lively <tlively@google.com> | 2024-03-07 08:20:19 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-07 08:20:19 -0800 |
commit | 3c779e20be9870d4985763b6fbe8d85e17827353 (patch) | |
tree | 0eaa05b00400d51f629b44e111d04459b05f8eeb /src/ir/eh-utils.cpp | |
parent | 4ca311d83187bad3b5790635efc687b747a1b1e7 (diff) | |
download | binaryen-3c779e20be9870d4985763b6fbe8d85e17827353.tar.gz binaryen-3c779e20be9870d4985763b6fbe8d85e17827353.tar.bz2 binaryen-3c779e20be9870d4985763b6fbe8d85e17827353.zip |
Fix EH fuzz bugs (#6381)
Due to a typo, the fuzzer was making externrefs when it should have been making
exnrefs. Fix that and also let eh-utils.cpp know that TryTable exists to avoid
an assertion failure.
Diffstat (limited to 'src/ir/eh-utils.cpp')
-rw-r--r-- | src/ir/eh-utils.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ir/eh-utils.cpp b/src/ir/eh-utils.cpp index f9cd2d940..70b5452a6 100644 --- a/src/ir/eh-utils.cpp +++ b/src/ir/eh-utils.cpp @@ -84,7 +84,7 @@ getFirstPop(Expression* catchBody, bool& isPopNested, Expression**& popPtr) { } else { isPopNested = true; } - } else if (firstChild->is<Try>()) { + } else if (firstChild->is<Try>() || firstChild->is<TryTable>()) { isPopNested = true; } else { WASM_UNREACHABLE("Unexpected control flow expression"); |