The driver/diagnostic client don't need to be on the heap.

llvm-svn: 72418
This commit is contained in:
Daniel Dunbar 2009-05-26 16:15:44 +00:00
parent 09ac6f21c3
commit f7323f3f65
1 changed files with 10 additions and 12 deletions

View File

@ -169,15 +169,13 @@ int main(int argc, const char **argv) {
llvm::PrettyStackTraceProgram X(argc, argv);
llvm::sys::Path Path = GetExecutablePath(argv[0]);
llvm::OwningPtr<DiagnosticClient>
DiagClient(new DriverDiagnosticPrinter(Path.getBasename(), llvm::errs()));
DriverDiagnosticPrinter DiagClient(Path.getBasename(), llvm::errs());
Diagnostic Diags(DiagClient.get());
Diagnostic Diags(&DiagClient);
llvm::OwningPtr<Driver>
TheDriver(new Driver(Path.getBasename().c_str(), Path.getDirname().c_str(),
llvm::sys::getHostTriple().c_str(),
"a.out", Diags));
Driver TheDriver(Path.getBasename().c_str(), Path.getDirname().c_str(),
llvm::sys::getHostTriple().c_str(),
"a.out", Diags);
llvm::OwningPtr<Compilation> C;
@ -190,8 +188,8 @@ int main(int argc, const char **argv) {
ApplyQAOverride(StringPointers, OverrideStr, SavedStrings);
C.reset(TheDriver->BuildCompilation(StringPointers.size(),
&StringPointers[0]));
C.reset(TheDriver.BuildCompilation(StringPointers.size(),
&StringPointers[0]));
} else if (const char *Cur = ::getenv("CCC_ADD_ARGS")) {
std::vector<const char*> StringPointers;
@ -214,10 +212,10 @@ int main(int argc, const char **argv) {
StringPointers.insert(StringPointers.end(), argv + 1, argv + argc);
C.reset(TheDriver->BuildCompilation(StringPointers.size(),
&StringPointers[0]));
C.reset(TheDriver.BuildCompilation(StringPointers.size(),
&StringPointers[0]));
} else
C.reset(TheDriver->BuildCompilation(argc, argv));
C.reset(TheDriver.BuildCompilation(argc, argv));
int Res = 0;
if (C.get())