Lines Matching refs:zp
197 static void outzone(const struct zone * zp, ptrdiff_t ntzones);
1595 register struct zone * zp;
1626 zp = &zones[i];
1627 zp->z_rules = NULL;
1628 zp->z_nrules = 0;
1636 zp = &zones[i];
1637 if (strcmp(zp->z_rule, rp->r_name) != 0)
1639 zp->z_rules = rp;
1640 zp->z_nrules = out - base;
1644 zp = &zones[i];
1645 if (zp->z_nrules == 0) {
1649 eat(zp->z_filenum, zp->z_linenum);
1650 zp->z_save = getsave(zp->z_rule, &zp->z_isdst);
1655 if (zp->z_format_specifier == 's')
2824 doabbr(char *abbr, struct zone const *zp, char const *letters,
2830 char const *format = zp->z_format;
2835 if (zp->z_format_specifier == 'z')
2836 letters = abbroffset(letterbuf, zp->z_stdoff + save);
2992 register const struct zone * zp;
3015 zp = zpfirst + zonecount - 1;
3016 for (i = 0; i < zp->z_nrules; ++i) {
3019 rp = &zp->z_rules[i];
3029 dstcmp = zp->z_nrules ? rule_cmp(dstrp, stdrp) : zp->z_isdst ? 1 : -1;
3030 stdzp = dstzp = zp;
3038 zic_t save = dstrp ? dstrp->r_save : zp->z_save;
3045 zstr[0].z_stdoff = zp->z_stdoff + 2 * save;
3049 zstr[1].z_format = zp->z_format;
3050 zstr[1].z_format_specifier = zp->z_format_specifier;
3161 struct zone const *zp = &zpfirst[i];
3163 updateminmax(zp->z_untilrule.r_loyear);
3164 for (j = 0; j < zp->z_nrules; ++j) {
3165 struct rule *rp = &zp->z_rules[j];
3220 struct zone const *zp = &zpfirst[i];
3221 bool usestart = i > 0 && (zp - 1)->z_untiltime > min_time;
3223 zic_t stdoff = zp->z_stdoff;
3225 if (useuntil && zp->z_untiltime <= min_time)
3227 eat(zp->z_filenum, zp->z_linenum);
3229 if (zp->z_nrules == 0) {
3231 save = zp->z_save;
3232 doabbr(startbuf, zp, NULL, zp->z_isdst, save, false);
3233 type = addtype(oadd(zp->z_stdoff, save),
3234 startbuf, zp->z_isdst, startttisstd,
3248 if (useuntil && year > zp->z_untilrule.r_hiyear)
3255 for (j = 0; j < zp->z_nrules; ++j) {
3258 struct rule *rp = &zp->z_rules[j];
3259 eats(zp->z_filenum, zp->z_linenum,
3284 untiltime = zp->z_untiltime;
3285 if (!zp->z_untilrule.r_todisut)
3288 if (!zp->z_untilrule.r_todisstd)
3297 for (j = 0; j < zp->z_nrules; ++j) {
3298 struct rule *r = &zp->z_rules[j];
3301 eats(zp->z_filenum, zp->z_linenum,
3317 eats(zp->z_filenum, zp->z_linenum,
3320 r = &zp->z_rules[k];
3321 eats(zp->z_filenum, zp->z_linenum,
3328 rp = &zp->z_rules[k];
3332 && (oadd(zp->z_stdoff, rp->r_save)
3334 doabbr(startbuf, zp, rp->r_abbrvar,
3344 startoff = oadd(zp->z_stdoff,
3346 doabbr(startbuf, zp,
3354 && startoff == oadd(zp->z_stdoff,
3357 zp,
3364 eats(zp->z_filenum, zp->z_linenum,
3366 doabbr(ab, zp, rp->r_abbrvar,
3368 offset = oadd(zp->z_stdoff, rp->r_save);
3383 bool isdst = startoff != zp->z_stdoff;
3384 if (*startbuf == '\0' && zp->z_format)
3385 doabbr(startbuf, zp, disable_percent_s,
3387 eat(zp->z_filenum, zp->z_linenum);
3403 startttisstd = zp->z_untilrule.r_todisstd;
3404 startttisut = zp->z_untilrule.r_todisut;
3405 starttime = zp->z_untiltime;