summaryrefslogtreecommitdiff
path: root/timezone/zdump.c
diff options
context:
space:
mode:
Diffstat (limited to 'timezone/zdump.c')
-rw-r--r--timezone/zdump.c52
1 files changed, 28 insertions, 24 deletions
diff --git a/timezone/zdump.c b/timezone/zdump.c
index d767d75fb7..45ce64157c 100644
--- a/timezone/zdump.c
+++ b/timezone/zdump.c
@@ -1,4 +1,4 @@
-static char elsieid[] = "@(#)zdump.c 7.66";
+static char elsieid[] = "@(#)zdump.c 7.74";
/*
** This code has been made independent of the rest of the time
@@ -12,7 +12,10 @@ static char elsieid[] = "@(#)zdump.c 7.66";
#include "time.h" /* for struct tm */
#include "stdlib.h" /* for exit, malloc, atoi */
#include "float.h" /* for FLT_MAX and DBL_MAX */
-#include <ctype.h> /* for isascii, isalpha, isdigit */
+#include "ctype.h" /* for isalpha et al. */
+#ifndef isascii
+#define isascii(x) 1
+#endif
#ifndef ZDUMP_LO_YEAR
#define ZDUMP_LO_YEAR (-500)
@@ -148,7 +151,7 @@ static char * progname;
static int warned;
static char * abbr P((struct tm * tmp));
-static void abbrok P((const char * abbr, const char * zone));
+static void abbrok P((const char * abbrp, const char * zone));
static long delta P((struct tm * newp, struct tm * oldp));
static void dumptime P((const struct tm * tmp));
static time_t hunt P((char * name, time_t lot, time_t hit));
@@ -195,8 +198,8 @@ time_t * tp;
#endif /* !defined TYPECHECK */
static void
-abbrok(abbr, zone)
-const char * const abbr;
+abbrok(abbrp, zone)
+const char * const abbrp;
const char * const zone;
{
register const char * cp;
@@ -204,30 +207,31 @@ const char * const zone;
if (warned)
return;
- cp = abbr;
+ cp = abbrp;
wp = NULL;
- while (isascii(*cp) && isalpha(*cp))
+ while (isascii((unsigned char) *cp) && isalpha((unsigned char) *cp))
++cp;
- if (cp - abbr == 0)
+ if (cp - abbrp == 0)
wp = _("lacks alphabetic at start");
- if (cp - abbr < 3)
+ else if (cp - abbrp < 3)
wp = _("has fewer than 3 alphabetics");
- if (cp - abbr > 6)
+ else if (cp - abbrp > 6)
wp = _("has more than 6 alphabetics");
if (wp == NULL && (*cp == '+' || *cp == '-')) {
++cp;
- if (isascii(*cp) && isdigit(*cp))
- if (*cp++ == '1' && *cp >= '0' && *cp <= '4')
- ++cp;
+ if (isascii((unsigned char) *cp) &&
+ isdigit((unsigned char) *cp))
+ if (*cp++ == '1' && *cp >= '0' && *cp <= '4')
+ ++cp;
+ if (*cp != '\0')
+ wp = _("differs from POSIX standard");
}
- if (*cp != '\0')
- wp = _("differs from POSIX standard");
if (wp == NULL)
return;
(void) fflush(stdout);
(void) fprintf(stderr,
- "%s: warning: zone \"%s\" abbreviation \"%s\" %s\n",
- progname, zone, abbr, wp);
+ _("%s: warning: zone \"%s\" abbreviation \"%s\" %s\n"),
+ progname, zone, abbrp, wp);
warned = TRUE;
}
@@ -266,7 +270,7 @@ char * argv[];
for (i = 1; i < argc; ++i)
if (strcmp(argv[i], "--version") == 0) {
(void) printf("%s\n", elsieid);
- (void) exit(EXIT_SUCCESS);
+ exit(EXIT_SUCCESS);
}
vflag = 0;
cutarg = NULL;
@@ -279,7 +283,7 @@ char * argv[];
(void) fprintf(stderr,
_("%s: usage is %s [ --version ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n"),
progname, progname);
- (void) exit(EXIT_FAILURE);
+ exit(EXIT_FAILURE);
}
if (vflag) {
if (cutarg != NULL) {
@@ -296,7 +300,7 @@ _("%s: usage is %s [ --version ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n"),
} else {
(void) fprintf(stderr, _("%s: wild -c argument %s\n"),
progname, cutarg);
- (void) exit(EXIT_FAILURE);
+ exit(EXIT_FAILURE);
}
}
setabsolutes();
@@ -319,7 +323,7 @@ _("%s: usage is %s [ --version ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n"),
if (fakeenv == NULL ||
(fakeenv[0] = (char *) malloc(longest + 4)) == NULL) {
(void) perror(progname);
- (void) exit(EXIT_FAILURE);
+ exit(EXIT_FAILURE);
}
to = 0;
(void) strcpy(fakeenv[to++], "TZ=");
@@ -386,7 +390,7 @@ _("%s: usage is %s [ --version ] [ -v ] [ -c [loyear,]hiyear ] zonename ...\n"),
if (fflush(stdout) || ferror(stdout)) {
(void) fprintf(stderr, "%s: ", progname);
(void) perror(_("Error writing standard output"));
- (void) exit(EXIT_FAILURE);
+ exit(EXIT_FAILURE);
}
exit(EXIT_SUCCESS);
/* If exit fails to exit... */
@@ -410,7 +414,7 @@ setabsolutes()
(void) fprintf(stderr,
_("%s: use of -v on system with floating time_t other than float or double\n"),
progname);
- (void) exit(EXIT_FAILURE);
+ exit(EXIT_FAILURE);
}
} else if (0 > (time_t) -1) {
/*
@@ -510,7 +514,7 @@ time_t hit;
}
/*
-** Thanks to Paul Eggert (eggert@twinsun.com) for logic used in delta.
+** Thanks to Paul Eggert for logic used in delta.
*/
static long