| 3826 | } |
| 3827 | /* |
| 3828 | ** There isn't one; add a new one, unless there are already too |
| 3829 | ** many. |
| 3830 | */ |
| 3831 | if (typecnt >= TZ_MAX_TYPES) { |
| 3832 | error(N_("too many local time types")); |
| 3833 | exit(EXIT_FAILURE); |
| 3834 | } |
| 3835 | i = typecnt++; |
| 3836 | utoffs[i] = utoff; |
| 3837 | isdsts[i] = isdst; |
| 3838 | ttisstds[i] = ttisstd; |
| 3839 | ttisuts[i] = ttisut; |
| 3840 | desigidx[i] = j; |
| 3841 | return i; |
| 3842 | } |
| 3843 | |
| 3844 | static void |
| 3845 | leapadd(zic_t t, int correction, int rolling) |
| 3846 | { |
| 3847 | register ptrdiff_t i; |
| 3848 | |
| 3849 | if (rolling && (lo_time != min_time || hi_time != max_time)) { |