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
{{ message }}
Repository navigation
[wasm][R2R] Exception thrown from a finally reached by leave is reported as unhandled instead of reaching the caller's catch (b51875, b77707) #134975
JIT/Regression/CLR-x86-JIT/V1-M12-Beta2/b51875 fails when the test assembly is compiled with crossgen2 for browser-wasm. AA.Main1 leaves a try with goto, and its finally throws. TestEntryPoint wraps the call in try { ... } catch (Exception). That catch is never reached: the runtime reports the exception as unhandled and aborts the process:
Running test: global::b51875.AA.TestEntryPoint()
Unhandled exception. System.Exception: Exception of type 'System.Exception' was thrown.
at b51875.AA.Main1()
Aborted(native code called abort())
RuntimeError: unreachable
Because the process aborts, the merged runner stops and the remaining tests in it report no results.
Both copies fail:
Regression_8 (b51875/b51875.cs)
Regression_PdbOnly_r_2 (b51875/Desktop/b51875.cs)
The same work items pass in the browser-wasm interpreter leg (interpreted test code over R2R CoreLib), so the failure is specific to test code compiled with ReadyToRun.
The module-validation bug for this test (#129335, missing function-body end opcode) is fixed. Now that the module loads, this EH propagation failure is visible.
b77707 (Regression_PdbOnly_r_2) fails the same way, found once b51875 stopped crashing that runner. AA.Method1 leaves its try with return, and its finally throws:
Unhandled exception. System.Exception: Exception of type 'System.Exception' was thrown.
at b77707.AA.Method1()
Aborted(native code called abort())
Configuration
browser-wasm, CoreCLR, Checked, R2R_CG2 (crossgen2 at Helix time), priority 1
changed the title [-][wasm][R2R] Exception thrown from a finally reached by leave is reported as unhandled instead of reaching the caller's catch (b51875)[/-][+][wasm][R2R] Exception thrown from a finally reached by leave is reported as unhandled instead of reaching the caller's catch (b51875, b77707)[/+]on Sep 30, 2026
Activity
dotnet-policy-service commentedon Sep 30, 2026
Tagging subscribers to 'arch-wasm': @lewing, @pavelsavara
See info in area-owners.md if you want to be subscribed.
dotnet-policy-service commentedon Sep 30, 2026
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch
See info in area-owners.md if you want to be subscribed.
Quarantine browser-wasm R2R outerloop failures
[-][wasm][R2R] Exception thrown from a finally reached by leave is reported as unhandled instead of reaching the caller's catch (b51875)[/-][+][wasm][R2R] Exception thrown from a finally reached by leave is reported as unhandled instead of reaching the caller's catch (b51875, b77707)[/+]Refine browser-wasm R2R quarantines after local validation
JIT: make Wasm frames that call a finally unwindable (#134979)
[wasm][CoreCLR] Add browser_wasm R2R_CG2 leg to runtime-coreclr outer…
[wasm][R2R] Re-enable b51875 and b77707 after #134979 (#135027)