Bug #15455
closedIn v2.6.0 the return value of `each_with_object` and `each_object` is truncated when the object is a hash.
Description
RUBY VERSION: 2.6.0 (2018-12-23 patchlevel -1)
a = [1, 2, 3]
a.each_with_object([]) #=> #<Enumerator: [1, 2, 3]:each_with_object([])> a.each_with_object(1..3) #=> #<Enumerator: [1, 2, 3]:each_with_object(1..3)> a.each_with_object("cat") #=> #<Enumerator: [1, 2, 3]:each_with_object("cat")>
So far so good. But there is a problem when the object is a hash.
a.each_with_object({}) #=> #<Enumerator: [1, 2, 3]:each_with_objec)> a.each_with_object(Hash.new(0)) #=> #<Enumerator: [1, 2, 3]:each_with_objec)> a.each.with_object(Hash.new(0)) #=> #<Enumerator: #<Enumerator: [1, 2, 3]:each>:with_objec)>
This problem does not occur with v2.5.3.
Updated by shevegen (Robert A. Heiler) almost 6 years ago
X-mas day change doable? :)
Updated by CaryInVictoria (Cary Swoveland) almost 6 years ago
- Description updated (diff)
Corrected a tiny typo.
Updated by nobu (Nobuyoshi Nakada) almost 6 years ago
- Status changed from Open to Closed
Applied in changeset trunk|r66519.
enumerator.c: fix inspect with the last empty hash
[ruby-core:90685] [Bug #15455]