Add an assertion to make sure we are at least getting argv[0] right.

Use a clearer error message when we fail to load a program.

llvm-svn: 10414
This commit is contained in:
Brian Gaeke 2003-12-12 00:47:19 +00:00
parent e4151eba68
commit 1f147379b7
1 changed files with 2 additions and 1 deletions

View File

@ -120,6 +120,7 @@ int callAsMain(ExecutionEngine *EE, ModuleProvider *MP,
GVArgc.IntVal = Args.size();
GVArgs.push_back(GVArgc); // Arg #0 = argc.
GVArgs.push_back(PTOGV(CreateArgv(EE, Args))); // Arg #1 = argv.
assert(((char **)GVTOP(GVArgs[1]))[0] && "argv[0] was null after CreateArgv");
GVArgs.push_back(PTOGV(CreateArgv(EE, EnvVars))); // Arg #2 = envp.
return EE->run(Fn, GVArgs).IntVal;
}
@ -137,7 +138,7 @@ int main(int argc, char **argv, char * const *envp) {
try {
MP = getBytecodeModuleProvider(InputFile);
} catch (std::string &err) {
std::cerr << "Error parsing '" << InputFile << "': " << err << "\n";
std::cerr << "Error loading program '" << InputFile << "': " << err << "\n";
exit(1);
}