aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/llvm/ADT/StringExtras.h6
-rw-r--r--lib/Support/StringExtras.cpp12
2 files changed, 18 insertions, 0 deletions
diff --git a/include/llvm/ADT/StringExtras.h b/include/llvm/ADT/StringExtras.h
index f58fe8e..2f5c39c 100644
--- a/include/llvm/ADT/StringExtras.h
+++ b/include/llvm/ADT/StringExtras.h
@@ -20,6 +20,7 @@
#include <cctype>
#include <cstdio>
#include <string>
+#include <vector>
namespace llvm {
template<typename T> class SmallVectorImpl;
@@ -217,6 +218,11 @@ void SplitString(StringRef Source,
SmallVectorImpl<StringRef> &OutFragments,
StringRef Delimiters = " \t\n\v\f\r");
+// FIXME: remove when llvm-gcc doesn't use this anymore
+void SplitString(StringRef Source,
+ std::vector<std::string> &OutFragments,
+ StringRef Delimiters = " \t\n\v\f\r");
+
/// HashString - Hash funtion for strings.
///
/// This is the Bernstein hash function.
diff --git a/lib/Support/StringExtras.cpp b/lib/Support/StringExtras.cpp
index 65b41d5..2363ad6 100644
--- a/lib/Support/StringExtras.cpp
+++ b/lib/Support/StringExtras.cpp
@@ -48,6 +48,18 @@ void llvm::SplitString(StringRef Source,
}
}
+// FIXME: remove when llvm-gcc doesn't use this anymore
+void llvm::SplitString(StringRef Source,
+ std::vector<std::string> &OutFragments,
+ StringRef Delimiters) {
+ StringRef S2, S;
+ tie(S2, S) = getToken(Source, Delimiters);
+ while (!S2.empty()) {
+ OutFragments.push_back(S2);
+ tie(S2, S) = getToken(S, Delimiters);
+ }
+}
+
void llvm::StringRef::split(SmallVectorImpl<StringRef> &A,
StringRef Separators, int MaxSplit,
bool KeepEmpty) const {