summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorIvan Solovev <ivan.solovev@qt.io>2023-01-27 11:41:35 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2023-02-02 16:20:06 +0000
commit2e810b2f8a9ff1f9b79be4fc81e9b14e02d91dcf (patch)
tree287491b6b8d446b91278f92be94b8b84fd4a8646 /src
parent23ea1271b7ffdf182eef82107645e2ebe2cf7ff2 (diff)
Explicitly =delete {in}equality operators for CAN parser value calsses
... so that the users could not provide their own implementations and potentially get an ODR violation. For unit-tests provide bool equals(lhs, rhs) functions instead. The drawback of this approach is that we need to use QVERIFY(equals(actual, expected)); QVERIFY(!equals(actual, expected)); instead of QCOMPARE_EQ(actual, expected); QCOMPARE_NE(actual, expected); The former will produce less informative error messages in case of test failures. This commit amends 8db3c1142248e4564e8b90db61ad1bdf13164453. Change-Id: I6a476f4af84232e9a31705a633de2a2a0647180f Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Alex Blasche <alexander.blasche@qt.io> (cherry picked from commit 35ca3f143ff464d77c83976add6864bff6824dc1) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src')
-rw-r--r--src/serialbus/qcanmessagedescription.h4
-rw-r--r--src/serialbus/qcansignaldescription.h4
-rw-r--r--src/serialbus/qcanuniqueiddescription.h4
3 files changed, 12 insertions, 0 deletions
diff --git a/src/serialbus/qcanmessagedescription.h b/src/serialbus/qcanmessagedescription.h
index 1cf7b55..522cbd9 100644
--- a/src/serialbus/qcanmessagedescription.h
+++ b/src/serialbus/qcanmessagedescription.h
@@ -59,6 +59,10 @@ private:
friend class QCanMessageDescriptionPrivate;
friend void qHash(const QCanMessageDescription &desc, size_t seed) noexcept = delete;
+ friend void operator==(const QCanMessageDescription &lhs,
+ const QCanMessageDescription &rhs) noexcept = delete;
+ friend void operator!=(const QCanMessageDescription &lhs,
+ const QCanMessageDescription &rhs) noexcept = delete;
#ifndef QT_NO_DEBUG_STREAM
friend QDebug operator<<(QDebug dbg, const QCanMessageDescription &msg)
diff --git a/src/serialbus/qcansignaldescription.h b/src/serialbus/qcansignaldescription.h
index 89e48c8..65fd1f2 100644
--- a/src/serialbus/qcansignaldescription.h
+++ b/src/serialbus/qcansignaldescription.h
@@ -114,6 +114,10 @@ private:
friend class QCanSignalDescriptionPrivate;
friend void qHash(const QCanSignalDescription &desc, size_t seed) noexcept = delete;
+ friend void operator==(const QCanSignalDescription &lhs,
+ const QCanSignalDescription &rhs) noexcept = delete;
+ friend void operator!=(const QCanSignalDescription &lhs,
+ const QCanSignalDescription &rhs) noexcept = delete;
#ifndef QT_NO_DEBUG_STREAM
friend QDebug operator<<(QDebug dbg, const QCanSignalDescription &sig)
diff --git a/src/serialbus/qcanuniqueiddescription.h b/src/serialbus/qcanuniqueiddescription.h
index 06b89a2..3d22628 100644
--- a/src/serialbus/qcanuniqueiddescription.h
+++ b/src/serialbus/qcanuniqueiddescription.h
@@ -46,6 +46,10 @@ private:
friend class QCanUniqueIdDescriptionPrivate;
friend void qHash(const QCanUniqueIdDescription &desc, size_t seed) noexcept = delete;
+ friend void operator==(const QCanUniqueIdDescription &lhs,
+ const QCanUniqueIdDescription &rhs) noexcept = delete;
+ friend void operator!=(const QCanUniqueIdDescription &lhs,
+ const QCanUniqueIdDescription &rhs) noexcept = delete;
};
QT_END_NAMESPACE