blob: 4eacea17b86993525d101f854017b0f6ec3e4207 [file] [log] [blame]
// RUN: %target-run-simple-swift | %FileCheck %s
// REQUIRES: executable_test
class Owner {
var children: [Child] = []
func addChild(_ c: Child) {
children.append(c)
}
func removeChildren() {
children.removeAll()
}
func test() {
// Overflow of unowned ref count on 32bit.
for _ in 0 ..< 500 {
addChild(Child(self))
}
removeChildren()
}
}
class Child {
unowned var owner: Owner
init(_ o: Owner) {
owner = o
}
}
let o = Owner()
o.test()
print("success")
// CHECK: success