lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


> > lobject.c:327:5: warning: format '%d' expects argument of type 'int', but argume
> > nt 3 has type 'lua_Integer' [-Wformat=]
> >      len = lua_integer2str(buff, ivalue(obj));
> >      ^
> > [...]
> > liolib.c:612:17: warning: format '%d' expects argument of type 'int', but argume
> > nt 3 has type 'lua_Integer' [-Wformat=]
> >                  ? fprintf(f, LUA_INTEGER_FMT, lua_tointeger(L, arg))
> >                  ^
> > [...]
> > luac.c:269:2: warning: format '%d' expects argument of type 'int', but argument
> > 2 has type 'lua_Integer' [-Wformat=]
> >   printf(LUA_INTEGER_FMT,ivalue(o));
> >   ^
> > [...]
> 
> All three warnings are about the same issue. Can you make your code
> print the value of LUA_INTEGER_FMT (a string)? It should be "%I64d", not
> "%d".  (Just in case, print also the value of macro LUA_INTEGER_FRMLEN,
> another string.)
> 
> This whole thing is weird, because this code should give a warning
> in all other platforms, too...

Does that compiler define _WIN32? If not, try defining LUA_USE_WINDOWS...

-- Roberto