   expectEqual(a, b)
 
   var i = a.withContiguousMutableStorageIfAvailable {
-    $0.update(fromElements: (0..<c).map(String.init))
+    $0.update(fromContentsOf: (0..<c).map(String.init))
   }
   expectEqual(i, c)
   expectEqual(a.compactMap(Int.init).reduce(0,+), c*(c-1)/2)
 
   i = b.withContiguousMutableStorageIfAvailable {
-    $0[...].update(fromElements: (0..<c).map(String.init))
+    $0[...].update(fromContentsOf: (0..<c).map(String.init))
   }
   expectEqual(i, c)
   expectEqual(a, b)

  expectEqual(dba.count, rba.count)
  expectEqual(dbb.count, rbb.count)

  expectEqual(buffer.initialize(fromElements: source.prefix(n)), n)
  tba = rba.moveInitializeMemory(as: Int.self, fromElements: buffer.prefix(n))
  expectEqual(tba.count, n)
  expectTrue(tba.elementsEqual(source.prefix(n)))

  expectEqual(buffer.initialize(fromElements: source.prefix(n)), n)
  tbb = rbb[...].moveInitializeMemory(as: Int.self, fromElements: buffer[..<n])
  expectEqual(tbb.count, n)
  expectTrue(tbb.elementsEqual(tba))


}

UnsafeMutableBufferPointerSliceTests.test(
  "slice.of.UnsafeMutableBufferPointer.initialize.fromContentsOf.Collection"
) {
  let c = 4
  let mb = UnsafeMutableBufferPointer<String>.allocate(capacity: c)
  defer { mb.deallocate() }

  var ct = mb.initialize(fromContentsOf: (1...c).map(String.init))
  expectEqual(ct, c)
  expectEqual(mb.compactMap(Int.init).reduce(0,+), c*(c+1)/2)
  var rb = mb.deinitialize()
  expectEqual(rb.count, c*MemoryLayout<String>.stride)

  ct = mb[...].initialize(fromContentsOf: (1...c).map(String.init))
  expectEqual(ct, c)
  expectEqual(mb.compactMap(Int.init).reduce(0,+), c*(c+1)/2)
  rb = mb[...].deinitialize()
