blob: c0902da27f2364092a7579c2acc968bce29e7fa5 [file] [log] [blame]
// RUN: %target-swift-frontend -emit-ir %s -o - | FileCheck %s
func someValidPointer<T>() -> UnsafeMutablePointer<T> { fatalError() }
class HeapStorage<Value, Element> {
public final func withUnsafeMutablePointerToElements<R>(
body: (UnsafeMutablePointer<Element>) -> R
) -> R { return body(someValidPointer()) }
}
struct CountAndCapacity {}
class TestHeapStorage<T> : HeapStorage<CountAndCapacity,T> {
deinit {
withUnsafeMutablePointerToElements {
// Don't crash when mangling this closure's name.
// CHECK: _TFFC4main15TestHeapStoragedU_FGSpQ__T_
// ---> main.TestHeapStorage.deinit.(closure #1)
(p: UnsafeMutablePointer<T>) -> () in
}
}
}