diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-05-26 16:15:44 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-05-26 16:15:44 +0000 |
commit | f7323f3f65ed9df4ce8c06d5964b739f8c80999a (patch) | |
tree | fc00005587c60b5f5a0d15ed8f5d05b6cdf48358 /clang/tools/driver/driver.cpp | |
parent | 09ac6f21c3611accb56ae9604c8b6743f9aab987 (diff) | |
download | bcm5719-llvm-f7323f3f65ed9df4ce8c06d5964b739f8c80999a.tar.gz bcm5719-llvm-f7323f3f65ed9df4ce8c06d5964b739f8c80999a.zip |
The driver/diagnostic client don't need to be on the heap.
llvm-svn: 72418
Diffstat (limited to 'clang/tools/driver/driver.cpp')
-rw-r--r-- | clang/tools/driver/driver.cpp | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp index e0f28264287..804bef4058c 100644 --- a/clang/tools/driver/driver.cpp +++ b/clang/tools/driver/driver.cpp @@ -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()) |