QString: de-pessmize QString(QLatin1StringView)
Instead of default-construction followed by move-assignment, delegate
to the move ctor instead.
We can't expect the optimizer to do this transformation for us, since
fromLatin1() is out-of-line and compilers are not, yet, known for
optimizing atomics (ref-count) around out-of-line function calls.
Amends 6abdbb65e5.
Pick-to: 6.7 6.5
Change-Id: I75b747c4d5269ae125bf12cda57a1f718aa7a467
Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
(cherry picked from commit f7853680ef68ce2495662ffc7c7a933655436f22)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
bb10
parent
8a17835180
commit
03f2dfca7c
|
|
@ -1224,7 +1224,7 @@ QString QAnyStringView::toString() const
|
|||
// QString inline members
|
||||
//
|
||||
QString::QString(QLatin1StringView latin1)
|
||||
{ *this = QString::fromLatin1(latin1.data(), latin1.size()); }
|
||||
: QString{QString::fromLatin1(latin1.data(), latin1.size())} {}
|
||||
const QChar QString::at(qsizetype i) const
|
||||
{ verify(i, 1); return QChar(d.data()[i]); }
|
||||
const QChar QString::operator[](qsizetype i) const
|
||||
|
|
|
|||
Loading…
Reference in New Issue