docs: add exception handling toolchain compatibility guide#310
docs: add exception handling toolchain compatibility guide#310shubham5080 wants to merge 4 commits into
Conversation
Signed-off-by: shubham5080 <shubhamshinde5080@gmail.com>
Signed-off-by: shubham5080 <shubhamshinde5080@gmail.com>
Signed-off-by: shubham5080 <shubhamshinde5080@gmail.com>
|
@hydai Moved the example ( |
shubham5080
left a comment
There was a problem hiding this comment.
@hydai Friendly ping — pushed updates addressing your feedback:
- Toolchain versions in the compatibility table
- Moved the full
a.cppexample into this doc page (per #5136 feedback)
Ready for another look when you have time. Thanks!
hydai
left a comment
There was a problem hiding this comment.
I didn't get the point. What's the reason for including the non-verified version in wasi-sdk?
Signed-off-by: shubham5080 <shubhamshinde5080@gmail.com>
|
@hydai Good catch — that wasi-sdk row was speculative (no version tested). |
| | Toolchain | Version | Compatible | Notes | | ||
| |-----------|---------|------------|-------| | ||
| | WasmEdge (runtime) | 0.17.x | Yes | Latest EH proposal; use `--enable-exception-handling` | | ||
| | Emscripten (`-fwasm-exceptions`) | 3.1.64, 6.0.0 | No | Emits legacy EH (e.g. opcode `0x117` / `delegate`) | |
There was a problem hiding this comment.
I just want to confirm: is there currently no toolchain supporting the final EH proposal?
There was a problem hiding this comment.
@hydai Based on what we verified for this page:
- Emscripten 3.1.64 and 6.0.0 with
-fwasm-exceptionsstill emit legacy EH (e.g.delegate/ opcode0x117) and fail to load on WasmEdge 0.17.x. - WasmEdge’s EH support is validated via the
wasm-3.0-exceptionssuite in wasmedge-spectest, not via a C/C++ toolchain.
So for the toolchains listed here: we have not verified a public C/C++ toolchain that emits the final EH proposal and runs successfully on WasmEdge.
There may be opt-in flags (e.g. Emscripten -sWASM_LEGACY_EXCEPTIONS=0, or wasi-sdk with -mllvm -wasm-use-legacy-eh=false) that emit the final proposal, but those were not tested in this PR. Happy to add a short “not verified / opt-in flags may exist” note if you prefer, or to test a specific toolchain/version you recommend.
Part of WasmEdge/WasmEdge#2406
Documents latest EH proposal support, legacy EH rejection, toolchain table, and how to run EH spec tests.