From b05c9898cce8c91eeb53db9bf0a57d8d7a277372 Mon Sep 17 00:00:00 2001 From: Marc Mutz Date: Wed, 8 Dec 2021 14:34:25 +0100 Subject: [PATCH] QList: fix typo in QList(It, It) Remove scaffolding in the test again. [ChangeLog][QtCore][QList] Fixed a regression that caused the range constructor to fail for pure input_iterator's. Fixes: QTBUG-99036 Change-Id: I72d01a9c44c3862c335d96538f26a453b4c7c554 Reviewed-by: Thiago Macieira (cherry picked from commit 48b75def5d734d8f8ecf2805ba64be6c99aca978) Reviewed-by: Qt Cherry-pick Bot --- src/corelib/tools/qlist.h | 2 +- .../tst_containerapisymmetry.cpp | 12 ------------ 2 files changed, 1 insertion(+), 13 deletions(-) diff --git a/src/corelib/tools/qlist.h b/src/corelib/tools/qlist.h index f4eb9195fd6..dddea15fe34 100644 --- a/src/corelib/tools/qlist.h +++ b/src/corelib/tools/qlist.h @@ -276,7 +276,7 @@ public: template = true> QList(InputIterator i1, InputIterator i2) { - if constexpr (!std::is_convertible_v::iterator_category, std::forward_iterator_tag>) { + if constexpr (!std::is_convertible_v::iterator_category, std::forward_iterator_tag>) { std::copy(i1, i2, std::back_inserter(*this)); } else { const auto distance = std::distance(i1, i2); diff --git a/tests/auto/corelib/tools/containerapisymmetry/tst_containerapisymmetry.cpp b/tests/auto/corelib/tools/containerapisymmetry/tst_containerapisymmetry.cpp index c6090fa671e..7fe1dd9b4d9 100644 --- a/tests/auto/corelib/tools/containerapisymmetry/tst_containerapisymmetry.cpp +++ b/tests/auto/corelib/tools/containerapisymmetry/tst_containerapisymmetry.cpp @@ -66,13 +66,6 @@ std::istream &operator>>(std::istream &os, QChar &c) } QT_END_NAMESPACE -namespace { -template -struct is_qlist : std::false_type {}; -template -struct is_qlist> : std::true_type {}; -} - struct Movable { explicit Movable(int i = 0) noexcept @@ -458,11 +451,6 @@ void tst_ContainerApiSymmetry::ranged_ctor_non_associative_impl() const // from stringsteam (= pure input_iterator) const Container c5 = [&] { -#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) // QTBUG-99036 - if constexpr (is_qlist::value) { - return c4; - } else -#endif { std::stringstream ss; for (auto &v : values1)