x86_64-w64-mingw32 test FAIL t-scanf.c:1477: GNU MP assertion failed: ret == (-1)

Niels Möller nisse at lysator.liu.se
Tue Apr 4 21:09:51 UTC 2017

tg at gmplib.org (Torbjörn Granlund) writes:

> Should we pass this option for mingw on GMP's configure.ac?

Maybe we can keep things simple and add an

#if defined(__WIN32__) && define (__GNUC__)

at the top of the source files that need it, or at the top of config.h?
I don't have a native mingw compiler handy, but my gnu/linux-hosted
cross compiler, x86_64-w64-mingw32-gcc, has the following
windows-related defines:

#define WIN32 1
#define WIN64 1
#define WINNT 1
#define _WIN32 1
#define _WIN64 1
#define __WIN32 1
#define __WIN32__ 1
#define __WIN64 1
#define __WIN64__ 1
#define __WINNT 1
#define __WINNT__ 1

Except for the *64 symbols, it seems to be the same also when building
with -m32.

> Or do people expect broken libc on this platform...?

I'd guess there are plenty of windows programs that depend on the
non-standard behavior. So bug-compatibility makes some sense. But we
don't want it.


Niels Möller. PGP-encrypted email is preferred. Keyid 368C6677.
Internet email is subject to wholesale government surveillance.

More information about the gmp-bugs mailing list