diff --git a/include/rapidjson/reader.h b/include/rapidjson/reader.h index 7edfad9..19b906d 100644 --- a/include/rapidjson/reader.h +++ b/include/rapidjson/reader.h @@ -224,7 +224,7 @@ inline const char *SkipWhitespace_SIMD(const char* p) { x = _mm_or_si128(x, _mm_cmpeq_epi8(s, w1)); x = _mm_or_si128(x, _mm_cmpeq_epi8(s, w2)); x = _mm_or_si128(x, _mm_cmpeq_epi8(s, w3)); - unsigned short r = ~_mm_movemask_epi8(x); + unsigned short r = (unsigned short)~_mm_movemask_epi8(x); if (r == 0) // all 16 characters are whitespace p += 16; else { // some of characters may be non-whitespace