From: ruby-core@... Date: 2014-11-30T21:14:40+00:00 Subject: [ruby-core:66596] [ruby-trunk - Bug #10557] Block not given when the argument is a string Issue #10557 has been updated by Marc-Andre Lafortune. Category set to core Priority changed from Normal to Urgent Ouch. ---------------------------------------- Bug #10557: Block not given when the argument is a string https://bugs.ruby-lang.org/issues/10557#change-50212 * Author: Bartosz Kopinski * Status: Open * Priority: Urgent * Assignee: * Category: core * Target version: current: 2.2.0 * ruby -v: ruby 2.2.0dev (2014-11-30 trunk 48655) [x86_64-darwin14] * Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN ---------------------------------------- This seems really weird and random. Can anyone else confirm it's bug? ```ruby class Klass def [](_) block_given? end end # ruby 2.1.5p273 (2014-11-13 revision 48405) [x86_64-darwin14.0] Klass.new.[](nil){ } # => true Klass.new.[](0){ } # => true Klass.new.[](false){ } # => true Klass.new.[](''){ } # => true # ruby 2.2.0dev (2014-11-30 trunk 48655) [x86_64-darwin14] Klass.new.[](nil){ } # => true Klass.new.[](0){ } # => true Klass.new.[](false){ } # => true Klass.new.[](''){ } # => false ``` -- https://bugs.ruby-lang.org/