diff options
author | Alexander Kornienko <alexfh@google.com> | 2017-09-13 17:03:58 +0000 |
---|---|---|
committer | Alexander Kornienko <alexfh@google.com> | 2017-09-13 17:03:58 +0000 |
commit | 9707aa74d6641078e00e44a7885b195113d006c6 (patch) | |
tree | 8444af1929a15fadf283e358b3bbf2608a47bb61 /clang/lib/Driver/Compilation.cpp | |
parent | 208eecd57fd7f2b2072f70f8fe81f1f5dd68267a (diff) | |
download | llvm-9707aa74d6641078e00e44a7885b195113d006c6.zip llvm-9707aa74d6641078e00e44a7885b195113d006c6.tar.gz llvm-9707aa74d6641078e00e44a7885b195113d006c6.tar.bz2 |
Update users of llvm::sys::ExecuteAndWait etc.
Summary: Clang part of https://reviews.llvm.org/D37563
Reviewers: bkramer
Subscribers: vsk, cfe-commits
Differential Revision: https://reviews.llvm.org/D37564
llvm-svn: 313156
Diffstat (limited to 'clang/lib/Driver/Compilation.cpp')
-rw-r--r-- | clang/lib/Driver/Compilation.cpp | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/clang/lib/Driver/Compilation.cpp b/clang/lib/Driver/Compilation.cpp index 3ddd648..bffcf70 100644 --- a/clang/lib/Driver/Compilation.cpp +++ b/clang/lib/Driver/Compilation.cpp @@ -26,8 +26,8 @@ Compilation::Compilation(const Driver &D, const ToolChain &_DefaultToolChain, InputArgList *_Args, DerivedArgList *_TranslatedArgs, bool ContainsError) : TheDriver(D), DefaultToolChain(_DefaultToolChain), ActiveOffloadMask(0u), - Args(_Args), TranslatedArgs(_TranslatedArgs), Redirects(nullptr), - ForDiagnostics(false), ContainsError(ContainsError) { + Args(_Args), TranslatedArgs(_TranslatedArgs), ForDiagnostics(false), + ContainsError(ContainsError) { // The offloading host toolchain is the default tool chain. OrderedOffloadingToolchains.insert( std::make_pair(Action::OFK_Host, &DefaultToolChain)); @@ -41,14 +41,6 @@ Compilation::~Compilation() { for (auto Arg : TCArgs) if (Arg.second != TranslatedArgs) delete Arg.second; - - // Free redirections of stdout/stderr. - if (Redirects) { - delete Redirects[0]; - delete Redirects[1]; - delete Redirects[2]; - delete [] Redirects; - } } const DerivedArgList & @@ -214,16 +206,13 @@ void Compilation::initCompilationForDiagnostics() { TranslatedArgs->ClaimAllArgs(); // Redirect stdout/stderr to /dev/null. - Redirects = new const StringRef*[3](); - Redirects[0] = nullptr; - Redirects[1] = new StringRef(); - Redirects[2] = new StringRef(); + Redirects = {None, {""}, {""}}; } StringRef Compilation::getSysRoot() const { return getDriver().SysRoot; } -void Compilation::Redirect(const StringRef** Redirects) { +void Compilation::Redirect(ArrayRef<Optional<StringRef>> Redirects) { this->Redirects = Redirects; } |