ParseFile() may throw, so extend the try/catch to handle that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131004 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Jim Grosbach 2011-05-06 18:39:28 +00:00
parent 9dabb78519
commit 96883ec700

View File

@ -228,19 +228,19 @@ int main(int argc, char **argv) {
cl::ParseCommandLineOptions(argc, argv);
// Parse the input file.
if (ParseFile(InputFilename, IncludeDirs, SrcMgr, Records))
return 1;
std::string Error;
tool_output_file Out(OutputFilename.c_str(), Error);
if (!Error.empty()) {
errs() << argv[0] << ": error opening " << OutputFilename
<< ":" << Error << "\n";
return 1;
}
try {
// Parse the input file.
if (ParseFile(InputFilename, IncludeDirs, SrcMgr, Records))
return 1;
std::string Error;
tool_output_file Out(OutputFilename.c_str(), Error);
if (!Error.empty()) {
errs() << argv[0] << ": error opening " << OutputFilename
<< ":" << Error << "\n";
return 1;
}
switch (Action) {
case PrintRecords:
Out.os() << Records; // No argument, dump all contents