[llvm-commits] [llvm] r93163 - in /llvm/trunk: include/llvm/ADT/StringExtras.h lib/Support/StringExtras.cpp

Benjamin Kramer benny.kra at googlemail.com
Mon Jan 11 10:44:35 PST 2010


Author: d0k
Date: Mon Jan 11 12:44:35 2010
New Revision: 93163

URL: http://llvm.org/viewvc/llvm-project?rev=93163&view=rev
Log:
Turns out llvm-gcc still uses SplitString with a vector. Add it back until I
have a fix.

Modified:
    llvm/trunk/include/llvm/ADT/StringExtras.h
    llvm/trunk/lib/Support/StringExtras.cpp

Modified: llvm/trunk/include/llvm/ADT/StringExtras.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/ADT/StringExtras.h?rev=93163&r1=93162&r2=93163&view=diff

==============================================================================
--- llvm/trunk/include/llvm/ADT/StringExtras.h (original)
+++ llvm/trunk/include/llvm/ADT/StringExtras.h Mon Jan 11 12:44:35 2010
@@ -20,6 +20,7 @@
 #include <cctype>
 #include <cstdio>
 #include <string>
+#include <vector>
 
 namespace llvm {
 template<typename T> class SmallVectorImpl;
@@ -217,6 +218,11 @@
                  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.

Modified: llvm/trunk/lib/Support/StringExtras.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Support/StringExtras.cpp?rev=93163&r1=93162&r2=93163&view=diff

==============================================================================
--- llvm/trunk/lib/Support/StringExtras.cpp (original)
+++ llvm/trunk/lib/Support/StringExtras.cpp Mon Jan 11 12:44:35 2010
@@ -48,6 +48,18 @@
   }
 }
 
+// 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 {





More information about the llvm-commits mailing list