Update slang for LLVM rebase to r256229
Bug: http://b/26987366
Change-Id: I816e6ad4a1d43d681f3d022d119e3082702251a1
diff --git a/llvm-rs-cc.cpp b/llvm-rs-cc.cpp
index 631e9b7..201db3a 100644
--- a/llvm-rs-cc.cpp
+++ b/llvm-rs-cc.cpp
@@ -47,16 +47,18 @@
#include <string>
namespace {
-class StringSet : public llvm::StringSaver {
+class StringSet {
public:
- const char *saveImpl(llvm::StringRef Str) override {
- return Strings.insert(Str.str()).first->c_str();
+ const char *save(const char *Str) {
+ return Strings.save(Str);
}
- StringSet() : llvm::StringSaver(A), A() {}
+ StringSet() : Strings(A), A() {}
+
+ llvm::StringSaver & getStringSaver() { return Strings; }
private:
- std::set<std::string> Strings;
+ llvm::StringSaver Strings;
llvm::BumpPtrAllocator A;
};
}
@@ -230,7 +232,7 @@
llvm::IntrusiveRefCntPtr<clang::DiagnosticOptions> DiagOpts =
new clang::DiagnosticOptions();
if (!slang::ParseArguments(llvm::makeArrayRef(argv, argc), Inputs, Opts,
- *DiagOpts, SavedStrings)) {
+ *DiagOpts, SavedStrings.getStringSaver())) {
// Exits when there's any error occurred during parsing the arguments
return 1;
}