diff options
author | Dan Gohman <gohman@apple.com> | 2010-08-20 16:45:58 +0000 |
---|---|---|
committer | Dan Gohman <gohman@apple.com> | 2010-08-20 16:45:58 +0000 |
commit | 2189d1a9f330bab72c481712e9bacd9c6b7e5eeb (patch) | |
tree | f1c0885978dac84cc7f6e016c66df233bdc674a6 /llvm/utils/TableGen/TableGen.cpp | |
parent | e9a469115cc10f0458f575f922e1f4a77236d1ad (diff) | |
download | llvm-2189d1a9f330bab72c481712e9bacd9c6b7e5eeb.zip llvm-2189d1a9f330bab72c481712e9bacd9c6b7e5eeb.tar.gz llvm-2189d1a9f330bab72c481712e9bacd9c6b7e5eeb.tar.bz2 |
Convert tablegen to use tool_output_file.
llvm-svn: 111644
Diffstat (limited to 'llvm/utils/TableGen/TableGen.cpp')
-rw-r--r-- | llvm/utils/TableGen/TableGen.cpp | 9 |
1 files changed, 3 insertions, 6 deletions
diff --git a/llvm/utils/TableGen/TableGen.cpp b/llvm/utils/TableGen/TableGen.cpp index 30e4d0f..a544e1d 100644 --- a/llvm/utils/TableGen/TableGen.cpp +++ b/llvm/utils/TableGen/TableGen.cpp @@ -216,16 +216,13 @@ int main(int argc, char **argv) { return 1; std::string Error; - raw_fd_ostream Out(OutputFilename.c_str(), Error); + tool_output_file Out(OutputFilename.c_str(), Error); if (!Error.empty()) { errs() << argv[0] << ": error opening " << OutputFilename << ":" << Error << "\n"; return 1; } - // Make sure the file gets removed if *gasp* tablegen crashes... - sys::RemoveFileOnSignal(sys::Path(OutputFilename)); - try { switch (Action) { case PrintRecords: @@ -339,6 +336,8 @@ int main(int argc, char **argv) { return 1; } + // Declare success. + Out.keep(); return 0; } catch (const TGError &Error) { @@ -353,7 +352,5 @@ int main(int argc, char **argv) { errs() << argv[0] << ": Unknown unexpected exception occurred.\n"; } - if (OutputFilename != "-") - std::remove(OutputFilename.c_str()); // Remove the file, it's broken return 1; } |