diff --git a/src/corelib/text/qstring.cpp b/src/corelib/text/qstring.cpp index 14accbb7041..935b7363cf4 100644 --- a/src/corelib/text/qstring.cpp +++ b/src/corelib/text/qstring.cpp @@ -8765,7 +8765,7 @@ QString QString::arg_impl(QAnyStringView a, int fieldWidth, QChar fillChar) cons ArgEscapeData d = findArgEscapes(*this); if (Q_UNLIKELY(d.occurrences == 0)) { - qWarning("QString::arg: Argument missing: %ls, %ls", qUtf16Printable(*this), + qWarning("QString::arg: Argument missing: \"%ls\", \"%ls\"", qUtf16Printable(*this), qUtf16Printable(a.toString())); return *this; } @@ -8905,7 +8905,7 @@ QString QString::arg_impl(double a, int fieldWidth, char format, int precision, ArgEscapeData d = findArgEscapes(*this); if (d.occurrences == 0) { - qWarning("QString::arg: Argument missing: %s, %g", toLocal8Bit().data(), a); + qWarning("QString::arg: Argument missing: \"%ls\", %g", qUtf16Printable(*this), a); return *this; } diff --git a/tests/auto/corelib/text/qstring/tst_qstring.cpp b/tests/auto/corelib/text/qstring/tst_qstring.cpp index cefe9648b04..acb88f01776 100644 --- a/tests/auto/corelib/text/qstring/tst_qstring.cpp +++ b/tests/auto/corelib/text/qstring/tst_qstring.cpp @@ -6671,7 +6671,7 @@ void tst_QString::arg() QTest::ignoreMessage(QtWarningMsg, nonAsciiArgWarning); QCOMPARE( QString("%2²%1").arg("a").arg("b"), QString("ba") ); #else - QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: %¹, foo"); + QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: \"%¹\", \"foo\""); QCOMPARE(u"%¹"_s.arg(foo), u"%¹"); QCOMPARE(u"%¹%1"_s.arg(foo), u"%¹foo"); QCOMPARE(u"%1²"_s.arg(u"E=mc"_s), u"E=mc²"); @@ -6725,11 +6725,15 @@ void tst_QString::arg() #endif QCOMPARE(s4.arg(u8'a'), QLatin1String("[a]")); - QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: , foo"); + QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: \"\", \"foo\""); QCOMPARE(QString().arg(foo), QString()); QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: \"\", 0"); QCOMPARE( QString().arg(0), QString() ); QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: \"\", 0"); + QCOMPARE( QString().arg(0U), QString() ); + QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: \"\", 0"); + QCOMPARE( QString().arg(0.0), QString() ); + QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: \"\", 0"); QCOMPARE(QString(u""_s).arg(0), u""_s); QTest::ignoreMessage(QtWarningMsg, "QString::arg: Argument missing: \" \", 0"); QCOMPARE(QString(u" "_s).arg(0), " "_L1);