QBasicAtomicPointer is forward declared as a class, keep the actual
declaration of QBasicAtomicInteger and QBasicAtomicPointer as class with
all public members (qoldbasicatomic.h does the same).
src/corelib/thread/qbasicatomic.h:158:1: warning:
'QBasicAtomicPointer' defined as a struct template here but
previously declared as a class template [-Wmismatched-tags]
struct QBasicAtomicPointer
^
src/corelib/global/qglobal.h:1861:23: note: did you mean struct here?
template <typename T> class QBasicAtomicPointer;
^~~~~
struct
Change-Id: I38c59c29d7f796dde772e7f403bbf98b04571a08
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
// New atomics
template <typename T>
-struct QBasicAtomicInteger
+class QBasicAtomicInteger
{
+public:
typedef QAtomicOps<T> Ops;
// static check that this is a valid integer
typedef char PermittedIntegerType[QAtomicIntegerTraits<T>::IsInteger ? 1 : -1];
typedef QBasicAtomicInteger<int> QBasicAtomicInt;
template <typename X>
-struct QBasicAtomicPointer
+class QBasicAtomicPointer
{
+public:
typedef X *Type;
typedef QAtomicOps<Type> Ops;
typedef typename Ops::Type AtomicType;