diff --git a/src/corelib/tools/qringbuffer.cpp b/src/corelib/tools/qringbuffer.cpp index b10362b0cd..72c56a20f6 100644 --- a/src/corelib/tools/qringbuffer.cpp +++ b/src/corelib/tools/qringbuffer.cpp @@ -47,6 +47,7 @@ QT_BEGIN_NAMESPACE +static_assert(std::is_nothrow_default_constructible_v); static_assert(std::is_nothrow_move_constructible_v); static_assert(std::is_nothrow_move_assignable_v); diff --git a/src/corelib/tools/qringbuffer_p.h b/src/corelib/tools/qringbuffer_p.h index 84e0f9ddec..58430b5a68 100644 --- a/src/corelib/tools/qringbuffer_p.h +++ b/src/corelib/tools/qringbuffer_p.h @@ -65,20 +65,17 @@ class QRingChunk { public: // initialization and cleanup - inline QRingChunk() noexcept : - headOffset(0), tailOffset(0) - { - } + QRingChunk() noexcept = default; explicit inline QRingChunk(qsizetype alloc) : - chunk(alloc, Qt::Uninitialized), headOffset(0), tailOffset(0) + chunk(alloc, Qt::Uninitialized), tailOffset(0) { } explicit inline QRingChunk(const QByteArray &qba) noexcept : - chunk(qba), headOffset(0), tailOffset(qba.size()) + chunk(qba), tailOffset(qba.size()) { } explicit QRingChunk(QByteArray &&qba) noexcept : - chunk(std::move(qba)), headOffset(0), tailOffset(chunk.size()) + chunk(std::move(qba)), tailOffset(chunk.size()) { } @@ -164,8 +161,8 @@ public: private: QByteArray chunk; - qsizetype headOffset; - qsizetype tailOffset; + qsizetype headOffset = 0; + qsizetype tailOffset = 0; }; Q_DECLARE_SHARED(QRingChunk)