-----Original Message----- From: Steve Hay Sent: Thursday, January 25, 2018 10:30 PM To: sisyphus1@optusnet.com.au Cc: perl5-porters@perl.org ; Karl Williamson Subject: Re: [win32] perl.h now defines INTMAX_C and UINTMAX_C On 25 January 2018 at 10:38, <sisyphus1@optusnet.com.au> wrote: >> ... >> Amending config_H.gc doesn't do the trick as the generated config.h still >> fails to define I_STDINT. >> (Actually, the config.h that gets written initially at the beginning of >> the 'make' stage does define I_STDINT, but shortly into the build it gets >> overwritten with a rendition that does *not* define I_STDINT. I think >> I've seen somewhere that config.h gets written initially for miniperl, >> then >> subsequently rewritten for perl.) >> > > Have you tried amending config.gc too? I think that's what the real > config.h used by perl is made from, if my cold-filled head remembers > correctly. No - I had done a case-sensitive search of the win32 directory for 'I_STDINT' and found only config_H.gc and config_H.vc. For some reason config.gc has to lower-case the symbol :-( Anyway ... defining I_STDINT/i_stdint in config_H.gc and config.gc is all that's needed to get the saner result of having stdint.h define INTMAX_C and UINTMAX_C. And it also allows Math-MPFR-4.0 to build cleanly. I don't know what, if anything, ought to be done with config.vc and config_H.vc wrt I_STDINT. I'll leave that to people who actually use a microsoft compiler. I think stdint.h now exists on MS compilers (as of Visual Studio 2010 ?), but I know that wasn't always the case. Thanks Karl, Steve. Cheers, RobThread Previous | Thread Next