Issue #14355 has been reported by Winklerbugs (Bart Winkler).

----------------------------------------
Bug #14355: clone issue
https://bugs.ruby-lang.org/issues/14355

* Author: Winklerbugs (Bart Winkler)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 1.9.3 & 2.2.2
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
#!/usr/bin/env ruby
aMutantSpeak = [[nil,nil],[nil,nil]]
aDogSpeak = aMutantSpeak.clone
aCatSpeak = aMutantSpeak.clone
aDogSpeak[0][0] = "W"
aCatSpeak[0][0] = "m"
aCatSpeak[0][1] = "e"
aDogSpeak[0][1] = "O"
aCatSpeak[1][0] = "o"
aDogSpeak[1][0] = "O"
aDogSpeak[1][1] = "F"
aCatSpeak[1][1] = "w"
print "aMutantSpeak ",  aMutantSpeak
puts
print "aDogSpeak ", aDogSpeak
puts
print "aCatSpeak ", aCatSpeak

#all three arrays are now [["m","O"],["O","w"]]

# This is what I wanted:
# aMutantSpeak = [[nil,nil],[nil,nil]]
# aDogSpeak = [["W","O"],["O","F"]]
# aCatSpeak = [["m","e"],["o","w"]]
# I think this is what clone should do.
 

---Files--------------------------------
MutantSpeak.rb (402 Bytes)


-- 
https://bugs.ruby-lang.org/

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>