diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2020-09-21 15:51:12 +0200 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2020-09-22 13:52:19 +0200 |
commit | 4b57246a616b18d1f1cc2f7e1a93466a8d5db560 (patch) | |
tree | c1c97f4c68eb0331ec4ec5a299de03b891828567 | |
parent | 631eed68d0ea5e1e8e5c2ad7d56b3dcbfbcb4aa0 (diff) |
Remove default ctor for QIterable
MSVC has strange problems with it and we don't actually need it.
Change-Id: I2c443946d52d475208800f310b5f910da165c99b
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
-rw-r--r-- | src/corelib/kernel/qassociativeiterable.h | 5 | ||||
-rw-r--r-- | src/corelib/kernel/qiterable.h | 2 | ||||
-rw-r--r-- | src/corelib/kernel/qmetatype.cpp | 4 | ||||
-rw-r--r-- | src/corelib/kernel/qsequentialiterable.h | 5 | ||||
-rw-r--r-- | tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp | 8 |
5 files changed, 14 insertions, 10 deletions
diff --git a/src/corelib/kernel/qassociativeiterable.h b/src/corelib/kernel/qassociativeiterable.h index 1122fd118d..40f1768d5b 100644 --- a/src/corelib/kernel/qassociativeiterable.h +++ b/src/corelib/kernel/qassociativeiterable.h @@ -111,7 +111,10 @@ public: { } - QAssociativeIterable() = default; + QAssociativeIterable() + : QIterable(QMetaAssociation(), nullptr) + { + } template<typename Pointer> QAssociativeIterable(const QMetaAssociation &metaAssociation, Pointer iterable) diff --git a/src/corelib/kernel/qiterable.h b/src/corelib/kernel/qiterable.h index 20d937591a..c77a158420 100644 --- a/src/corelib/kernel/qiterable.h +++ b/src/corelib/kernel/qiterable.h @@ -450,8 +450,6 @@ protected: Container m_metaContainer; public: - QIterable() = default; - template<class T> QIterable(const Container &metaContainer, const T *p) : m_iterable(p), m_metaContainer(metaContainer) diff --git a/src/corelib/kernel/qmetatype.cpp b/src/corelib/kernel/qmetatype.cpp index 87835be25c..798d43686a 100644 --- a/src/corelib/kernel/qmetatype.cpp +++ b/src/corelib/kernel/qmetatype.cpp @@ -2036,7 +2036,7 @@ static bool viewAsSequentialIterable(QMetaType fromType, void *from, void *to) return true; } - QIterable<QMetaSequence> j; + QIterable<QMetaSequence> j(QMetaSequence(), nullptr); if (QMetaType::view( fromType, from, QMetaType::fromType<QIterable<QMetaSequence>>(), &j)) { i = std::move(j); @@ -2118,7 +2118,7 @@ static bool viewAsAssociativeIterable(QMetaType fromType, void *from, void *to) return true; } - QIterable<QMetaAssociation> j; + QIterable<QMetaAssociation> j(QMetaAssociation(), nullptr); if (QMetaType::view( fromType, from, QMetaType::fromType<QIterable<QMetaAssociation>>(), &j)) { i = std::move(j); diff --git a/src/corelib/kernel/qsequentialiterable.h b/src/corelib/kernel/qsequentialiterable.h index 72e17cfc65..0bac435d7b 100644 --- a/src/corelib/kernel/qsequentialiterable.h +++ b/src/corelib/kernel/qsequentialiterable.h @@ -104,7 +104,10 @@ public: { } - QSequentialIterable() = default; + QSequentialIterable() + : QIterable(QMetaSequence(), nullptr) + { + } template<typename Pointer> QSequentialIterable(const QMetaSequence &metaSequence, Pointer iterable) diff --git a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp index 8122220b88..0eefd95ac7 100644 --- a/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp +++ b/tests/auto/corelib/kernel/qvariant/tst_qvariant.cpp @@ -4758,8 +4758,8 @@ void tst_QVariant::sequentialIterableAppend() { QList<int> container { 1, 2 }; auto variant = QVariant::fromValue(container); - QVERIFY(variant.canConvert<QIterable<QMetaSequence>>()); - QSequentialIterable asIterable = variant.view<QIterable<QMetaSequence>>(); + QVERIFY(variant.canConvert<QSequentialIterable>()); + QSequentialIterable asIterable = variant.view<QSequentialIterable>(); const int i = 3, j = 4; void *mutableIterable = asIterable.mutableIterable(); asIterable.metaContainer().addValueAtEnd(mutableIterable, &i); @@ -4778,8 +4778,8 @@ void tst_QVariant::sequentialIterableAppend() { QSet<QByteArray> container { QByteArray{"hello"}, QByteArray{"world"} }; auto variant = QVariant::fromValue(std::move(container)); - QVERIFY(variant.canConvert<QIterable<QMetaSequence>>()); - QSequentialIterable asIterable = variant.view<QIterable<QMetaSequence>>(); + QVERIFY(variant.canConvert<QSequentialIterable>()); + QSequentialIterable asIterable = variant.view<QSequentialIterable>(); QByteArray qba1 {"goodbye"}; QByteArray qba2 { "moon" }; void *mutableIterable = asIterable.mutableIterable(); |