summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Breitenlohner <peb@mppmu.mpg.de>2014-01-09 08:49:53 +0000
committerPeter Breitenlohner <peb@mppmu.mpg.de>2014-01-09 08:49:53 +0000
commit00c4dcfbc8a0c6caa1a9e71cbbdcff92d217ef99 (patch)
tree999d355532539b25f98d7dee704901127784fdec
parent674b9fae633e3b003348078d0e997975025f329e (diff)
web2c: Introduce a genuine 64-bit integer type, in case of 32-bit off_t
git-svn-id: svn://tug.org/texlive/trunk@32614 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Build/source/texk/web2c/ChangeLog6
-rw-r--r--Build/source/texk/web2c/cpascal.h1
-rw-r--r--Build/source/texk/web2c/w2c/config.h5
-rw-r--r--Build/source/texk/web2c/web2c/ChangeLog5
-rw-r--r--Build/source/texk/web2c/web2c/common.defines2
5 files changed, 18 insertions, 1 deletions
diff --git a/Build/source/texk/web2c/ChangeLog b/Build/source/texk/web2c/ChangeLog
index 650ddabbf12..1a815b5f97e 100644
--- a/Build/source/texk/web2c/ChangeLog
+++ b/Build/source/texk/web2c/ChangeLog
@@ -1,3 +1,9 @@
+2014-01-09 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ Introduce a genuine 64-bit integer type, in case of 32-bit off_t.
+ * cpascal.h: Define int64cast().
+ * w2c/config.h: Define integer64 as new type.
+
2014-01-06 Peter Breitenlohner <peb@mppmu.mpg.de>
* pltotf.ch, vptovf.ch: Consistent white space.
diff --git a/Build/source/texk/web2c/cpascal.h b/Build/source/texk/web2c/cpascal.h
index d1dc83f4041..48700a023fc 100644
--- a/Build/source/texk/web2c/cpascal.h
+++ b/Build/source/texk/web2c/cpascal.h
@@ -124,6 +124,7 @@ typedef FILE *text;
/* To work around casting problems. */
#define ucharcast(x) ((unsigned char) (x))
#define intcast(x) ((integer) (x))
+#define int64cast(x) ((integer64) (x))
#define stringcast(x) ((string) (x))
#define conststringcast(x) ((const_string) (x))
#define ustringcast(x) ((unsigned char *) (x))
diff --git a/Build/source/texk/web2c/w2c/config.h b/Build/source/texk/web2c/w2c/config.h
index 3888b3f5843..9aa4a96237f 100644
--- a/Build/source/texk/web2c/w2c/config.h
+++ b/Build/source/texk/web2c/w2c/config.h
@@ -1,6 +1,6 @@
/* w2c/config.h: All .c files include this first.
-Copyright 1995, 1996, 2006, 2007, 2009, 2010, 2012 Karl Berry.
+Copyright 1995, 1996, 2006, 2007, 2009, 2010, 2012, 2014 Karl Berry.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -92,6 +92,9 @@ typedef off_t longinteger;
#define LONGINTEGER_TYPE long
#define LONGINTEGER_PRI "l"
#endif
+
+/* We also need a genuine 64-bit integer type, in case of 32-bit off_t */
+typedef LONGINTEGER_TYPE integer64;
/* I don't want to write a configure test for remove when all Unix
machines have unlink. But, for the sake of non-Unix machines that
diff --git a/Build/source/texk/web2c/web2c/ChangeLog b/Build/source/texk/web2c/web2c/ChangeLog
index c1d8a1f5f22..22ea2f2239d 100644
--- a/Build/source/texk/web2c/web2c/ChangeLog
+++ b/Build/source/texk/web2c/web2c/ChangeLog
@@ -1,3 +1,8 @@
+2014-01-09 Peter Breitenlohner <peb@mppmu.mpg.de>
+
+ Introduce a genuine 64-bit integer type, in case of 32-bit off_t.
+ * common.defines (int64cast, integer64): Add these.
+
2013-12-06 Peter Breitenlohner <peb@mppmu.mpg.de>
* common.defines (makesuffix): Add this.
diff --git a/Build/source/texk/web2c/web2c/common.defines b/Build/source/texk/web2c/web2c/common.defines
index 55739b9f531..af0543a0514 100644
--- a/Build/source/texk/web2c/web2c/common.defines
+++ b/Build/source/texk/web2c/web2c/common.defines
@@ -134,6 +134,7 @@
@define function kpsevarvalue ();
@define function inputint ();
@define function intcast ();
+@define function int64cast ();
@define function isprint ();
@define function makebinaryfile ();
@define function makesuffix ();
@@ -207,6 +208,7 @@
@define type char = 0..255;
@define type getoptstruct;
@define type integer;
+@define type integer64;
@define type longinteger;
@define type memoryword; {for gftodvi, TeX, and Metafont}
@define type pointertobyte;