File tree Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Expand file tree Collapse file tree 1 file changed +24
-0
lines changed Original file line number Diff line number Diff line change @@ -179,6 +179,30 @@ ${SelfName}TestSuite.test("nilBaseAddress") {
179179 expectEqualSequence([], emptyBuffer)
180180}
181181
182+ % if IsMutable:
183+ ${SelfName}TestSuite.test("copyFromEmptyBuffer") {
184+ % if IsRaw:
185+ var memory: UnsafeMutableRawPointer
186+ let empty = UnsafeRawBufferPointer(start: nil, count: 0)
187+ % else:
188+ var memory: UnsafeMutablePointer<Float>
189+ let empty = UnsafeBufferPointer<Float>(start: nil, count: 0)
190+ % end
191+
192+ let count = 4
193+ memory = allocateFor${Raw}Buffer(count: count)
194+ defer { deallocateFor${Raw}Buffer(memory, count: count) }
195+
196+ let buffer = UnsafeMutable${Raw}BufferPointer(start: memory, count: count)
197+
198+ % if IsRaw:
199+ buffer.copyMemory(from: empty)
200+ % else:
201+ _ = buffer.initialize(from: empty)
202+ % end
203+ }
204+ % end
205+
182206${SelfName}TestSuite.test("nonNilButEmpty") {
183207 let emptyAllocated = UnsafeMutablePointer<Float>.allocate(capacity: 0)
184208 defer { emptyAllocated.deallocate() }
You can’t perform that action at this time.
0 commit comments