[QUAD] (ULONG_MAX): Define to a static variable initialized to ULONG_LONG_MAX.
This is to work around a GCC bug in using the constant in arithmetic.
#include <limits.h>
#include <stddef.h>
#include <stdlib.h>
-
+#include <errno.h>
/* Nonzero if we are defining `strtoul' or `strtouq', operating on unsigned
integers. */
#undef LONG_MAX
#define LONG_MAX LONG_LONG_MAX
#undef ULONG_MAX
-#define ULONG_MAX ULONG_LONG_MAX
+#define ULONG_MAX maxquad
+/* XXX Work around gcc bug with using this constant. */
+static unsigned long long int maxquad = ULONG_LONG_MAX;
#else
#define LONG long
#endif