Project

General

Profile

Bug #11961

Array#delete_if gets an unexpected behavior when Array is modified during execution

Added by elionne (Stéphane Clérambault) about 3 years ago. Updated about 3 years ago.

Status:
Open
Priority:
Normal
Target version:
-
ruby -v:
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-linux]
[ruby-core:72735]

Description

However strange is the code below the behavior is not which expected.

a = %w(aue)
a.delete_if { a.delete_if { true }; true}
p a

with ruby 2.3 it produces:

["aue", false, false]

with ruby 2.2 it procudes:

[]

After a git bisect I found 5ec029d1ea52224a365a11987379c3e9de74b47a (r49255) commit for feature #10714 as possible culprit.

History

Updated by elionne (Stéphane Clérambault) about 3 years ago

  • Subject changed from Array#delete_if get an expected behavior when Array in modified during treatment to Array#delete_if gets an unexpected behavior when Array is modified during execution

Also available in: Atom PDF