Doc: Remove the mention of non-atomic convenience operators in QAtomic
authorThiago Macieira <thiago.macieira@intel.com>
Tue, 11 Dec 2012 20:06:31 +0000 (12:06 -0800)
committerThe Qt Project <gerrit-noreply@qt-project.org>
Wed, 12 Dec 2012 00:17:19 +0000 (01:17 +0100)
For two reasons: 1) those operators are gone and 2) the ones that remain
are atomic.

Task-number: QTBUG-28532
Task-number: QTBUG-24627
Change-Id: I1e9d1b076d923546c1ee3d45f312066590f97416
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
dist/changes-5.0.0
src/corelib/thread/qatomic.cpp

index 3749f18..a969fc8 100644 (file)
@@ -11,6 +11,12 @@ information about a particular change.
 *                       Source incompatible changes                        *
 ****************************************************************************
 
+- QAtomicInt's and QAtomicPointer's non-atomic convenience methods
+  (i.e., operator=, operator int / operator T*, operator!, operator==,
+  operator!= and operator->) have been removed as they did implicit
+  loads and stores of unspecified memory ordering. Code dealing with
+  is expected to use load(), loadAquire(), store() and storeRelease()
+  as necessary instead.
 
 - QObject
   * The signatures of the connectNotify() and disconnectNotify() functions
index 87f1d84..791f410 100644 (file)
     The QAtomicInt class provides atomic reference counting, test-and-set, fetch-and-store,
     and fetch-and-add for integers.
 
-    \section1 Non-atomic convenience operators
-
-    For convenience, QAtomicInt provides integer comparison, cast, and
-    assignment operators. Note that a combination of these operators
-    is \e not an atomic operation.
-
     \section1 The Atomic API
 
     \section2 Reference counting
     An \e atomic operation is a complex operation that completes without interruption.
     The QAtomicPointer class provides atomic test-and-set, fetch-and-store, and fetch-and-add for pointers.
 
-    \section1 Non-atomic convenience operators
-
-    For convenience, QAtomicPointer provides pointer comparison, cast,
-    dereference, and assignment operators. Note that these operators
-    are \e not atomic.
-
     \section1 The Atomic API
 
     \section2 Memory ordering