mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-07 23:24:09 +00:00
Fix narrowing casts of pointer differences for x64.
This commit is contained in:
parent
d64b031269
commit
52eb88773e
@ -337,7 +337,7 @@ LJLIB_CF(dofile)
|
||||
if (luaL_loadfile(L, fname ? strdata(fname) : NULL) != 0)
|
||||
lua_error(L);
|
||||
lua_call(L, 0, LUA_MULTRET);
|
||||
return (L->top - L->base) - 1;
|
||||
return cast_int(L->top - L->base) - 1;
|
||||
}
|
||||
|
||||
/* -- Base library: GC control -------------------------------------------- */
|
||||
|
@ -194,7 +194,7 @@ static int io_file_readchars(lua_State *L, FILE *fp, size_t n)
|
||||
|
||||
static int io_file_read(lua_State *L, FILE *fp, int start)
|
||||
{
|
||||
int ok, n, nargs = (L->top - L->base) - start;
|
||||
int ok, n, nargs = cast_int(L->top - L->base) - start;
|
||||
clearerr(fp);
|
||||
if (nargs == 0) {
|
||||
ok = io_file_readline(L, fp);
|
||||
@ -242,7 +242,7 @@ static int io_file_write(lua_State *L, FILE *fp, int start)
|
||||
} else if (tvisnum(tv)) {
|
||||
status = status && (fprintf(fp, LUA_NUMBER_FMT, numV(tv)) > 0);
|
||||
} else {
|
||||
lj_lib_checkstr(L, tv-L->base+1);
|
||||
lj_err_argt(L, cast_int(tv - L->base) + 1, LUA_TSTRING);
|
||||
}
|
||||
}
|
||||
return io_pushresult(L, status, NULL);
|
||||
|
@ -677,7 +677,7 @@ LJ_NORET LJ_NOINLINE static void err_argmsg(lua_State *L, int narg,
|
||||
const char *fname = "?";
|
||||
const char *ftype = getfuncname(L, L->base - 1, &fname);
|
||||
if (narg < 0 && narg > LUA_REGISTRYINDEX)
|
||||
narg = (L->top - L->base) + narg + 1;
|
||||
narg = cast_int(L->top - L->base) + narg + 1;
|
||||
if (ftype && ftype[3] == 'h' && --narg == 0) /* Check for "method". */
|
||||
msg = lj_str_pushf(L, err2msg(LJ_ERR_BADSELF), fname, msg);
|
||||
else
|
||||
|
Loading…
Reference in New Issue
Block a user