diff --git a/libavutil/common.h b/libavutil/common.h index f4fcc9cebd..a11a3251e9 100644 --- a/libavutil/common.h +++ b/libavutil/common.h @@ -171,7 +171,7 @@ static av_always_inline av_const int16_t av_clip_int16_c(int a) static av_always_inline av_const int32_t av_clipl_int32_c(int64_t a) { if ((a+0x80000000u) & ~UINT64_C(0xFFFFFFFF)) return (a>>63) ^ 0x7FFFFFFF; - else return a; + else return (int32_t)a; } /** @@ -230,7 +230,7 @@ static av_always_inline av_const int av_popcount_c(uint32_t x) */ static av_always_inline av_const int av_popcount64_c(uint64_t x) { - return av_popcount(x) + av_popcount(x >> 32); + return av_popcount((uint32_t)x) + av_popcount(x >> 32); } #define MKTAG(a,b,c,d) ((a) | ((b) << 8) | ((c) << 16) | ((unsigned)(d) << 24))