diff --git a/src/corelib/kernel/qobjectdefs.h b/src/corelib/kernel/qobjectdefs.h index cc442457b0..9053e7e7a5 100644 --- a/src/corelib/kernel/qobjectdefs.h +++ b/src/corelib/kernel/qobjectdefs.h @@ -52,7 +52,8 @@ QT_BEGIN_NAMESPACE class QByteArray; -struct QByteArrayData; +class QArrayData; +typedef QArrayData QByteArrayData; class QString; diff --git a/src/corelib/tools/qbytearray.h b/src/corelib/tools/qbytearray.h index 0f5ebcfb18..6d4c155c07 100644 --- a/src/corelib/tools/qbytearray.h +++ b/src/corelib/tools/qbytearray.h @@ -120,26 +120,7 @@ class QString; class QDataStream; template class QList; -struct QByteArrayData -{ - // Keep in sync with QArrayData - - QtPrivate::RefCount ref; - int size; - uint alloc : 31; - uint capacityReserved : 1; - - qptrdiff offset; - - inline char *data() { return reinterpret_cast(this) + offset; } - inline const char *data() const { return reinterpret_cast(this) + offset; } -}; - -Q_STATIC_ASSERT(sizeof(QArrayData) == sizeof(QByteArrayData)); -Q_STATIC_ASSERT(offsetof(QArrayData, ref) == offsetof(QByteArrayData, ref)); -Q_STATIC_ASSERT(offsetof(QArrayData, size) == offsetof(QByteArrayData, size)); -// Can't use offsetof on bitfield members alloc, capacityReserved -Q_STATIC_ASSERT(offsetof(QArrayData, offset) == offsetof(QByteArrayData, offset)); +typedef QArrayData QByteArrayData; template struct QStaticByteArrayData {