https://github.com/ruby/ruby/pull/9528
https://github.com/ruby/ruby/pull/9526
https://github.com/ruby/ruby/pull/9521
