Skip to content

exnref-related error in writing binary #3114

Closed
@kripken

Description

@kripken

emcc-0-base.wasm.gz

The attached wasm file is the wasm-ld output for test_exceptions_3 with wasm exceptions. The wasm-ld output is valid after https://bugs.llvm.org/show_bug.cgi?id=47413 but the test cannot be enabled yet as running

wasm-opt emcc-0-base.wasm -o out.wasm

results in an invalid wasm, wabt says

$ wasm2wat   --enable-all out.wasm
b.wasm:0000f7e: error: type mismatch in local.set, expected [exnref] but got []
0000000: error: type mismatch in try catch, expected [] but got [exnref]
b.wasm:00039f7: error: type mismatch in function, expected [] but got [i32, i32, i32, i32]
b.wasm:0004501: error: type mismatch in function, expected [] but got [i32]
b.wasm:00048b8: error: type mismatch in function, expected [] but got [i32]
[..]

(doing another roundtrip results in a valid wasm, and is why this wasn't noticed before - we do one fewer roundtrip now on many tests since at -O0 we don't run wasm-opt at all if we don't need to).

cc @aheejin

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions