long int. Original problem reported for GNU diff by Xin Li in
<http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
* modules/getdate (Depends-on): Add intprops, verify.
* lib/getdate.y: Include intprops.h, verify.h. Verify that time_t
is an integer type no wider than long int.
+2007-06-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ Detect porting problems to FreeBSD/arm, which has time_t wider than
+ long int. Original problem reported for GNU diff by Xin Li in
+ <http://lists.gnu.org/archive/html/bug-gnu-utils/2007-06/msg00091.html>.
+ * modules/getdate (Depends-on): Add intprops, verify.
+ * lib/getdate.y: Include intprops.h, verify.h. Verify that time_t
+ is an integer type no wider than long int.
+
2007-06-18 Jim Meyering <jim@meyering.net>
New module: mreadlink-with-size.
#include <config.h>
#include "getdate.h"
+
+#include "intprops.h"
#include "timespec.h"
+#include "verify.h"
/* There's no need to extend the stack, so there's no need to involve
alloca. */
#define HOUR(x) ((x) * 60)
+/* Lots of this code assumes time_t and time_t-like values fit into
+ long int. It also assumes that signed integer overflow silently
+ wraps around, but there's no portable way to check for that at
+ compile-time. */
+verify (TYPE_IS_INTEGER (time_t));
+verify (LONG_MIN <= TYPE_MINIMUM (time_t) && TYPE_MAXIMUM (time_t) <= LONG_MAX);
+
/* An integer value, and the number of digits in its textual
representation. */
typedef struct
Depends-on:
stdbool
gettime
+intprops
mktime
setenv
time
+verify
xalloc
configure.ac: