From 2b098e4606358b1ee2f76fd3714fc5f5df26ed47 Mon Sep 17 00:00:00 2001 From: Rafael Espindola Date: Sat, 13 Jun 2015 12:50:07 +0000 Subject: [PATCH] Update for llvm api change. llvm-svn: 239670 --- clang/tools/driver/driver.cpp | 18 ++++-------------- 1 file changed, 4 insertions(+), 14 deletions(-) diff --git a/clang/tools/driver/driver.cpp b/clang/tools/driver/driver.cpp index e1f9367..ff81b8a 100644 --- a/clang/tools/driver/driver.cpp +++ b/clang/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")) { -- 2.7.4