use the new MemoryBuffer interfaces to simplify error reporting in clients.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36900 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/tools/llvm-link/llvm-link.cpp b/tools/llvm-link/llvm-link.cpp
index b19213a..28be3a9 100644
--- a/tools/llvm-link/llvm-link.cpp
+++ b/tools/llvm-link/llvm-link.cpp
@@ -58,13 +58,11 @@
Module* Result = 0;
const std::string &FNStr = Filename.toString();
- MemoryBuffer *Buffer = MemoryBuffer::getFileOrSTDIN(&FNStr[0],
- FNStr.size());
- if (Buffer == 0)
- ErrorMessage = "Error reading file '" + FNStr + "'";
- else
+ if (MemoryBuffer *Buffer = MemoryBuffer::getFileOrSTDIN(FNStr,
+ &ErrorMessage)) {
Result = ParseBitcodeFile(Buffer, &ErrorMessage);
- delete Buffer;
+ delete Buffer;
+ }
if (Result) return std::auto_ptr<Module>(Result); // Load successful!
if (Verbose) {