125                         (void) fprintf(stderr, "\n%s: ", progname);
 126                         (void) fprintf(stderr, tformat(), *tp);
 127                         (void) fprintf(stderr, " ->");
 128                         (void) fprintf(stderr, " year=%d", tmp->tm_year);
 129                         (void) fprintf(stderr, " mon=%d", tmp->tm_mon);
 130                         (void) fprintf(stderr, " mday=%d", tmp->tm_mday);
 131                         (void) fprintf(stderr, " hour=%d", tmp->tm_hour);
 132                         (void) fprintf(stderr, " min=%d", tmp->tm_min);
 133                         (void) fprintf(stderr, " sec=%d", tmp->tm_sec);
 134                         (void) fprintf(stderr, " isdst=%d", tmp->tm_isdst);
 135                         (void) fprintf(stderr, " -> ");
 136                         (void) fprintf(stderr, tformat(), t);
 137                         (void) fprintf(stderr, "\n");
 138                 }
 139         }
 140         return (tmp);
 141 }
 142 #endif /* !defined TYPECHECK */
 143 
 144 static void
 145 abbrok(abbrp, zone)
 146 const char * const      abbrp;
 147 const char * const      zone;
 148 {
 149         register const char *cp;
 150         int error = 0;
 151 
 152         if (warned)
 153                 return;
 154         cp = abbrp;
 155         while (isascii(*cp) && isalpha((unsigned char)*cp))
 156                 ++cp;
 157         (void) fflush(stdout);
 158         if (cp - abbrp == 0) {
 159                 /*
 160                  * TRANSLATION_NOTE
 161                  * The first %s prints for the program name (zdump),
 162                  * the second %s prints the timezone name, the third
 163                  * %s prints the timezone abbreviation (tzname[0] or
 164                  * tzname[1]).
 165                  */
 166                 (void) fprintf(stderr, gettext("%s: warning: zone \"%s\" "
 167                     "abbreviation \"%s\" lacks alphabetic at start\n"),
 168                     progname, zone, abbrp);
 169                 error = 1;
 170         } else if (cp - abbrp < 3) {
 171                 (void) fprintf(stderr, gettext("%s: warning: zone \"%s\" "
 172                     "abbreviation \"%s\" has fewer than 3 alphabetics\n"),
 173                     progname, zone, abbrp);
 174                 error = 1;
 175         } else if (cp - abbrp > 6) {
 176                 (void) fprintf(stderr, gettext("%s: warning: zone \"%s\" "
 177                     "abbreviation \"%s\" has more than 6 alphabetics\n"),
 178                     progname, zone, abbrp);
 179                 error = 1;
 180         }
 181         if (error == 0 && (*cp == '+' || *cp == '-')) {
 182                 ++cp;
 183                 if (isascii(*cp) && isdigit((unsigned char)*cp))
 184                         if (*cp++ == '1' && *cp >= '0' && *cp <= '4')
 185                                 ++cp;
 186                 if (*cp != '\0') {
 187                         (void) fprintf(stderr, gettext("%s: warning: "
 188                             "zone \"%s\" abbreviation \"%s\" differs from "
 189                             "POSIX standard\n"), progname, zone, abbrp);
 190                         error = 1;
 191                 }
 192         }
 193         if (error)
 194                 warned = TRUE;
 195 }
 196 
 197 int
 198 main(argc, argv)
 199 int     argc;
 200 char    *argv[];
 201 {
 202         register int            i;
 203         register int            c;
 204         register int            vflag;
 205         register char           *cutarg;
 206         register long           cutloyear = ZDUMP_LO_YEAR;
 207         register long           cuthiyear = ZDUMP_HI_YEAR;
 208         register time_t         cutlotime;
 209         register time_t         cuthitime;
 210         time_t                  now;
 211         time_t                  t;
 212         time_t                  newt;
 
 | 
 
 
 125                         (void) fprintf(stderr, "\n%s: ", progname);
 126                         (void) fprintf(stderr, tformat(), *tp);
 127                         (void) fprintf(stderr, " ->");
 128                         (void) fprintf(stderr, " year=%d", tmp->tm_year);
 129                         (void) fprintf(stderr, " mon=%d", tmp->tm_mon);
 130                         (void) fprintf(stderr, " mday=%d", tmp->tm_mday);
 131                         (void) fprintf(stderr, " hour=%d", tmp->tm_hour);
 132                         (void) fprintf(stderr, " min=%d", tmp->tm_min);
 133                         (void) fprintf(stderr, " sec=%d", tmp->tm_sec);
 134                         (void) fprintf(stderr, " isdst=%d", tmp->tm_isdst);
 135                         (void) fprintf(stderr, " -> ");
 136                         (void) fprintf(stderr, tformat(), t);
 137                         (void) fprintf(stderr, "\n");
 138                 }
 139         }
 140         return (tmp);
 141 }
 142 #endif /* !defined TYPECHECK */
 143 
 144 static void
 145 abbrok(const char * const abbrp, const char * const zone)
 146 {
 147         register const char *cp;
 148         int error = 0;
 149 
 150         if (warned)
 151                 return;
 152         cp = abbrp;
 153         while (isalpha(*cp) || isdigit(*cp) || *cp == '-' || *cp == '+')
 154                 ++cp;
 155         (void) fflush(stdout);
 156         if (cp - abbrp < 3) {
 157                 (void) fprintf(stderr, gettext("%s: warning: zone \"%s\" "
 158                     "abbreviation \"%s\" has fewer than 3 alphabetics\n"),
 159                     progname, zone, abbrp);
 160                 error = 1;
 161         } else if (cp - abbrp > 6) {
 162                 (void) fprintf(stderr, gettext("%s: warning: zone \"%s\" "
 163                     "abbreviation \"%s\" has more than 6 characters\n"),
 164                     progname, zone, abbrp);
 165                 error = 1;
 166         } else if (*cp != '\0') {
 167                 (void) fprintf(stderr, gettext("%s: warning: zone \"%s\" "
 168                     "abbreviation \"%s\" has characters other than "
 169                     "alphanumerics\n"), progname, zone, abbrp);
 170                 error = 1;
 171         }
 172         if (error)
 173                 warned = TRUE;
 174 }
 175 
 176 int
 177 main(argc, argv)
 178 int     argc;
 179 char    *argv[];
 180 {
 181         register int            i;
 182         register int            c;
 183         register int            vflag;
 184         register char           *cutarg;
 185         register long           cutloyear = ZDUMP_LO_YEAR;
 186         register long           cuthiyear = ZDUMP_HI_YEAR;
 187         register time_t         cutlotime;
 188         register time_t         cuthitime;
 189         time_t                  now;
 190         time_t                  t;
 191         time_t                  newt;
 
 |