If cont.size() is 0, the expression &_contentPool[result] has undefined
behaivior because it indexes past the end of _contentPool.

llvm-svn: 149427
diff --git a/lld/lib/Core/NativeWriter.cpp b/lld/lib/Core/NativeWriter.cpp
index d5fa925..2880a59 100644
--- a/lld/lib/Core/NativeWriter.cpp
+++ b/lld/lib/Core/NativeWriter.cpp
@@ -128,8 +128,7 @@
       return 0;
     uint32_t result = _contentPool.size();
     llvm::ArrayRef<uint8_t> cont = atom.rawContent();
-    _contentPool.insert(_contentPool.end(), cont.size(), 0);
-    memcpy(&_contentPool[result], cont.data(), cont.size());
+    _contentPool.insert(_contentPool.end(), cont.begin(), cont.end());
     return result;
   }