diff options
| author | Ivan Solovev <ivan.solovev@qt.io> | 2024-08-26 19:30:40 +0200 |
|---|---|---|
| committer | Marc Mutz <marc.mutz@qt.io> | 2024-08-30 08:29:24 +0000 |
| commit | 5ac15093dcbaf92ac166961f5e8bfe9418cc15c0 (patch) | |
| tree | e935babf69f8c4aae2096e55ce3e7baf86463873 /src/corelib/serialization/qjsonobject.h | |
| parent | 364ac13a79a8fff0447a62e9af5588db397c0bfd (diff) | |
serialization: remove incorrect noexcept on comparison operators [2/2]
This patch is about removing noexcept on functions that use
Q_ASSERT. The argument is that in these cases Q_ASSERTs act as
precondition checks, so we should probably follow the Lakos rule.
Although, technically the change is fine, because the current
implementation of Q_ASSERT is marked as noexcept(true), there are
some ideas of changing that in future, so we should not be setting
in stone something we can't change later.
Found in 6.8 API review.
Pick-to: 6.8
Change-Id: I1d4aa228c713821c0ebbfc0f3b956d29fe652ed8
Reviewed-by: Marc Mutz <marc.mutz@qt.io>
Diffstat (limited to 'src/corelib/serialization/qjsonobject.h')
| -rw-r--r-- | src/corelib/serialization/qjsonobject.h | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/corelib/serialization/qjsonobject.h b/src/corelib/serialization/qjsonobject.h index a0b8328b1b9..fb653094c9c 100644 --- a/src/corelib/serialization/qjsonobject.h +++ b/src/corelib/serialization/qjsonobject.h @@ -152,13 +152,13 @@ public: } static Qt::strong_ordering compareThreeWay_helper(const iterator &lhs, - const iterator &rhs) noexcept + const iterator &rhs) { Q_ASSERT(lhs.item.d == rhs.item.d); return Qt::compareThreeWay(lhs.item.index, rhs.item.index); } static Qt::strong_ordering compareThreeWay_helper(const iterator &lhs, - const const_iterator &rhs) noexcept + const const_iterator &rhs) { Q_ASSERT(lhs.item.d == rhs.item.d); return Qt::compareThreeWay(lhs.item.index, rhs.item.index); @@ -170,22 +170,22 @@ public: return comparesEqual_helper(lhs, rhs); } friend Qt::strong_ordering compareThreeWay(const iterator &lhs, - const iterator &rhs) noexcept + const iterator &rhs) { return compareThreeWay_helper(lhs, rhs); } - Q_DECLARE_STRONGLY_ORDERED(iterator) + Q_DECLARE_STRONGLY_ORDERED_NON_NOEXCEPT(iterator) friend bool comparesEqual(const iterator &lhs, const const_iterator &rhs) noexcept { return comparesEqual_helper(lhs, rhs); } friend Qt::strong_ordering compareThreeWay(const iterator &lhs, - const const_iterator &rhs) noexcept + const const_iterator &rhs) { return compareThreeWay_helper(lhs, rhs); } - Q_DECLARE_STRONGLY_ORDERED(iterator, const_iterator) + Q_DECLARE_STRONGLY_ORDERED_NON_NOEXCEPT(iterator, const_iterator) }; friend class iterator; @@ -259,7 +259,7 @@ public: return lhs.item.d == rhs.item.d && lhs.item.index == rhs.item.index; } static Qt::strong_ordering compareThreeWay_helper(const const_iterator &lhs, - const const_iterator &rhs) noexcept + const const_iterator &rhs) { Q_ASSERT(lhs.item.d == rhs.item.d); return Qt::compareThreeWay(lhs.item.index, rhs.item.index); @@ -271,11 +271,11 @@ public: return comparesEqual_helper(lhs, rhs); } friend Qt::strong_ordering compareThreeWay(const const_iterator &lhs, - const const_iterator &rhs) noexcept + const const_iterator &rhs) { return compareThreeWay_helper(lhs, rhs); } - Q_DECLARE_STRONGLY_ORDERED(const_iterator) + Q_DECLARE_STRONGLY_ORDERED_NON_NOEXCEPT(const_iterator) }; friend class const_iterator; |
