From a55b7925b26aeab586439ac489ad80a52d6f5a0c Mon Sep 17 00:00:00 2001 From: Sebastian Pipping Date: Tue, 21 Nov 2023 21:40:29 +0100 Subject: [PATCH] benchmark.c: Address MSVC warnings C4267 and C4244 Compiler output was: > tests\benchmark\benchmark.c(102): warning C4267: '=': conversion from 'size_t' to 'int', possible loss of data > tests\benchmark\benchmark.c(117): warning C4244: 'initializing': conversion from '__int64' to 'int', possible loss of data --- expat/tests/benchmark/benchmark.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/expat/tests/benchmark/benchmark.c b/expat/tests/benchmark/benchmark.c index 2c4eb78e..a611c571 100644 --- a/expat/tests/benchmark/benchmark.c +++ b/expat/tests/benchmark/benchmark.c @@ -33,6 +33,8 @@ */ #include +#include +#include // ptrdiff_t #include #include #include @@ -62,7 +64,8 @@ main(int argc, char *argv[]) { char *XMLBuf, *XMLBufEnd, *XMLBufPtr; FILE *fd; struct stat fileAttr; - int nrOfLoops, bufferSize, fileSize, i, isFinal; + int nrOfLoops, bufferSize, i, isFinal; + size_t fileSize; int j = 0, ns = 0; clock_t tstart, tend; double cpuTime = 0.0; @@ -114,12 +117,13 @@ main(int argc, char *argv[]) { isFinal = 0; tstart = clock(); do { - int parseBufferSize = XMLBufEnd - XMLBufPtr; - if (parseBufferSize <= bufferSize) + ptrdiff_t parseBufferSize = XMLBufEnd - XMLBufPtr; + if (parseBufferSize <= (ptrdiff_t)bufferSize) isFinal = 1; else parseBufferSize = bufferSize; - if (! XML_Parse(parser, XMLBufPtr, parseBufferSize, isFinal)) { + assert(parseBufferSize <= (ptrdiff_t)bufferSize); + if (! XML_Parse(parser, XMLBufPtr, (int)parseBufferSize, isFinal)) { fprintf(stderr, "error '%" XML_FMT_STR "' at line %" XML_FMT_INT_MOD "u character %" XML_FMT_INT_MOD "u\n",