diff options
author | Davide Italiano <davide@freebsd.org> | 2015-07-26 05:35:59 +0000 |
---|---|---|
committer | Davide Italiano <davide@freebsd.org> | 2015-07-26 05:35:59 +0000 |
commit | 4376ddb88e2a1a92a216ca15757bda66530f829f (patch) | |
tree | 428f05d4ead2c02f46e886d5b3a3d2973a587ac7 /llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp | |
parent | 1da7df37006055ef3a75a83c06638d27647b91a5 (diff) | |
download | bcm5719-llvm-4376ddb88e2a1a92a216ca15757bda66530f829f.tar.gz bcm5719-llvm-4376ddb88e2a1a92a216ca15757bda66530f829f.zip |
[llvm-dwarfump] Don't rely on global state, part 3.
Some tools used to rely on a global static variable to keep track of the
return value for main(). I changed llvm-cxxdump to use exit(1)
and Rafael shortly after did the same with llvm-readobj. This is
(yet) another step towards the goal.
llvm-svn: 243240
Diffstat (limited to 'llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp')
-rw-r--r-- | llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp b/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp index db3fcf6ee7b..cd48d81c8de 100644 --- a/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp +++ b/llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp @@ -69,27 +69,22 @@ DumpType("debug-dump", cl::init(DIDT_All), clEnumValN(DIDT_StrOffsetsDwo, "str_offsets.dwo", ".debug_str_offsets.dwo"), clEnumValEnd)); -static int ReturnValue = EXIT_SUCCESS; - -static bool error(StringRef Filename, std::error_code EC) { +static void error(StringRef Filename, std::error_code EC) { if (!EC) - return false; + return; errs() << Filename << ": " << EC.message() << "\n"; - ReturnValue = EXIT_FAILURE; - return true; + exit(1); } static void DumpInput(StringRef Filename) { ErrorOr<std::unique_ptr<MemoryBuffer>> BuffOrErr = MemoryBuffer::getFileOrSTDIN(Filename); - if (error(Filename, BuffOrErr.getError())) - return; + error(Filename, BuffOrErr.getError()); std::unique_ptr<MemoryBuffer> Buff = std::move(BuffOrErr.get()); ErrorOr<std::unique_ptr<ObjectFile>> ObjOrErr = ObjectFile::createObjectFile(Buff->getMemBufferRef()); - if (error(Filename, ObjOrErr.getError())) - return; + error(Filename, ObjOrErr.getError()); ObjectFile &Obj = *ObjOrErr.get(); std::unique_ptr<DIContext> DICtx(new DWARFContextInMemory(Obj)); @@ -114,5 +109,5 @@ int main(int argc, char **argv) { std::for_each(InputFilenames.begin(), InputFilenames.end(), DumpInput); - return ReturnValue; + return EXIT_SUCCESS; } |