> Date: Mon, 11 Sep 2017 23:46:00 +0000
> From: JonY via Mingw-w64-public <mingw-w64-public@lists.sourceforge.net>
> Cc: JonY <jo...@users.sourceforge.net>
> 
> >     . GCC doesn't recognize the PRIdMAX format spec, defined in
> >       MinGW64 inntypes.h header as "lld";
> >     . GCC doesn't recognize the MS native I64x format spec, either
> > 
> > Therefore, it seems like there's no way of invoking printf to print a
> > long long int data type without emitting a warning, and perhaps also
> > generating incorrect code.
> > 
> > Does Emacs do anything wrong in these cases?
> > 
> 
> You'd need to disassemble (or at least check with nm) the
> object/function to find out if it's calling __mingw_printf or regular
> printf, seems like emacs is using %lld and %I64 in different places.

%lld is used for intmax_t values, %I64d is used for 64-bit values.

Are you saying that MinGW64 doesn't support both %lld and %I64d?  If
so, under which conditions is each one supported?

> Check if keyboard.c and print.c is using __USE_MINGW_ANSI_STDIO
> consistently.

The Emacs config.h defines __USE_MINGW_ANSI_STDIO, and all sources
include config.h.  So yes, this is used consistently.

What is the effect of __USE_MINGW_ANSI_STDIO on format specs
recognized by the MinGW64 GCC 7 compiler at compile time?

Thanks.

------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to