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
A throw in a try that declares a class-typed let is not caught (crash in every model) #457
Actual, tslang --emit=jit --no-default-lib, main 8b9d631: in try 0, then a crash.
gc and none: exception 0x80000003, exit 3. The same happens with the default library.
rc: 0xC0000005, exit 139.
AOT: 0xC0000409.
These versions of the try body are caught correctly (caught 0, after 0):
const t = s; instead of let t = s;;
a number local, let n = 5;;
no local at all.
let t = new Node(); crashes the same way. So the trigger is a let of a class type declared in the try, followed by a throw.
This is probably the same root cause as #456, where a class-typed let in try has an initializer that throws. Here the initializer succeeds and a later statement throws.
Found by the final review of Shared<T> (own phase 8).
Activity