General

Profile

yuki300 (y h)

  • Login: yuki300
  • Registered on: 09/13/2026
  • Last sign in: 10/09/2026

Issues

open closed Total
Assigned issues 0 0 0
Reported issues 2 0 2

Activity

09/28/2026

04:22 PM Ruby Revision 42bf37a4 (git): [ruby/prism] Only report real captures inside alternation patterns
When a variable is captured anywhere in a pattern, the operands of each
alternation are visited to report captures inside them. That visitor
treated every local variable target as a capture, including
underscore-prefixed names and target...
yuki300 (y h)

09/27/2026

10:26 AM Ruby Bug #22310: parse.y rejects a variable binding that precedes an unrelated alternative pattern
A follow-up on "every form I tried gives the same answer": while writing more tests I found a few forms where it's Prism that gets it wrong, the other way around. With a sibling capture present, Prism also rejects `in [x, 1 | _a]`, `in [... yuki300 (y h)

09/14/2026

07:13 PM Ruby Bug #22310: parse.y rejects a variable binding that precedes an unrelated alternative pattern
Filed the `**rest` one separately as #22314 (fix in https://github.com/ruby/ruby/pull/18831). yuki300 (y h)
06:49 PM Ruby Bug #22310: parse.y rejects a variable binding that precedes an unrelated alternative pattern
Thanks, that matches what I was seeing.
I got curious about *which* change actually started rejecting these, so I built the two commits around https://github.com/ruby/ruby/pull/15329 and ran the `ng.rb` from the description through `-...
yuki300 (y h)
07:02 PM Ruby Bug #22314 (Open): parse.y does not check **rest bindings in patterns (duplicate / alternation)
`p_kwrest` is the only binding rule in patterns that does not go through
`error_duplicate_pattern_variable`. `p_variable`, `p_rest` and the `{a:}`
shorthand in `p_kw` all call it before `assignable`; for `**rest` the name is
handed st...
yuki300 (y h)

09/13/2026

11:41 AM Ruby Bug #22310 (Open): parse.y rejects a variable binding that precedes an unrelated alternative pattern
`parse.y` rejects patterns in which a variable binding appears *before*
an alternative pattern, even when the alternative itself binds nothing.
Prism accepts the same code. Is this intended?
## Reproduction
```ruby
# ok.rb
case...
yuki300 (y h)

Also available in: Atom