// 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