From f5fd9c40cd2db59e2f4eb0f588407658d8a161e6 Mon Sep 17 00:00:00 2001 From: Mitch Curtis Date: Thu, 19 Mar 2020 11:54:22 +0100 Subject: Fix warnings when building with MSVC2017 qstring.cpp(10210): warning C4267: 'argument': conversion from 'size_t' to 'uint', possible loss of data qcontiguouscache.h(141): warning C4003: not enough arguments for function-like macro invocation 'max' Change-Id: I01f1fc1c85341ea61c86dcffb1b01fe4cde50eea Reviewed-by: Friedemann Kleint --- src/corelib/text/qstring.cpp | 4 ++-- src/corelib/tools/qcontiguouscache.h | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/corelib/text/qstring.cpp b/src/corelib/text/qstring.cpp index 745d3d8047..53e3afab3f 100644 --- a/src/corelib/text/qstring.cpp +++ b/src/corelib/text/qstring.cpp @@ -10203,11 +10203,11 @@ QDataStream &operator<<(QDataStream &out, const QString &str) } else { if (!str.isNull() || out.version() < 3) { if ((out.byteOrder() == QDataStream::BigEndian) == (QSysInfo::ByteOrder == QSysInfo::BigEndian)) { - out.writeBytes(reinterpret_cast(str.unicode()), sizeof(QChar) * str.length()); + out.writeBytes(reinterpret_cast(str.unicode()), uint(sizeof(QChar) * str.length())); } else { QVarLengthArray buffer(str.length()); qbswap(str.constData(), str.length(), buffer.data()); - out.writeBytes(reinterpret_cast(buffer.data()), sizeof(ushort) * buffer.size()); + out.writeBytes(reinterpret_cast(buffer.data()), uint(sizeof(ushort) * buffer.size())); } } else { // write null marker diff --git a/src/corelib/tools/qcontiguouscache.h b/src/corelib/tools/qcontiguouscache.h index df76c9fb50..81361f219a 100644 --- a/src/corelib/tools/qcontiguouscache.h +++ b/src/corelib/tools/qcontiguouscache.h @@ -137,8 +137,9 @@ public: void removeLast(); T takeLast(); + // Use extra parentheses around max to avoid expanding it if it is a macro. inline bool areIndexesValid() const - { return d->offset >= 0 && d->offset < std::numeric_limits::max() - d->count && (d->offset % d->alloc) == d->start; } + { return d->offset >= 0 && d->offset < (std::numeric_limits::max)() - d->count && (d->offset % d->alloc) == d->start; } inline void normalizeIndexes() { d->offset = d->start; } -- cgit v1.2.3