[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
itin rescue and ensure blocks.The following is crashing for me:
It seems
itsometimes points to the wrong value:But only when
$!is set: