blob: 08c1eae4bce7cdc91a08fef5907157a5cb640c01 [file] [log] [blame]
// RUN: %target-swift-frontend %s -emit-ir -g -o - | %FileCheck %s
class A {
init(handler: (() -> ())) { }
}
class B { }
// CHECK: define {{.*}} @"$S11WeakCapture8functionyyF"()
func function() {
let b = B()
// Ensure that the local b and its weak copy are distinct local variables.
// CHECK: call void @llvm.dbg.{{.*}}(metadata %T11WeakCapture1BC*
// CHECK-SAME: metadata [[B:.*]], metadata
// CHECK: call void @llvm.dbg.{{.*}}(metadata %swift.weak*
// CHECK-NOT: metadata [[B]]
// CHECK: call
A(handler: { [weak b] in
if b != nil { }
})
}
function()