diff options
24 files changed, 15 insertions, 165 deletions
diff --git a/src/corelib/tools/qhash.h b/src/corelib/tools/qhash.h index 569dee0cef..9fd96686f5 100644 --- a/src/corelib/tools/qhash.h +++ b/src/corelib/tools/qhash.h @@ -363,13 +363,8 @@ public: inline iterator &operator-=(int j) { return *this = *this - j; } friend inline iterator operator+(int j, iterator k) { return k + j; } -#ifndef QT_STRICT_ITERATORS - public: - inline bool operator==(const const_iterator &o) const - { return i == o.i; } - inline bool operator!=(const const_iterator &o) const - { return i != o.i; } -#endif + inline bool operator==(const const_iterator &o) const { return i == o.i; } + inline bool operator!=(const const_iterator &o) const { return i != o.i; } }; friend class iterator; @@ -390,11 +385,7 @@ public: Q_DECL_CONSTEXPR inline const_iterator() : i(nullptr) { } explicit inline const_iterator(void *node) : i(reinterpret_cast<QHashData::Node *>(node)) { } -#ifdef QT_STRICT_ITERATORS - explicit inline const_iterator(const iterator &o) -#else inline const_iterator(const iterator &o) -#endif { i = o.i; } inline const Key &key() const { return concrete(i)->key; } @@ -428,13 +419,6 @@ public: inline const_iterator &operator+=(int j) { return *this = *this + j; } inline const_iterator &operator-=(int j) { return *this = *this - j; } friend inline const_iterator operator+(int j, const_iterator k) { return k + j; } - - // ### Qt 5: not sure this is necessary anymore -#ifdef QT_STRICT_ITERATORS - private: - inline bool operator==(const iterator &o) const { return operator==(const_iterator(o)); } - inline bool operator!=(const iterator &o) const { return operator!=(const_iterator(o)); } -#endif }; friend class const_iterator; diff --git a/src/corelib/tools/qmap.h b/src/corelib/tools/qmap.h index a85b8e3819..f169ed5e49 100644 --- a/src/corelib/tools/qmap.h +++ b/src/corelib/tools/qmap.h @@ -433,13 +433,8 @@ public: inline iterator &operator-=(int j) { return *this = *this - j; } friend inline iterator operator+(int j, iterator k) { return k + j; } -#ifndef QT_STRICT_ITERATORS - public: - inline bool operator==(const const_iterator &o) const - { return i == o.i; } - inline bool operator!=(const const_iterator &o) const - { return i != o.i; } -#endif + inline bool operator==(const const_iterator &o) const { return i == o.i; } + inline bool operator!=(const const_iterator &o) const { return i != o.i; } friend class QMap<Key, T>; }; friend class iterator; @@ -458,12 +453,7 @@ public: Q_DECL_CONSTEXPR inline const_iterator() : i(nullptr) { } inline const_iterator(const Node *node) : i(node) { } -#ifdef QT_STRICT_ITERATORS - explicit inline const_iterator(const iterator &o) -#else - inline const_iterator(const iterator &o) -#endif - { i = o.i; } + inline const_iterator(const iterator &o) { i = o.i; } inline const Key &key() const { return i->key; } inline const T &value() const { return i->value; } @@ -497,11 +487,6 @@ public: inline const_iterator &operator-=(int j) { return *this = *this - j; } friend inline const_iterator operator+(int j, const_iterator k) { return k + j; } -#ifdef QT_STRICT_ITERATORS - private: - inline bool operator==(const iterator &o) const { return operator==(const_iterator(o)); } - inline bool operator!=(const iterator &o) const { return operator!=(const_iterator(o)); } -#endif friend class QMap<Key, T>; }; friend class const_iterator; diff --git a/src/corelib/tools/qvector.h b/src/corelib/tools/qvector.h index 4db887d2ea..5def2eceb2 100644 --- a/src/corelib/tools/qvector.h +++ b/src/corelib/tools/qvector.h @@ -208,7 +208,6 @@ public: typedef typename Data::const_iterator const_iterator; typedef std::reverse_iterator<iterator> reverse_iterator; typedef std::reverse_iterator<const_iterator> const_reverse_iterator; -#if !defined(QT_STRICT_ITERATORS) || defined(Q_CLANG_QDOC) inline iterator begin() { detach(); return d->begin(); } inline const_iterator begin() const noexcept { return d->constBegin(); } inline const_iterator cbegin() const noexcept { return d->constBegin(); } @@ -217,16 +216,6 @@ public: inline const_iterator end() const noexcept { return d->constEnd(); } inline const_iterator cend() const noexcept { return d->constEnd(); } inline const_iterator constEnd() const noexcept { return d->constEnd(); } -#else - inline iterator begin(iterator = iterator()) { detach(); return d->begin(); } - inline const_iterator begin(const_iterator = const_iterator()) const noexcept { return d->constBegin(); } - inline const_iterator cbegin(const_iterator = const_iterator()) const noexcept { return d->constBegin(); } - inline const_iterator constBegin(const_iterator = const_iterator()) const noexcept { return d->constBegin(); } - inline iterator end(iterator = iterator()) { detach(); return d->end(); } - inline const_iterator end(const_iterator = const_iterator()) const noexcept { return d->constEnd(); } - inline const_iterator cend(const_iterator = const_iterator()) const noexcept { return d->constEnd(); } - inline const_iterator constEnd(const_iterator = const_iterator()) const noexcept { return d->constEnd(); } -#endif reverse_iterator rbegin() { return reverse_iterator(end()); } reverse_iterator rend() { return reverse_iterator(begin()); } const_reverse_iterator rbegin() const noexcept { return const_reverse_iterator(end()); } diff --git a/src/corelib/tools/qvector_msvc.cpp b/src/corelib/tools/qvector_msvc.cpp index cee343e72b..7e87467d42 100644 --- a/src/corelib/tools/qvector_msvc.cpp +++ b/src/corelib/tools/qvector_msvc.cpp @@ -47,12 +47,5 @@ # error "This file must be compiled with no precompiled headers" #endif -// invert the setting of QT_STRICT_ITERATORS, whichever it was -#ifdef QT_STRICT_ITERATORS -# undef QT_STRICT_ITERATORS -#else -# define QT_STRICT_ITERATORS -#endif - // the Q_TEMPLATE_EXTERN at the bottom of qvector.h will do the trick #include <QtCore/qvector.h> diff --git a/tests/auto/concurrent/qtconcurrentfilter/qtconcurrentfilter.pro b/tests/auto/concurrent/qtconcurrentfilter/qtconcurrentfilter.pro index 15345d40db..b372923310 100644 --- a/tests/auto/concurrent/qtconcurrentfilter/qtconcurrentfilter.pro +++ b/tests/auto/concurrent/qtconcurrentfilter/qtconcurrentfilter.pro @@ -2,5 +2,4 @@ CONFIG += testcase TARGET = tst_qtconcurrentfilter QT = core testlib concurrent SOURCES = tst_qtconcurrentfilter.cpp -DEFINES += QT_STRICT_ITERATORS DEFINES -= QT_NO_LINKED_LIST diff --git a/tests/auto/concurrent/qtconcurrentmap/qtconcurrentmap.pro b/tests/auto/concurrent/qtconcurrentmap/qtconcurrentmap.pro index 717d103e44..170881177d 100644 --- a/tests/auto/concurrent/qtconcurrentmap/qtconcurrentmap.pro +++ b/tests/auto/concurrent/qtconcurrentmap/qtconcurrentmap.pro @@ -2,7 +2,6 @@ CONFIG += testcase TARGET = tst_qtconcurrentmap QT = core testlib concurrent SOURCES = tst_qtconcurrentmap.cpp -DEFINES += QT_STRICT_ITERATORS DEFINES -= QT_NO_LINKED_LIST # Force C++17 if available diff --git a/tests/auto/concurrent/qtconcurrentmedian/qtconcurrentmedian.pro b/tests/auto/concurrent/qtconcurrentmedian/qtconcurrentmedian.pro index 0d07642028..59e22d24a1 100644 --- a/tests/auto/concurrent/qtconcurrentmedian/qtconcurrentmedian.pro +++ b/tests/auto/concurrent/qtconcurrentmedian/qtconcurrentmedian.pro @@ -2,4 +2,3 @@ CONFIG += testcase TARGET = tst_qtconcurrentmedian QT = core testlib concurrent SOURCES = tst_qtconcurrentmedian.cpp -DEFINES += QT_STRICT_ITERATORS diff --git a/tests/auto/corelib/thread/qfuture/qfuture.pro b/tests/auto/corelib/thread/qfuture/qfuture.pro index 1f21130af7..fe097edf20 100644 --- a/tests/auto/corelib/thread/qfuture/qfuture.pro +++ b/tests/auto/corelib/thread/qfuture/qfuture.pro @@ -2,5 +2,4 @@ CONFIG += testcase TARGET = tst_qfuture QT = core core-private testlib SOURCES = tst_qfuture.cpp -DEFINES += QT_STRICT_ITERATORS DEFINES -= QT_NO_JAVA_STYLE_ITERATORS diff --git a/tests/auto/corelib/thread/qresultstore/qresultstore.pro b/tests/auto/corelib/thread/qresultstore/qresultstore.pro index bbebe0976b..80e79b1c1a 100644 --- a/tests/auto/corelib/thread/qresultstore/qresultstore.pro +++ b/tests/auto/corelib/thread/qresultstore/qresultstore.pro @@ -2,4 +2,3 @@ CONFIG += testcase TARGET = tst_qresultstore QT = core-private testlib SOURCES = tst_qresultstore.cpp -DEFINES += QT_STRICT_ITERATORS diff --git a/tests/auto/corelib/tools/collections/collections.pro b/tests/auto/corelib/tools/collections/collections.pro index e0f9f0a0ea..d5e4e226b5 100644 --- a/tests/auto/corelib/tools/collections/collections.pro +++ b/tests/auto/corelib/tools/collections/collections.pro @@ -5,5 +5,4 @@ QT = core testlib # This test does not work with strict iterators DEFINES -= QT_NO_LINKED_LIST -DEFINES -= QT_STRICT_ITERATORS DEFINES -= QT_NO_JAVA_STYLE_ITERATORS diff --git a/tests/auto/corelib/tools/containerapisymmetry/containerapisymmetry.pro b/tests/auto/corelib/tools/containerapisymmetry/containerapisymmetry.pro index e46d51761e..efdb7fc2df 100644 --- a/tests/auto/corelib/tools/containerapisymmetry/containerapisymmetry.pro +++ b/tests/auto/corelib/tools/containerapisymmetry/containerapisymmetry.pro @@ -3,6 +3,4 @@ TARGET = tst_containerapisymmetry SOURCES += tst_containerapisymmetry.cpp QT = core testlib -# This test does not work with strict iterators -DEFINES -= QT_STRICT_ITERATORS DEFINES -= QT_NO_LINKED_LIST diff --git a/tests/auto/corelib/tools/qarraydata_strictiterators/qarraydata_strictiterators.pro b/tests/auto/corelib/tools/qarraydata_strictiterators/qarraydata_strictiterators.pro deleted file mode 100644 index b01fbd84d1..0000000000 --- a/tests/auto/corelib/tools/qarraydata_strictiterators/qarraydata_strictiterators.pro +++ /dev/null @@ -1,3 +0,0 @@ -include(../qarraydata/qarraydata.pro) -TARGET = tst_qarraydata_strictiterators -DEFINES += QT_STRICT_ITERATORS=1 tst_QArrayData=tst_QArrayData_StrictIterators diff --git a/tests/auto/corelib/tools/qhash_strictiterators/qhash_strictiterators.pro b/tests/auto/corelib/tools/qhash_strictiterators/qhash_strictiterators.pro deleted file mode 100644 index 715e9bf0c9..0000000000 --- a/tests/auto/corelib/tools/qhash_strictiterators/qhash_strictiterators.pro +++ /dev/null @@ -1,3 +0,0 @@ -include(../qhash/qhash.pro) -TARGET = tst_qhash_strictiterators -DEFINES += QT_STRICT_ITERATORS tst_QHash=tst_QHash_StrictIterators diff --git a/tests/auto/corelib/tools/qmap/tst_qmap.cpp b/tests/auto/corelib/tools/qmap/tst_qmap.cpp index c644555235..85733639b8 100644 --- a/tests/auto/corelib/tools/qmap/tst_qmap.cpp +++ b/tests/auto/corelib/tools/qmap/tst_qmap.cpp @@ -1351,17 +1351,16 @@ void tst_QMap::testInsertMultiWithHint() { QMap<int, int> map; - typedef QMap<int, int>::const_iterator cite; // Hack since we define QT_STRICT_ITERATORS - map.insertMulti(cite(map.end()), 64, 65); + map.insertMulti(map.end(), 64, 65); map[128] = 129; map[256] = 257; sanityCheckTree(map, __LINE__); - map.insertMulti(cite(map.end()), 512, 513); - map.insertMulti(cite(map.end()), 512, 513 * 2); + map.insertMulti(map.end(), 512, 513); + map.insertMulti(map.end(), 512, 513 * 2); sanityCheckTree(map, __LINE__); QCOMPARE(map.size(), 5); - map.insertMulti(cite(map.end()), 256, 258); // wrong hint + map.insertMulti(map.end(), 256, 258); // wrong hint sanityCheckTree(map, __LINE__); QCOMPARE(map.size(), 6); @@ -1373,23 +1372,23 @@ void tst_QMap::testInsertMultiWithHint() sanityCheckTree(map, __LINE__); QCOMPARE(map.size(), 8); - j = map.insertMulti(cite(j), 68, 259); + j = map.insertMulti(j, 68, 259); sanityCheckTree(map, __LINE__); QCOMPARE(map.size(), 9); - j = map.insertMulti(cite(j), 67, 67); + j = map.insertMulti(j, 67, 67); sanityCheckTree(map, __LINE__); QCOMPARE(map.size(), 10); - i = map.insertMulti(cite(i), 256, 259); + i = map.insertMulti(i, 256, 259); sanityCheckTree(map, __LINE__); QCOMPARE(map.size(), 11); - i = map.insertMulti(cite(i), 256, 260); + i = map.insertMulti(i, 256, 260); sanityCheckTree(map, __LINE__); QCOMPARE(map.size(), 12); - map.insertMulti(cite(i), 64, 67); + map.insertMulti(i, 64, 67); sanityCheckTree(map, __LINE__); QCOMPARE(map.size(), 13); diff --git a/tests/auto/corelib/tools/qmap_strictiterators/qmap_strictiterators.pro b/tests/auto/corelib/tools/qmap_strictiterators/qmap_strictiterators.pro deleted file mode 100644 index 6c1f4727c1..0000000000 --- a/tests/auto/corelib/tools/qmap_strictiterators/qmap_strictiterators.pro +++ /dev/null @@ -1,3 +0,0 @@ -include(../qmap/qmap.pro) -TARGET = tst_qmap_strictiterators -DEFINES += QT_STRICT_ITERATORS tst_QMap=tst_QMap_StrictIterators diff --git a/tests/auto/corelib/tools/qset/tst_qset.cpp b/tests/auto/corelib/tools/qset/tst_qset.cpp index 8a545712a2..6638ad8b60 100644 --- a/tests/auto/corelib/tools/qset/tst_qset.cpp +++ b/tests/auto/corelib/tools/qset/tst_qset.cpp @@ -26,8 +26,6 @@ ** ****************************************************************************/ -//#define QT_STRICT_ITERATORS - #include <QtTest/QtTest> #include <qset.h> #include <qdebug.h> diff --git a/tests/auto/corelib/tools/qvector_strictiterators/qvector_strictiterators.pro b/tests/auto/corelib/tools/qvector_strictiterators/qvector_strictiterators.pro deleted file mode 100644 index d6cad86aac..0000000000 --- a/tests/auto/corelib/tools/qvector_strictiterators/qvector_strictiterators.pro +++ /dev/null @@ -1,3 +0,0 @@ -include(../qvector/qvector.pro) -TARGET = tst_qvector_strictiterators -DEFINES += QT_STRICT_ITERATORS=1 tst_QVector=tst_QVector_StrictIterators diff --git a/tests/auto/corelib/tools/tools.pro b/tests/auto/corelib/tools/tools.pro index 96ec9c8443..5a7c8478f1 100644 --- a/tests/auto/corelib/tools/tools.pro +++ b/tests/auto/corelib/tools/tools.pro @@ -4,7 +4,6 @@ SUBDIRS=\ containerapisymmetry \ qalgorithms \ qarraydata \ - qarraydata_strictiterators \ qbitarray \ qcache \ qcommandlineparser \ @@ -14,13 +13,11 @@ SUBDIRS=\ qexplicitlyshareddatapointer \ qfreelist \ qhash \ - qhash_strictiterators \ qhashfunctions \ qline \ qlinkedlist \ qmakearray \ qmap \ - qmap_strictiterators \ qmargins \ qmessageauthenticationcode \ qoffsetstringarray \ @@ -41,7 +38,6 @@ SUBDIRS=\ qtimeline \ qvarlengtharray \ qvector \ - qvector_strictiterators \ qversionnumber darwin: SUBDIRS += qmacautoreleasepool diff --git a/tests/benchmarks/corelib/tools/qvector/qrawvector.h b/tests/benchmarks/corelib/tools/qvector/qrawvector.h index 73d8620f10..9ad5f771bd 100644 --- a/tests/benchmarks/corelib/tools/qvector/qrawvector.h +++ b/tests/benchmarks/corelib/tools/qvector/qrawvector.h @@ -130,78 +130,9 @@ public: bool contains(const T &t) const; int count(const T &t) const; -#ifdef QT_STRICT_ITERATORS - class iterator { - public: - T *i; - typedef std::random_access_iterator_tag iterator_category; - typedef ptrdiff_t difference_type; - typedef T value_type; - typedef T *pointer; - typedef T &reference; - - inline iterator() : i(0) {} - inline iterator(T *n) : i(n) {} - inline iterator(const iterator &o): i(o.i){} - inline T &operator*() const { return *i; } - inline T *operator->() const { return i; } - inline T &operator[](int j) const { return *(i + j); } - inline bool operator==(const iterator &o) const { return i == o.i; } - inline bool operator!=(const iterator &o) const { return i != o.i; } - inline bool operator<(const iterator& other) const { return i < other.i; } - inline bool operator<=(const iterator& other) const { return i <= other.i; } - inline bool operator>(const iterator& other) const { return i > other.i; } - inline bool operator>=(const iterator& other) const { return i >= other.i; } - inline iterator &operator++() { ++i; return *this; } - inline iterator operator++(int) { T *n = i; ++i; return n; } - inline iterator &operator--() { i--; return *this; } - inline iterator operator--(int) { T *n = i; i--; return n; } - inline iterator &operator+=(int j) { i+=j; return *this; } - inline iterator &operator-=(int j) { i-=j; return *this; } - inline iterator operator+(int j) const { return iterator(i+j); } - inline iterator operator-(int j) const { return iterator(i-j); } - inline int operator-(iterator j) const { return i - j.i; } - }; - friend class iterator; - - class const_iterator { - public: - T *i; - typedef std::random_access_iterator_tag iterator_category; - typedef ptrdiff_t difference_type; - typedef T value_type; - typedef const T *pointer; - typedef const T &reference; - - inline const_iterator() : i(0) {} - inline const_iterator(T *n) : i(n) {} - inline const_iterator(const const_iterator &o): i(o.i) {} - inline explicit const_iterator(const iterator &o): i(o.i) {} - inline const T &operator*() const { return *i; } - inline const T *operator->() const { return i; } - inline const T &operator[](int j) const { return *(i + j); } - inline bool operator==(const const_iterator &o) const { return i == o.i; } - inline bool operator!=(const const_iterator &o) const { return i != o.i; } - inline bool operator<(const const_iterator& other) const { return i < other.i; } - inline bool operator<=(const const_iterator& other) const { return i <= other.i; } - inline bool operator>(const const_iterator& other) const { return i > other.i; } - inline bool operator>=(const const_iterator& other) const { return i >= other.i; } - inline const_iterator &operator++() { ++i; return *this; } - inline const_iterator operator++(int) { T *n = i; ++i; return n; } - inline const_iterator &operator--() { i--; return *this; } - inline const_iterator operator--(int) { T *n = i; i--; return n; } - inline const_iterator &operator+=(int j) { i+=j; return *this; } - inline const_iterator &operator-=(int j) { i+=j; return *this; } - inline const_iterator operator+(int j) const { return const_iterator(i+j); } - inline const_iterator operator-(int j) const { return const_iterator(i-j); } - inline int operator-(const_iterator j) const { return i - j.i; } - }; - friend class const_iterator; -#else // STL-style typedef T *iterator; typedef const T *const_iterator; -#endif inline iterator begin() { return m_begin; } inline const_iterator begin() const { return m_begin; } inline const_iterator constBegin() const { return m_begin; } diff --git a/tests/manual/corelib/tools/qhash/main.cpp b/tests/manual/corelib/tools/qhash/main.cpp index b2c40f2183..298d1777ea 100644 --- a/tests/manual/corelib/tools/qhash/main.cpp +++ b/tests/manual/corelib/tools/qhash/main.cpp @@ -27,7 +27,6 @@ ****************************************************************************/ #include <QDebug> -//#define QT_STRICT_ITERATORS #include <QHash> void testEraseNoError() diff --git a/tests/manual/corelib/tools/qlist/main.cpp b/tests/manual/corelib/tools/qlist/main.cpp index 3f8ade5778..0b54105f5e 100644 --- a/tests/manual/corelib/tools/qlist/main.cpp +++ b/tests/manual/corelib/tools/qlist/main.cpp @@ -26,7 +26,6 @@ ** ****************************************************************************/ #include <QDebug> -//#define QT_STRICT_ITERATORS #include <QVector> void testErase() { @@ -55,4 +54,4 @@ int main() // testErase(); testInsert(); return 0; -}
\ No newline at end of file +} diff --git a/tests/manual/corelib/tools/qset/main.cpp b/tests/manual/corelib/tools/qset/main.cpp index 1066e53e7d..701c8889db 100644 --- a/tests/manual/corelib/tools/qset/main.cpp +++ b/tests/manual/corelib/tools/qset/main.cpp @@ -27,7 +27,6 @@ ****************************************************************************/ #include <QDebug> -//#define QT_STRICT_ITERATORS #include <QSet> void testErase() diff --git a/tests/manual/corelib/tools/qvarlengtharray/main.cpp b/tests/manual/corelib/tools/qvarlengtharray/main.cpp index 8580d97a36..0544bb0c4b 100644 --- a/tests/manual/corelib/tools/qvarlengtharray/main.cpp +++ b/tests/manual/corelib/tools/qvarlengtharray/main.cpp @@ -27,7 +27,6 @@ ****************************************************************************/ #include <QDebug> -//#define QT_STRICT_ITERATORS #include <QVarLengthArray> void testErase() diff --git a/tests/manual/corelib/tools/qvector/main.cpp b/tests/manual/corelib/tools/qvector/main.cpp index e3dc89b149..1b35123f15 100644 --- a/tests/manual/corelib/tools/qvector/main.cpp +++ b/tests/manual/corelib/tools/qvector/main.cpp @@ -27,7 +27,6 @@ ****************************************************************************/ #include <QDebug> -//#define QT_STRICT_ITERATORS #include <QVector> void testErase() |