summaryrefslogtreecommitdiff
path: root/nt
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2011-04-29 23:51:50 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2011-04-29 23:51:50 -0700
commitb28b879992f7637094ed9af008588143e0e58002 (patch)
treeadfa944b09754d8662b0334b646a247542361918 /nt
parent47be4ab5001b31c7097749ec6d35d0c0a2f27b63 (diff)
downloademacs-b28b879992f7637094ed9af008588143e0e58002.tar.gz
* 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.
Diffstat (limited to 'nt')
-rw-r--r--nt/ChangeLog8
-rw-r--r--nt/config.nt12
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 <eggert@cs.ucla.edu>
+
+ * 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 <eliz@gnu.org>
* 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 <http://www.gnu.org/licenses/>.
-
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
-