Remove WTF::String::operator+=
authorabarth@webkit.org <abarth@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Sep 2012 07:21:03 +0000 (07:21 +0000)
committerabarth@webkit.org <abarth@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 6 Sep 2012 07:21:03 +0000 (07:21 +0000)
https://bugs.webkit.org/show_bug.cgi?id=95797

Patch by Adam Barth <abarth@chromium.org> on 2012-09-06
Reviewed by Sam Weinig.

This patch encloses WTF::String::operator+= in an ifdef so that we can
gradually remove it from the various port-specific files. The ifdef
lets us whitelist use of operator+= in individual files during the
transition.

* wtf/Platform.h
* wtf/text/WTFString.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@127702 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WTF/ChangeLog
Source/WTF/wtf/Platform.h
Source/WTF/wtf/text/WTFString.h

index 7e5eabe..716cb60 100644 (file)
@@ -1,3 +1,18 @@
+2012-09-06  Adam Barth  <abarth@chromium.org>
+
+        Remove WTF::String::operator+=
+        https://bugs.webkit.org/show_bug.cgi?id=95797
+
+        Reviewed by Sam Weinig.
+
+        This patch encloses WTF::String::operator+= in an ifdef so that we can
+        gradually remove it from the various port-specific files. The ifdef
+        lets us whitelist use of operator+= in individual files during the
+        transition.
+
+        * wtf/Platform.h
+        * wtf/text/WTFString.h:
+
 2012-09-05  Gabor Rapcsanyi  <rgabor@webkit.org>
 
         DFG JIT doesn't work properly on ARM hardfp
index 51c898f..13adf82 100644 (file)
 #define WTF_USE_ZLIB 1
 #endif
 
+#if PLATFORM(QT) || PLATFORM(GTK) || PLATFORM(WIN)
+#define WTF_DEPRECATED_STRING_OPERATORS
+#endif
+
 #if PLATFORM(QT)
 #include <qglobal.h>
 #if defined(QT_OPENGL_ES_2) && !defined(WTF_USE_OPENGL_ES_2)
index 91d6d73..e2007d6 100644 (file)
@@ -466,7 +466,9 @@ QDataStream& operator<<(QDataStream& stream, const String& str);
 QDataStream& operator>>(QDataStream& stream, String& str);
 #endif
 
+#ifdef WTF_DEPRECATED_STRING_OPERATORS
 inline String& operator+=(String& a, const String& b) { a.append(b); return a; }
+#endif
 
 inline bool operator==(const String& a, const String& b) { return equal(a.impl(), b.impl()); }
 inline bool operator==(const String& a, const LChar* b) { return equal(a.impl(), b); }