From: Reid Spencer Date: Mon, 11 Apr 2005 05:48:04 +0000 (+0000) Subject: Ensure that the arguments passed to sys::Program::ExecuteAndWait include X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=c30088f9612c949b047884deab045e2421690691;p=oota-llvm.git Ensure that the arguments passed to sys::Program::ExecuteAndWait include the program name as the first argument. Thanks go to Markus Oberhumer for noticing this problem. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@21220 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/llvmc/CompilerDriver.cpp b/tools/llvmc/CompilerDriver.cpp index 6d609c52aa6..1a316c84390 100644 --- a/tools/llvmc/CompilerDriver.cpp +++ b/tools/llvmc/CompilerDriver.cpp @@ -394,8 +394,9 @@ private: // Invoke the program const char** Args = (const char**) - alloca(sizeof(const char*)*(action->args.size()+1)); - for (unsigned i = 0; i != action->args.size(); ++i) + alloca(sizeof(const char*)*(action->args.size()+2)); + Args[0] = action->program.toString().c_str(); + for (unsigned i = 1; i != action->args.size(); ++i) Args[i] = action->args[i].c_str(); Args[action->args.size()] = 0; // null terminate list. if (isSet(TIME_ACTIONS_FLAG)) {