General

Profile

tompng (tomoya ishida)

  • Login: tompng
  • Email: [email protected]
  • Registered on: 12/26/2015
  • Last sign in: 12/18/2025

Issues

open closed Total
Assigned issues 0 17 17
Reported issues 10 78 88

Projects

Project Roles Registered on
Ruby Committer 12/26/2024

Activity

12/17/2025

06:04 PM Ruby Revision 7e13fbc0 (git): Update bundled bigdecimal and rbs (#15611)
* Bundle rbs-3.10.0.pre.1
* Update rbs gem entry with commit hash
Updated rbs entry to include commit hash.
* Fix rbs entry in bundled_gems
* Update rbs gem to version 3.10.0.pre.2
Updated rbs gem version from 3.10.0.pre.1 to 3.10.0...
tompng (tomoya ishida)

12/15/2025

03:35 PM Ruby Bug #21784: Proc#source_location start column seems strange for -> {}
Except the problematic case `-> { }`, start position consistently excludes whitespaces just after `->`.
So I think `-> { }`'s source location should be `{ }`.
~~~ruby
-> ( ) { }.source_location # ["(irb)", 1, 3, 1, 10]
^^^^^^^
->...
tompng (tomoya ishida)

12/13/2025

05:50 PM Ruby Feature #21721: Allow `Queue` and `SizedQueue` to be used as LIFO queues
Maybe this is off-topic, but I think this stack that internally use queue can perform closer to Thread::Queue.
~~~ruby
def pop(timeout: nil)
if @dummy_resource_queue.deq(timeout:)
@real_resource_array.pop
end
end
def <<(...
tompng (tomoya ishida)

12/12/2025

04:40 PM Ruby Revision b8ba9ceb (git): Fix binding.implicit_parameters_get/defined segfault when wrong name string is passed (#15530)
tompng (tomoya ishida)

12/02/2025

05:15 PM Ruby Bug #21756: Ripper fails to parse pathological heredoc
Looks like there is one more separate issue here. Prism and parse.y execution result differs.
~~~ruby
p <<-A, %w[a\
A
b c]
# Prism: ["a\n", "b", "c"]
# parse.y: ["a\nb", "c"]
~~~
Changing `%w` to `%W`, Prism and parse.y are the...
tompng (tomoya ishida)
05:08 PM Ruby Bug #21758 (Closed): Prism fails to parse heredoc within %Q literal split by another heredoc
Prism fails to parse this code
~~~ruby
<<A; %Q
A
#{<<B}
B
~~~
Parse error:
~~~
a.rb:4: syntax error found (SyntaxError)
2 | A
3 | #{<<B}
> 4 | B
| ^ unexpected constant, expecting end-of-input
~~~
`B` at line 4...
tompng (tomoya ishida)

11/26/2025

06:00 PM Ruby Bug #21714 (Assigned): Prism and parse.y inconsistency in `def a = a b do 1 end`
Endless method definition and command with block are syntax error in parse.y, accepted in Prism.
~~~ruby
def a = a b do 1 end
~~~
Related to https://bugs.ruby-lang.org/issues/17398 and https://bugs.ruby-lang.org/issues/21711
tompng (tomoya ishida)
05:54 PM Ruby Bug #21713 (Assigned): Prism accepts pattern matching in modifier rescue followed by operators that shouldn't be allowed
These are syntax errors in parse.y but accepted in Prism
~~~ruby
a rescue b => c in d
a rescue b in c..
a rescue b => c..
a rescue b => c::itself
a rescue b => c[]
a rescue b => c[0] = 1
a rescue b => c ? 1 : 2
a rescue b => c |...
tompng (tomoya ishida)
05:41 PM Ruby Bug #21712 (Closed): Prism and parse.y inconsistency in command call with block and `.()`
`a b do end.()` `a b do end&.()` are parsed differently.
Prism: parse success, parse.y: SyntaxError
I personally like Prism's behavior: `.()` and `&.()` are accepted where `.f()` and `&.f()` are accepted.
tompng (tomoya ishida)
05:15 PM Ruby Bug #21711 (Open): Prism and parse.y parses private endless method definition with block differently
In the following code, `do end` block is passed to `private` in Prism but passed to `tap` in parse.y
~~~ruby
private def f = tap do end
f # different result(prism: LocalJumpError, parsey: returns main)
~~~
According to https://bug...
tompng (tomoya ishida)

Also available in: Atom