From b28b879992f7637094ed9af008588143e0e58002 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Fri, 29 Apr 2011 23:51:50 -0700 Subject: [PATCH] * config.nt: Configure 64-bit integers. (BITS_PER_LONG_LONG): Define if C99-style long long and "%lld" work. (EMACS_INT, BITS_PER_EMACS_INT, pI): Otherwise, define these if __int64 and "%I64d" work. --- nt/ChangeLog | 8 +++++++- nt/config.nt | 12 +++++++++++- 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/nt/ChangeLog b/nt/ChangeLog index ea4f7547962..4597478081b 100644 --- a/nt/ChangeLog +++ b/nt/ChangeLog @@ -1,3 +1,10 @@ +2011-04-30 Paul Eggert + + * config.nt: Configure 64-bit integers. + (BITS_PER_LONG_LONG): Define if C99-style long long and "%lld" work. + (EMACS_INT, BITS_PER_EMACS_INT, pI): Otherwise, define these if + __int64 and "%I64d" work. + 2011-04-28 Eli Zaretskii * gmake.defs (ARCH): Fix error message in case of unknown @@ -2062,4 +2069,3 @@ You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see . - diff --git a/nt/config.nt b/nt/config.nt index a159234be7d..f46868cd6ea 100644 --- a/nt/config.nt +++ b/nt/config.nt @@ -470,6 +470,17 @@ extern char *getenv (); #define BITS_PER_LONG 32 #endif +#if (defined __MINGW32__ \ + || 1400 <= _MSC_VER || (1310 <= _MSC_VER && defined _MSC_EXTENSIONS)) +/* C99-style long long and "%lld" both work, so use them. */ +# define BITS_PER_LONG_LONG 64 +#elif 1200 <= _MSC_VER +/* Use pre-C99-style 64-bit integers. */ +# define EMACS_INT __int64 +# define BITS_PER_EMACS_INT 64 +# define pI "I64" +#endif + #ifndef POINTER_TYPE #define POINTER_TYPE void #endif @@ -508,4 +519,3 @@ void w32_abort (void) NO_RETURN; /* Make a leaner executable. */ #define WIN32_LEAN_AND_MEAN 1 - -- 2.39.2