summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2020-07-14 15:14:11 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2020-07-17 22:14:43 +0200
commitae5d021f4516a3664565d49f45249e0b48a68c37 (patch)
tree9470e98c840f65f6dcdecfb37866fcca629d5164
parentd145dbc43f667bcb44213cfb3f12590b0dc3c92c (diff)
Fix some MSVC int conversion warnings
kernel\qmetaobjectbuilder.cpp(1279): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data kernel\qmetaobjectbuilder.cpp(1432): warning C4267: '+=': conversion from 'size_t' to 'int', possible loss of data sax\qxml.cpp(1275): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data text\qfontsubset.cpp(920): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data text\qfontsubset.cpp(920): warning C4267: 'initializing': conversion from 'size_t' to 'const int', possible loss of data text\qtextengine.cpp(2664): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data text\qtextengine.cpp(2665): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data text\qtextengine.cpp(2706): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data text\qtextengine.cpp(2707): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data itemviews\qbsptree.cpp(60): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?) kernel\qprintengine_win.cpp(1558): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data qsql_odbc.cpp(804): warning C4267: 'argument': conversion from 'size_t' to 'SQLINTEGER', possible loss of data qsql_odbc.cpp(822): warning C4267: 'argument': conversion from 'size_t' to 'SQLINTEGER', possible loss of data qsql_odbc.cpp(1585): warning C4267: 'initializing': conversion from 'size_t' to 'int', possible loss of data qsql_odbc.cpp(1602): warning C4267: 'argument': conversion from 'size_t' to 'int', possible loss of data qwindowsmime.cpp(770): warning C4267: '+=': conversion from 'size_t' to 'int', possible loss of data windows\qwindowsmime.cpp(770): warning C4267: '+=': conversion from 'size_t' to 'int', possible loss of data Change-Id: I04fbe17b9782f4c2704933fc005449b1e992475e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
-rw-r--r--src/corelib/kernel/qmetaobjectbuilder.cpp2
-rw-r--r--src/gui/text/qfontsubset.cpp10
-rw-r--r--src/gui/text/qtextengine.cpp8
-rw-r--r--src/plugins/platforms/windows/qwindowsmime.cpp4
-rw-r--r--src/plugins/sqldrivers/odbc/qsql_odbc.cpp9
-rw-r--r--src/printsupport/kernel/qprintengine_win.cpp2
-rw-r--r--src/widgets/itemviews/qbsptree.cpp4
-rw-r--r--src/xml/sax/qxml.cpp3
8 files changed, 22 insertions, 20 deletions
diff --git a/src/corelib/kernel/qmetaobjectbuilder.cpp b/src/corelib/kernel/qmetaobjectbuilder.cpp
index ba8d92de7d..c578b88429 100644
--- a/src/corelib/kernel/qmetaobjectbuilder.cpp
+++ b/src/corelib/kernel/qmetaobjectbuilder.cpp
@@ -1276,7 +1276,7 @@ static int buildMetaObject(QMetaObjectBuilderPrivate *d, char *buf,
// Output the methods in the class.
Q_ASSERT(!buf || dataIndex == pmeta->methodData);
- int parameterMetaTypesIndex = d->properties.size();
+ int parameterMetaTypesIndex = int(d->properties.size());
for (const auto &method : d->methods) {
int name = strings.enter(method.name());
int argc = method.parameterCount();
diff --git a/src/gui/text/qfontsubset.cpp b/src/gui/text/qfontsubset.cpp
index ab09d4f6e1..9f1b19e4da 100644
--- a/src/gui/text/qfontsubset.cpp
+++ b/src/gui/text/qfontsubset.cpp
@@ -913,11 +913,11 @@ static int convertToRelative(QList<TTF_POINT> *points)
static void getGlyphData(QTtfGlyph *glyph, const QList<TTF_POINT> &points, const QList<int> &endPoints, int point_array_size)
{
- const int max_size = 5*sizeof(qint16) // header
- + endPoints.size()*sizeof(quint16) // end points of contours
- + sizeof(quint16) // instruction length == 0
- + points.size()*(1) // flags
- + point_array_size; // coordinates
+ const int max_size = int(5 * sizeof(qint16) // header
+ + endPoints.size() * sizeof(quint16) // end points of contours
+ + sizeof(quint16) // instruction length == 0
+ + points.size()*(1) // flags
+ + point_array_size); // coordinates
glyph->data.resize(max_size);
diff --git a/src/gui/text/qtextengine.cpp b/src/gui/text/qtextengine.cpp
index 36405195d8..c04bbba70c 100644
--- a/src/gui/text/qtextengine.cpp
+++ b/src/gui/text/qtextengine.cpp
@@ -2661,8 +2661,8 @@ QTextEngine::LayoutData::LayoutData(const QString &str, void **stack_memory, int
{
allocated = _allocated;
- int space_charAttributes = sizeof(QCharAttributes)*string.length()/sizeof(void*) + 1;
- int space_logClusters = sizeof(unsigned short)*string.length()/sizeof(void*) + 1;
+ int space_charAttributes = int(sizeof(QCharAttributes) * string.length() / sizeof(void*) + 1);
+ int space_logClusters = int(sizeof(unsigned short) * string.length() / sizeof(void*) + 1);
available_glyphs = ((int)allocated - space_charAttributes - space_logClusters)*(int)sizeof(void*)/(int)QGlyphLayout::SpaceNeeded;
if (available_glyphs < str.length()) {
@@ -2703,8 +2703,8 @@ bool QTextEngine::LayoutData::reallocate(int totalGlyphs)
return true;
}
- int space_charAttributes = sizeof(QCharAttributes)*string.length()/sizeof(void*) + 1;
- int space_logClusters = sizeof(unsigned short)*string.length()/sizeof(void*) + 1;
+ int space_charAttributes = int(sizeof(QCharAttributes) * string.length() / sizeof(void*) + 1);
+ int space_logClusters = int(sizeof(unsigned short) * string.length() / sizeof(void*) + 1);
int space_glyphs = (totalGlyphs * QGlyphLayout::SpaceNeeded) / sizeof(void *) + 2;
int newAllocated = space_charAttributes + space_glyphs + space_logClusters;
diff --git a/src/plugins/platforms/windows/qwindowsmime.cpp b/src/plugins/platforms/windows/qwindowsmime.cpp
index e4a7777c4e..59fc7f3a35 100644
--- a/src/plugins/platforms/windows/qwindowsmime.cpp
+++ b/src/plugins/platforms/windows/qwindowsmime.cpp
@@ -763,7 +763,7 @@ bool QWindowsMimeURI::convertFromMime(const FORMATETC &formatetc, const QMimeDat
if (getCf(formatetc) == CF_HDROP) {
const auto &urls = mimeData->urls();
QStringList fileNames;
- int size = sizeof(DROPFILES)+2;
+ size_t size = sizeof(DROPFILES) + 2;
for (const QUrl &url : urls) {
const QString fn = QDir::toNativeSeparators(url.toLocalFile());
if (!fn.isEmpty()) {
@@ -772,7 +772,7 @@ bool QWindowsMimeURI::convertFromMime(const FORMATETC &formatetc, const QMimeDat
}
}
- QByteArray result(size, '\0');
+ QByteArray result(int(size), '\0');
auto* d = reinterpret_cast<DROPFILES *>(result.data());
d->pFiles = sizeof(DROPFILES);
GetCursorPos(&d->pt); // try
diff --git a/src/plugins/sqldrivers/odbc/qsql_odbc.cpp b/src/plugins/sqldrivers/odbc/qsql_odbc.cpp
index 03c197053a..8b3dc57e76 100644
--- a/src/plugins/sqldrivers/odbc/qsql_odbc.cpp
+++ b/src/plugins/sqldrivers/odbc/qsql_odbc.cpp
@@ -801,7 +801,7 @@ bool QODBCDriverPrivate::setConnectionOptions(const QString& connOpts)
val.utf16(); // 0 terminate
r = SQLSetConnectAttr(hDbc, SQL_ATTR_CURRENT_CATALOG,
toSQLTCHAR(val).data(),
- val.length()*sizeof(SQLTCHAR));
+ SQLINTEGER(val.length() * sizeof(SQLTCHAR)));
} else if (opt.toUpper() == QLatin1String("SQL_ATTR_METADATA_ID")) {
if (val.toUpper() == QLatin1String("SQL_TRUE")) {
v = SQL_TRUE;
@@ -819,7 +819,7 @@ bool QODBCDriverPrivate::setConnectionOptions(const QString& connOpts)
val.utf16(); // 0 terminate
r = SQLSetConnectAttr(hDbc, SQL_ATTR_TRACEFILE,
toSQLTCHAR(val).data(),
- val.length()*sizeof(SQLTCHAR));
+ SQLINTEGER(val.length() * sizeof(SQLTCHAR)));
} else if (opt.toUpper() == QLatin1String("SQL_ATTR_TRACE")) {
if (val.toUpper() == QLatin1String("SQL_OPT_TRACE_OFF")) {
v = SQL_OPT_TRACE_OFF;
@@ -1582,7 +1582,7 @@ bool QODBCResult::exec()
QString str = val.toString();
if (*ind != SQL_NULL_DATA)
*ind = str.length() * sizeof(SQLTCHAR);
- int strSize = str.length() * sizeof(SQLTCHAR);
+ const qsizetype strSize = str.length() * sizeof(SQLTCHAR);
if (bindValueType(i) & QSql::Out) {
const QVarLengthArray<SQLTCHAR> a(toSQLTCHAR(str));
@@ -1599,7 +1599,8 @@ bool QODBCResult::exec()
ind);
break;
}
- ba = QByteArray ((const char *)toSQLTCHAR(str).constData(), str.size()*sizeof(SQLTCHAR));
+ ba = QByteArray(reinterpret_cast<const char *>(toSQLTCHAR(str).constData()),
+ int(strSize));
r = SQLBindParameter(d->hStmt,
i + 1,
qParamType[bindValueType(i) & QSql::InOut],
diff --git a/src/printsupport/kernel/qprintengine_win.cpp b/src/printsupport/kernel/qprintengine_win.cpp
index 1a184acf65..e8bbbcfb1e 100644
--- a/src/printsupport/kernel/qprintengine_win.cpp
+++ b/src/printsupport/kernel/qprintengine_win.cpp
@@ -1555,7 +1555,7 @@ HGLOBAL *QWin32PrintEngine::createGlobalDevNames()
{
Q_D(QWin32PrintEngine);
- int size = sizeof(DEVNAMES) + d->m_printDevice.id().length() * 2 + 2;
+ const size_t size = sizeof(DEVNAMES) + d->m_printDevice.id().length() * 2 + 2;
auto hGlobal = reinterpret_cast<HGLOBAL *>(GlobalAlloc(GMEM_MOVEABLE, size));
auto dn = reinterpret_cast<DEVNAMES*>(GlobalLock(hGlobal));
diff --git a/src/widgets/itemviews/qbsptree.cpp b/src/widgets/itemviews/qbsptree.cpp
index 6df1d14f2f..3f21ad8baa 100644
--- a/src/widgets/itemviews/qbsptree.cpp
+++ b/src/widgets/itemviews/qbsptree.cpp
@@ -56,8 +56,8 @@ void QBspTree::create(int n, int d)
}
depth = qMax(depth, uint(1));
- nodes.resize((1 << depth) - 1); // resize to number of nodes
- leaves.resize(1 << depth); // resize to number of leaves
+ nodes.resize((1ll << depth) - 1); // resize to number of nodes
+ leaves.resize(1ll << depth); // resize to number of leaves
}
void QBspTree::destroy()
diff --git a/src/xml/sax/qxml.cpp b/src/xml/sax/qxml.cpp
index d1af7e42da..1f605b1d5c 100644
--- a/src/xml/sax/qxml.cpp
+++ b/src/xml/sax/qxml.cpp
@@ -1272,7 +1272,8 @@ void QXmlInputSource::fetchData()
if (!device) {
if (d->inputStream && d->inputStream->string()) {
QString *s = d->inputStream->string();
- rawData = QByteArray((const char *) s->constData(), s->size() * sizeof(QChar));
+ rawData = QByteArray(reinterpret_cast<const char *>(s->constData()),
+ int(s->size() * sizeof(QChar)));
}
} else if (device->isOpen() || device->open(QIODevice::ReadOnly)) {
rawData.resize(BufferSize);