diff --git a/src/corelib/animation/qpropertyanimation.cpp b/src/corelib/animation/qpropertyanimation.cpp index d461668dbb3..2247c95201c 100644 --- a/src/corelib/animation/qpropertyanimation.cpp +++ b/src/corelib/animation/qpropertyanimation.cpp @@ -58,6 +58,9 @@ QT_BEGIN_NAMESPACE +QPropertyAnimationPrivate::~QPropertyAnimationPrivate() + = default; + void QPropertyAnimationPrivate::updateMetaProperty() { const QObject *target = targetObject.valueBypassingBindings(); diff --git a/src/corelib/animation/qpropertyanimation_p.h b/src/corelib/animation/qpropertyanimation_p.h index 9e41d4dc6d6..ef5534cd9c3 100644 --- a/src/corelib/animation/qpropertyanimation_p.h +++ b/src/corelib/animation/qpropertyanimation_p.h @@ -29,6 +29,7 @@ class QPropertyAnimationPrivate : public QVariantAnimationPrivate Q_DECLARE_PUBLIC(QPropertyAnimation) public: QPropertyAnimationPrivate() : propertyType(0), propertyIndex(-1) { } + ~QPropertyAnimationPrivate() override; void setTargetObjectForwarder(QObject *target) { q_func()->setTargetObject(target); } Q_OBJECT_COMPAT_PROPERTY_WITH_ARGS(QPropertyAnimationPrivate, QObject *, targetObject, diff --git a/src/corelib/animation/qvariantanimation.cpp b/src/corelib/animation/qvariantanimation.cpp index b4d47aae8f8..d268ab185ac 100644 --- a/src/corelib/animation/qvariantanimation.cpp +++ b/src/corelib/animation/qvariantanimation.cpp @@ -152,6 +152,9 @@ template<> Q_INLINE_TEMPLATE QLineF _q_interpolate(const QLineF &f, const QLineF QVariantAnimationPrivate::QVariantAnimationPrivate() : duration(250), interpolator(&defaultInterpolator) { } +QVariantAnimationPrivate::~QVariantAnimationPrivate() + = default; + void QVariantAnimationPrivate::convertValues(int t) { auto type = QMetaType(t); diff --git a/src/corelib/animation/qvariantanimation_p.h b/src/corelib/animation/qvariantanimation_p.h index 85f996f7bdd..0ac238a882b 100644 --- a/src/corelib/animation/qvariantanimation_p.h +++ b/src/corelib/animation/qvariantanimation_p.h @@ -34,6 +34,7 @@ class QVariantAnimationPrivate : public QAbstractAnimationPrivate public: QVariantAnimationPrivate(); + ~QVariantAnimationPrivate() override; static QVariantAnimationPrivate *get(QVariantAnimation *q) { diff --git a/src/corelib/io/qabstractfileengine.cpp b/src/corelib/io/qabstractfileengine.cpp index 70e68be21c1..4c78e1b1bf2 100644 --- a/src/corelib/io/qabstractfileengine.cpp +++ b/src/corelib/io/qabstractfileengine.cpp @@ -32,6 +32,9 @@ static QString appendSlashIfNeeded(const QString &path) return path; } +QAbstractFileEnginePrivate::~QAbstractFileEnginePrivate() + = default; + /*! \class QAbstractFileEngineHandler \inmodule QtCore diff --git a/src/corelib/io/qabstractfileengine_p.h b/src/corelib/io/qabstractfileengine_p.h index 5e6232af71a..2a480db9552 100644 --- a/src/corelib/io/qabstractfileengine_p.h +++ b/src/corelib/io/qabstractfileengine_p.h @@ -246,7 +246,7 @@ public: : fileError(QFile::UnspecifiedError) { } - inline virtual ~QAbstractFileEnginePrivate() { } + virtual ~QAbstractFileEnginePrivate(); QFile::FileError fileError; QString errorString; diff --git a/src/corelib/itemmodels/qidentityproxymodel.cpp b/src/corelib/itemmodels/qidentityproxymodel.cpp index da4bc097cb4..069878e1123 100644 --- a/src/corelib/itemmodels/qidentityproxymodel.cpp +++ b/src/corelib/itemmodels/qidentityproxymodel.cpp @@ -8,6 +8,9 @@ QT_BEGIN_NAMESPACE +QIdentityProxyModelPrivate::~QIdentityProxyModelPrivate() + = default; + /*! \since 4.8 \class QIdentityProxyModel diff --git a/src/corelib/itemmodels/qidentityproxymodel_p.h b/src/corelib/itemmodels/qidentityproxymodel_p.h index bb63dd3cd2e..9762110de21 100644 --- a/src/corelib/itemmodels/qidentityproxymodel_p.h +++ b/src/corelib/itemmodels/qidentityproxymodel_p.h @@ -29,6 +29,7 @@ public: QIdentityProxyModelPrivate() { } + ~QIdentityProxyModelPrivate() override; QList layoutChangePersistentIndexes; QModelIndexList proxyIndexes; diff --git a/src/corelib/itemmodels/qitemselectionmodel.cpp b/src/corelib/itemmodels/qitemselectionmodel.cpp index 6df60aaf61b..7175c0d3bbe 100644 --- a/src/corelib/itemmodels/qitemselectionmodel.cpp +++ b/src/corelib/itemmodels/qitemselectionmodel.cpp @@ -549,6 +549,8 @@ void QItemSelection::split(const QItemSelectionRange &range, } } +QItemSelectionModelPrivate::~QItemSelectionModelPrivate() + = default; void QItemSelectionModelPrivate::initModel(QAbstractItemModel *m) { diff --git a/src/corelib/itemmodels/qitemselectionmodel_p.h b/src/corelib/itemmodels/qitemselectionmodel_p.h index 3d9cd801f7f..6f905c846c7 100644 --- a/src/corelib/itemmodels/qitemselectionmodel_p.h +++ b/src/corelib/itemmodels/qitemselectionmodel_p.h @@ -31,6 +31,7 @@ public: QItemSelectionModelPrivate() : currentCommand(QItemSelectionModel::NoUpdate), tableSelected(false), tableColCount(0), tableRowCount(0) {} + ~QItemSelectionModelPrivate() override; QItemSelection expandSelection(const QItemSelection &selection, QItemSelectionModel::SelectionFlags command) const; diff --git a/src/corelib/kernel/qeventloop.cpp b/src/corelib/kernel/qeventloop.cpp index e314a17ff80..2d401e7a425 100644 --- a/src/corelib/kernel/qeventloop.cpp +++ b/src/corelib/kernel/qeventloop.cpp @@ -14,6 +14,9 @@ QT_BEGIN_NAMESPACE +QEventLoopPrivate::~QEventLoopPrivate() + = default; + /*! \class QEventLoop \inmodule QtCore diff --git a/src/corelib/kernel/qeventloop_p.h b/src/corelib/kernel/qeventloop_p.h index 1fcb7a8b811..cb00fba41fc 100644 --- a/src/corelib/kernel/qeventloop_p.h +++ b/src/corelib/kernel/qeventloop_p.h @@ -30,6 +30,7 @@ public: returnCode.storeRelaxed(-1); exit.storeRelaxed(true); } + ~QEventLoopPrivate() override; QAtomicInt quitLockRef; diff --git a/src/corelib/kernel/qtimer.cpp b/src/corelib/kernel/qtimer.cpp index 420167c0157..9e4dc7afb40 100644 --- a/src/corelib/kernel/qtimer.cpp +++ b/src/corelib/kernel/qtimer.cpp @@ -19,6 +19,9 @@ using namespace std::chrono_literals; QT_BEGIN_NAMESPACE +QTimerPrivate::~QTimerPrivate() + = default; + /*! \class QTimer \inmodule QtCore diff --git a/src/corelib/kernel/qtimer_p.h b/src/corelib/kernel/qtimer_p.h index 9347f6c241c..91d6234665f 100644 --- a/src/corelib/kernel/qtimer_p.h +++ b/src/corelib/kernel/qtimer_p.h @@ -35,6 +35,7 @@ public: { intervalDuration.notify(); } + ~QTimerPrivate() override; static constexpr int INV_TIMER = -1; // invalid timer id diff --git a/src/corelib/mimetypes/qmimetypeparser.cpp b/src/corelib/mimetypes/qmimetypeparser.cpp index c3fb80f3b94..1f5a86d11bb 100644 --- a/src/corelib/mimetypes/qmimetypeparser.cpp +++ b/src/corelib/mimetypes/qmimetypeparser.cpp @@ -57,6 +57,9 @@ static const char matchMaskAttributeC[] = "mask"; \sa QMimeTypeParser */ +QMimeTypeParser::~QMimeTypeParser() + = default; + /*! \class QMimeTypeParserBase \inmodule QtCore @@ -69,6 +72,9 @@ static const char matchMaskAttributeC[] = "mask"; \sa QMimeTypeParser */ +QMimeTypeParserBase::~QMimeTypeParserBase() + = default; + /*! \fn virtual bool QMimeTypeParserBase::process(const QMimeType &t, QString *errorMessage) = 0; Overwrite to process the sequence of parsed data diff --git a/src/corelib/mimetypes/qmimetypeparser_p.h b/src/corelib/mimetypes/qmimetypeparser_p.h index d4266ffcc03..34e588ccf85 100644 --- a/src/corelib/mimetypes/qmimetypeparser_p.h +++ b/src/corelib/mimetypes/qmimetypeparser_p.h @@ -47,7 +47,7 @@ class QMimeTypeParserBase public: QMimeTypeParserBase() {} - virtual ~QMimeTypeParserBase() {} + virtual ~QMimeTypeParserBase(); bool parse(QIODevice *dev, const QString &fileName, QString *errorMessage); @@ -86,6 +86,7 @@ class QMimeTypeParser : public QMimeTypeParserBase { public: explicit QMimeTypeParser(QMimeXMLProvider &provider) : m_provider(provider) {} + ~QMimeTypeParser() override; protected: inline bool process(const QMimeTypeXMLData &t, QString *) override