diff --git a/src/lj_carith.c b/src/lj_carith.c index 9f3208a8..a93ec685 100644 --- a/src/lj_carith.c +++ b/src/lj_carith.c @@ -337,11 +337,11 @@ uint64_t lj_carith_check64(lua_State *L, int narg, CTypeID *id) goto err; } if (LJ_LIKELY(tvisint(o))) { - return intV(o); + return (uint32_t)intV(o); } else { int32_t i = lj_num2bit(numV(o)); if (LJ_DUALNUM) setintV(o, i); - return i; + return (uint32_t)i; } }