You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The default behaviour in Winch is to panic when an invariant is broken at compile time. This behavior is not friendly for all embedders, as it might be painful to recover from an erroneous compilation. Instead we could try to gracefully handle compilation errors.
The text was updated successfully, but these errors were encountered:
Closes: bytecodealliance#8096
This commit threads `anyhow::Result` through most of Winch's
compilation process in order to gracefully handle compilation errors
gracefully instead of panicking.
The error classification is intentionally very granular, to avoid string
allocation which could impact compilation performance.
The errors are largely fit in two categories:
* Unimplemented/Unsupported
* Internal
The firs category signals partial or no support for Wasmtime features
and or Wasm proposals. These errors are meant to be temporary while
such features or proposals are in development.
The second category signals that a compilation invariant was not met.
These errors are considered internal and their presence usually means
a bug in the compiler.
The default behaviour in Winch is to panic when an invariant is broken at compile time. This behavior is not friendly for all embedders, as it might be painful to recover from an erroneous compilation. Instead we could try to gracefully handle compilation errors.
The text was updated successfully, but these errors were encountered: