diff options
author | Chris Lattner <sabre@nondot.org> | 2001-10-24 01:15:12 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2001-10-24 01:15:12 +0000 |
commit | daebd7508d5dfc42b144cf044f9869f9db753923 (patch) | |
tree | 105c75a461b08201afddd49976d6083e2195089b /llvm/tools/llvm-link/llvm-link.cpp | |
parent | 6a7f02082b800bce4fc2e37a3ad50279abc3a663 (diff) | |
download | bcm5719-llvm-daebd7508d5dfc42b144cf044f9869f9db753923.tar.gz bcm5719-llvm-daebd7508d5dfc42b144cf044f9869f9db753923.zip |
Changes to get some meaningful feedback from the bytecode reader. At some point this stuff should all be exception driven, but for now it is not.
llvm-svn: 970
Diffstat (limited to 'llvm/tools/llvm-link/llvm-link.cpp')
-rw-r--r-- | llvm/tools/llvm-link/llvm-link.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/llvm/tools/llvm-link/llvm-link.cpp b/llvm/tools/llvm-link/llvm-link.cpp index cdd54346116..0ae39228d9c 100644 --- a/llvm/tools/llvm-link/llvm-link.cpp +++ b/llvm/tools/llvm-link/llvm-link.cpp @@ -33,26 +33,30 @@ int main(int argc, char **argv) { assert(InputFilenames.size() > 0 && "OneOrMore is not working"); // TODO: TEST argv[0] - - + string ErrorMessage; + if (Verbose) cerr << "Loading '" << InputFilenames[0] << "'\n"; - std::auto_ptr<Module> Composite(ParseBytecodeFile(InputFilenames[0])); + std::auto_ptr<Module> Composite(ParseBytecodeFile(InputFilenames[0], + &ErrorMessage)); if (Composite.get() == 0) { - cerr << "Error opening bytecode file: '" << InputFilenames[0] << "'\n"; + cerr << "Error opening bytecode file: '" << InputFilenames[0] << "'"; + if (ErrorMessage.size()) cerr << ": " << ErrorMessage; + cerr << endl; return 1; } for (unsigned i = 1; i < InputFilenames.size(); ++i) { if (Verbose) cerr << "Loading '" << InputFilenames[i] << "'\n"; - auto_ptr<Module> M(ParseBytecodeFile(InputFilenames[i])); + auto_ptr<Module> M(ParseBytecodeFile(InputFilenames[i], &ErrorMessage)); if (M.get() == 0) { - cerr << "Error opening bytecode file: '" << InputFilenames[i] << "'\n"; + cerr << "Error opening bytecode file: '" << InputFilenames[i] << "'"; + if (ErrorMessage.size()) cerr << ": " << ErrorMessage; + cerr << endl; return 1; } if (Verbose) cerr << "Linking in '" << InputFilenames[i] << "'\n"; - string ErrorMessage; if (LinkModules(Composite.get(), M.get(), &ErrorMessage)) { cerr << "Error linking in '" << InputFilenames[i] << "': " << ErrorMessage << endl; |