
Issue #21313 has been reported by ko1 (Koichi Sasada). ---------------------------------------- Bug #21313: `it` in rescue/ensure on prism https://bugs.ruby-lang.org/issues/21313 * Author: ko1 (Koichi Sasada) * Status: Open * Assignee: prism * ruby -v: "ruby 3.4.1 (2024-12-25 revision 48d4efcb85) +PRISM [wasm32-wasi]" * Backport: 3.2: UNKNOWN, 3.3: UNKNOWN, 3.4: UNKNOWN ---------------------------------------- ```ruby 1.times do raise rescue p it #=> prism: false #=> parse.y: 0 end ``` `it` should return 0, shouldn't it? demo: parse.y: https://ruby.github.io/play-ruby/?code=p+RUBY_DESCRIPTION%0A%0A1.times+do%0A++raise%0Arescue%0A++p+it%0Aend%0A&options=%7B%22arguments%22%3A%5B%22--parser%3Dparse.y%22%5D%2C%22env%22%3A%7B%7D%7D prism: https://ruby.github.io/play-ruby/?code=p+RUBY_DESCRIPTION%0A%0A1.times+do%0A++raise%0Arescue%0A++p+it%0Aend%0A&options=%7B%22arguments%22%3A%5B%5D%2C%22env%22%3A%7B%7D%7D Same on `ensure`. ```ruby 1.times do raise ensure p it #=> prism: false #=> parse.y: 0 end ``` ```ruby 1.times do begin raise ensure p it #=> prism: false #=> parse.y: 0 end end ``` -- https://bugs.ruby-lang.org/