From: Rafael Espindola Date: Sat, 13 Jun 2015 12:50:07 +0000 (+0000) Subject: Update for llvm api change. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=57781ca62a2a7239bb5c9e1984ab3e0bc0f745f8;p=clang Update for llvm api change. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@239670 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/driver/driver.cpp b/tools/driver/driver.cpp index e1f9367b0f..ff81b8ac40 100644 --- a/tools/driver/driver.cpp +++ b/tools/driver/driver.cpp @@ -43,6 +43,7 @@ #include "llvm/Support/Program.h" #include "llvm/Support/Regex.h" #include "llvm/Support/Signals.h" +#include "llvm/Support/StringSaver.h" #include "llvm/Support/TargetRegistry.h" #include "llvm/Support/TargetSelect.h" #include "llvm/Support/Timer.h" @@ -290,18 +291,6 @@ static void ParseProgName(SmallVectorImpl &ArgVector, } } -namespace { - class StringSetSaver : public llvm::cl::StringSaver { - public: - StringSetSaver(std::set &Storage) : Storage(Storage) {} - const char *SaveString(const char *Str) override { - return GetStableCStr(Storage, Str); - } - private: - std::set &Storage; - }; -} - static void SetBackdoorDriverOutputsFromEnvVars(Driver &TheDriver) { // Handle CC_PRINT_OPTIONS and CC_PRINT_OPTIONS_FILE. TheDriver.CCPrintOptions = !!::getenv("CC_PRINT_OPTIONS"); @@ -391,8 +380,8 @@ int main(int argc_, const char **argv_) { return 1; } - std::set SavedStrings; - StringSetSaver Saver(SavedStrings); + llvm::BumpPtrAllocator A; + llvm::BumpPtrStringSaver Saver(A); // Determines whether we want nullptr markers in argv to indicate response // files end-of-lines. We only use this for the /LINK driver argument. @@ -426,6 +415,7 @@ int main(int argc_, const char **argv_) { } } + std::set SavedStrings; // Handle CCC_OVERRIDE_OPTIONS, used for editing a command line behind the // scenes. if (const char *OverrideStr = ::getenv("CCC_OVERRIDE_OPTIONS")) {