From 62c7145390b0a98b83f901f193183b429df8cbf5 Mon Sep 17 00:00:00 2001 From: Sona Kurazyan Date: Thu, 24 Feb 2022 15:37:59 +0100 Subject: Fix QLatin1String(const char *) constructor to be constexpr MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit strlen() is not constexpr, use the QByteArrayView's lengthHelperPointer() instead. Change-Id: Ie49236edba3306e951402e6b776c15068cac0332 Reviewed-by: Edward Welbourne Reviewed-by: Thiago Macieira Reviewed-by: MÃ¥rten Nordheim Reviewed-by: Marc Mutz --- src/corelib/text/qstring.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/corelib/text/qstring.h') diff --git a/src/corelib/text/qstring.h b/src/corelib/text/qstring.h index 1c95b038c6..350659ed46 100644 --- a/src/corelib/text/qstring.h +++ b/src/corelib/text/qstring.h @@ -49,6 +49,7 @@ #include #include +#include #include #include #include @@ -85,7 +86,8 @@ class QLatin1String public: constexpr inline QLatin1String() noexcept : m_size(0), m_data(nullptr) {} constexpr QLatin1String(std::nullptr_t) noexcept : QLatin1String() {} - constexpr inline explicit QLatin1String(const char *s) noexcept : m_size(s ? qsizetype(strlen(s)) : 0), m_data(s) {} + constexpr inline explicit QLatin1String(const char *s) noexcept + : m_size(s ? qsizetype(QtPrivate::lengthHelperPointer(s)) : 0), m_data(s) {} constexpr explicit QLatin1String(const char *f, const char *l) : QLatin1String(f, qsizetype(l - f)) {} constexpr inline explicit QLatin1String(const char *s, qsizetype sz) noexcept : m_size(sz), m_data(s) {} -- cgit v1.2.3