Project

General

Profile

Bug #20307

Updated by nobu (Nobuyoshi Nakada) 3 months ago

I don't think this behavior is expected. 

 ```ruby 
 i = Hash.new.compare_by_identity 
 k = "a" 
 i[k] = 0 
 h = {}.update(i) 
 p h["a"]                                     # => 0 
 k.upcase! 
 p h.keys.include?(k)             # => true 
 p((h.fetch(k) rescue $!)) # => #<KeyError: key not found: "A"> 
 h["A"] = 1   
 p h                                               # => {"A"=>0, "A"=>1} 
 p h.fetch(k)                             # => 1 in 'Hash#fetch': key not found: "A" (KeyError) 
 ``` 

Back