summaryrefslogtreecommitdiffstats
path: root/llvm/tools
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-05-06 05:47:36 +0000
committerChris Lattner <sabre@nondot.org>2007-05-06 05:47:36 +0000
commit957d090ed14460e172b03418341af260c7567cf7 (patch)
treecfbbaf66492e6397936cb72aa9d99559977f3367 /llvm/tools
parentf6dd4d7fca71f98c8dcedbacc85cfb668b0208a4 (diff)
downloadbcm5719-llvm-957d090ed14460e172b03418341af260c7567cf7.tar.gz
bcm5719-llvm-957d090ed14460e172b03418341af260c7567cf7.zip
use an auto_ptr to avoid an explicit delete
llvm-svn: 36850
Diffstat (limited to 'llvm/tools')
-rw-r--r--llvm/tools/llc/llc.cpp12
1 files changed, 5 insertions, 7 deletions
diff --git a/llvm/tools/llc/llc.cpp b/llvm/tools/llc/llc.cpp
index fd0109543a1..d96d164e54f 100644
--- a/llvm/tools/llc/llc.cpp
+++ b/llvm/tools/llc/llc.cpp
@@ -184,14 +184,12 @@ int main(int argc, char **argv) {
std::auto_ptr<Module> M;
if (Bitcode) {
- MemoryBuffer *Buffer = MemoryBuffer::getFileOrSTDIN(&InputFilename[0],
- InputFilename.size());
- if (Buffer == 0)
- ErrorMessage = "Error reading file '" + InputFilename + "'";
+ std::auto_ptr<MemoryBuffer> Buffer(
+ MemoryBuffer::getFileOrSTDIN(&InputFilename[0], InputFilename.size()));
+ if (Buffer.get())
+ M.reset(ParseBitcodeFile(Buffer.get(), &ErrorMessage));
else
- M.reset(ParseBitcodeFile(Buffer, &ErrorMessage));
- delete Buffer;
-
+ ErrorMessage = "Error reading file '" + InputFilename + "'";
} else {
M.reset(ParseBytecodeFile(InputFilename,
Compressor::decompressToNewBuffer,
OpenPOWER on IntegriCloud