General

Profile

qnighy (Masaki Hara)

  • Login: qnighy
  • Registered on: 11/30/2019
  • Last sign in: 03/16/2025

Issues

open closed Total
Assigned issues 0 0 0
Reported issues 1 12 13

Activity

03/21/2025

04:46 AM Ruby Bug #18878: parse.y: Foo::Bar {} is inconsistently rejected
Now `Foo::Bar {}` parses in parse.y too, but `Foo::Bar {} + 1` still doesn't parse unlike in Prism. qnighy (Masaki Hara)

03/16/2025

07:20 AM Ruby Bug #21186: Inconsistent parsing of ?あand 0
Added comparison with escaped chars qnighy (Masaki Hara)
05:13 AM Ruby Bug #21186 (Closed): Inconsistent parsing of ?あand 0
`?あand 0` has inconsistent behavior between Prism and parse.y.
```console
% ./miniruby --parser=parse.y -e "?aand 0"
-e:1: syntax error, unexpected '?'
?aand 0
./miniruby: compile error (SyntaxError)
% ./miniruby --parser=parse...
qnighy (Masaki Hara)

02/23/2025

01:28 AM Ruby Bug #21153 (Closed): ::Foo ||= p 1 should parse
There is an inconsistency between how `Foo` and `::Foo` are handled:
```console
% ./miniruby --parser=parse.y -e "Foo ||= p 1"
1
% ./miniruby --parser=parse.y -e "::Foo ||= p 1"
-e:1: syntax error, unexpected integer literal, expe...
qnighy (Masaki Hara)

02/13/2025

07:03 AM Ruby Bug #21029: Prism behavior for `defined? (;x)` differs
> I think compound expressions (expressions (including empty) concatenated by semicolons) should be “expression” as `parse.y`.
Interestingly enough though:
```
% ruby --parser=prism -e "p defined? (x;)"
nil
% ruby --parser=parse...
qnighy (Masaki Hara)

01/12/2025

02:58 AM Ruby Bug #21029 (Closed): Prism behavior for `defined? (;x)` differs
Prism has a different behavior for `(;expr)` when used in `defined?` predicate:
```console
% ./miniruby --parser=prism -e "p defined? (;x)"
nil
% ./miniruby --parser=parse.y -e "p defined? (;x)"
"expression"
```
Although not a...
qnighy (Masaki Hara)

05/11/2024

01:12 AM Ruby Bug #20481 (Closed): Untrusted Marshal data can overwrite class/module instance variables
The following code snippet shows how class/module instance variables can be overwritten in Ruby. Checked on Ruby 3.3.1.
```ruby
class <<Object; attr_reader :foo; end
p Object.foo
# => nil
# Marshal.load("\x04\x08Ic\x0BObject\x...
qnighy (Masaki Hara)

09/02/2022

03:22 AM Ruby Bug #18991 (Closed): False LocalJumpError when branch coverage is enabled
Enabling branch coverage leads to a false LocalJumpError where it should not be raised.
```ruby
# test.rb
require "coverage"
Coverage.start(branches: true)
# Coverage.start(lines: true)
load "./test2.rb"
```
```ruby
# test...
qnighy (Masaki Hara)

07/11/2022

12:09 PM Ruby Bug #18905: :"@=".inspect is non-evaluatable
sawa (Tsuyoshi Sawada) wrote in #note-1:
> However, among them, `:"@=".inspect` and `:"$$$$=".inspect` do not include quotations. Is that what you are at?
Ah yes, the second example is my mistake. It should have been `:"[=]="` or suc...
qnighy (Masaki Hara)

07/09/2022

06:30 AM Ruby Bug #18905 (Closed): :"@=".inspect is non-evaluatable
There is an edge case where `Symbol#inspect` returns a non-evaluatable expression:
```ruby
:"@=".inspect # => :@=
:"[][]=".inspect # => :[][]=
:"$$$$=" # => :$$$$=
```
More specifically, the quotations are stripped if the follo...
qnighy (Masaki Hara)

Also available in: Atom