summaryrefslogtreecommitdiffstats
path: root/clang/tools/driver/driver.cpp
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2009-05-26 16:15:44 +0000
committerDaniel Dunbar <daniel@zuster.org>2009-05-26 16:15:44 +0000
commitf7323f3f65ed9df4ce8c06d5964b739f8c80999a (patch)
treefc00005587c60b5f5a0d15ed8f5d05b6cdf48358 /clang/tools/driver/driver.cpp
parent09ac6f21c3611accb56ae9604c8b6743f9aab987 (diff)
downloadbcm5719-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.cpp22
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())
OpenPOWER on IntegriCloud