|
On 7/29/2011 7:47 PM, Lorenzo Donati wrote:
On 27/07/2011 23.10, Luiz Henrique de Figueiredo wrote:[snipped all]So there must be some strange combination of compiler flags in the standard makefile that makes GCC do the wrong thing for %lld in printf. I also checked with DependencyWalker that test.exe uses the same runtime (only msvcrt.dll). So it seems that it isn't msvcrt's fault either. [snip]
Adding -D__USE_MINGW_ANSI_STDIO into SYSCFLAGS in the Makefile will give the proper 'll' result, after fixing the LUA_WIN defines in luaconf.h to include LUA_USE_LONGLONG. This pulls in a more complete *printf from mingwex.
Or _mingw.h says this works too: #define __MINGW_FEATURES__ __USE_MINGW_ANSI_STDIO I dunno whether this or "I64" is the better solution. -- Cheers, Kein-Hong Man (esq.) Kuala Lumpur, Malaysia