[Bug #21313] Handle it in rescue and ensure blocks.
The following is crashing for me:
ruby --yjit--yjit-call-threshold=1 -e'1.tap { raise rescue p it }'
ruby: YJIT has panicked. More info to follow...
thread '<unnamed>' panicked at ./yjit/src/codegen.rs:2402:14:
...
It seems it sometimes points to the wrong value:
ruby -e'1.tap { raise rescue p it }'false
ruby -e'1.tap { begin; raise; ensure; p it; end } rescue nil'false
But only when $! is set:
ruby -e'1.tap { begin; nil; ensure; p it; end }'
1
ruby -e'1.tap { begin; nil; rescue; ensure; p it; end }'
1
ruby -e'1.tap { begin; raise; rescue; ensure; p it; end }'
1
[Bug #21313] Handle
it
in rescue and ensure blocks.The following is crashing for me:
It seems
it
sometimes points to the wrong value:But only when
$!
is set: