diff --git a/src/corelib/tools/qflatmap_p.h b/src/corelib/tools/qflatmap_p.h index 17c6167ddf..acfcf5e778 100644 --- a/src/corelib/tools/qflatmap_p.h +++ b/src/corelib/tools/qflatmap_p.h @@ -111,8 +111,6 @@ class QFlatMap : private QFlatMapValueCompare { static_assert(std::is_nothrow_destructible_v, "Types with throwing destructors are not supported in Qt containers."); - using full_map_t = QFlatMap; - template class mock_pointer { @@ -274,7 +272,7 @@ public: private: containers *c = nullptr; size_type i = 0; - friend full_map_t; + friend QFlatMap; }; class const_iterator @@ -411,7 +409,7 @@ public: private: const containers *c = nullptr; size_type i = 0; - friend full_map_t; + friend QFlatMap; }; private: @@ -790,14 +788,14 @@ public: iterator lower_bound(const Key &key) { - auto cit = const_cast(this)->lower_bound(key); + auto cit = std::as_const(*this).lower_bound(key); return { &c, cit.i }; } template = nullptr> iterator lower_bound(const X &key) { - auto cit = const_cast(this)->lower_bound(key); + auto cit = std::as_const(*this).lower_bound(key); return { &c, cit.i }; } @@ -880,7 +878,7 @@ private: class IndexedKeyComparator { public: - IndexedKeyComparator(const full_map_t *am) + IndexedKeyComparator(const QFlatMap *am) : m(am) { } @@ -891,7 +889,7 @@ private: } private: - const full_map_t *m; + const QFlatMap *m; }; template @@ -914,7 +912,7 @@ private: iterator binary_find(const Key &key) { - return { &c, const_cast(this)->binary_find(key).i }; + return { &c, std::as_const(*this).binary_find(key).i }; } const_iterator binary_find(const Key &key) const