diff --git a/tests/auto/corelib/tools/qspan/tst_qspan.cpp b/tests/auto/corelib/tools/qspan/tst_qspan.cpp index 04bee9f0d01..9eb3e611633 100644 --- a/tests/auto/corelib/tools/qspan/tst_qspan.cpp +++ b/tests/auto/corelib/tools/qspan/tst_qspan.cpp @@ -71,6 +71,7 @@ private Q_SLOTS: void zeroExtentSpansMaintainADataPointer() const; void fromArray() const; void fromStdArray() const; + void fromStdInitializerList() const; void fromZeroSizeStdArray() const; void fromStdVector() const; void fromQList() const; @@ -331,6 +332,21 @@ void tst_QSpan::fromStdArray() const from_container_impl<4>(ai); } +void tst_QSpan::fromStdInitializerList() const +{ + std::initializer_list il = {42, 84, 168, 336}; + + QSpan sci = il; // CTAD + // special case: always deduced as : + static_assert(std::is_same_v>); + + QCOMPARE_EQ(sci.size(), qsizetype(il.size())); + QCOMPARE_EQ(sci.data(), il.begin()); + + check_nonempty_span(sci, 4); + RETURN_IF_FAILED(); +} + void tst_QSpan::fromZeroSizeStdArray() const { std::array ai = {};