(Thanks to Ken Rylander.) * NEWS: Document this. * australasia (Fiji): Change Jan fall-back date from Sun>=18 to Sun>=15.
* NEWS: Document this. * localtime.c (timezone, daylight) [USG_COMPAT]: (altzone) [ALTZONE]: Remove unnecessary initializations to zero. This saves a few object-module words in some environments, and makes linkage via common storage possible.
* NEWS: Document this. * localtime.c (tzloadbody): Handle America/Anchorage after 2037, even though the sum of the abbreviations' sizes (42) plus the sum of the extended abbreviations' sizes (10) exceeds TZ_MAX_CHARS (50). Do this by reusing existing abbreviations. Thanks to Bradley White for reporting the bug. Perhaps we should also consider increasing TZ_MAX_CHARS from its currently-low value.
* zic.c (doabbr): Change penultimate arg from isdst boolean to stdoff integer, so that doabbr has enough information to output the UTC offset on request. All callers changed. Fix the sign of z_gmtoff, and add stdoff. Sign problem reported by Phil Ross in: http://mm.icann.org/pipermail/tz/2015-August/022592.html
* tz-art.htm: Update obsolete links, mostly to allmusic.com. Put the end-of-the-world joke at the end, where it belongs. * tz-link.htm: Move Seymour link to archive.org, since it's still useful but cstdbill.com no longer works. Remove obsolete link to toi.inrim.it.
(Thanks to Steffen Thorsen.) Instead of inventing an abbreviation for this time zone, institute a policy of recording time zone abbreviations rather than inventing them. * NEWS, Theory: Document this. * asia (Asia/Pyongyang): Switch to +0830 effective August 15. Use "+0830" as the abbreviation.
Problem reported by Kees Dekker in: http://mm.icann.org/pipermail/tz/2015-July/022563.html * localtime.c (gmtime_r): Define before using, in case <time.h> doesn't declare it.
* africa, europe: Fix a few more instances reported by Ian Abbott in: http://mm.icann.org/pipermail/tz/2015-July/022540.html * northamerica, southamerica, tz-art.htm: Fix a few more.
This wasn't really being used and was too much trouble to port. * Makefile, NEWS: Document this. * date.c: Don't include utmpx.h or fcntl.h.. (OTIME_MSG, NTIME_MSG, WTMPX_FILE): Remove. (main, usage): Remove support for setting the date. Remove dummy -n option. (reset, wildinput, oops, sametm, convert, checkfinal, iffy): Remove.
Problem reported by Kees Dekker in: http://mm.icann.org/pipermail/tz/2015-July/022527.html * date.c (wildinput, oops, display, timeout, iffy): * zdump.c (yeartot): * zic.c (dolink, itsdir, inrule, inzone, inzcont): Change arg attributes to match the corresponding declaration.
* Makefile: Remove no-longer-needed comments. * NEWS, date.1: Document this. * date.c [HAVE_ADJTIME || HAVE_SETTIMEOFDAY]: Don't include sys/time.h. (main): Remove support for -a, -d, -t. (reset): Use clock_settime, not the nonstandard stime. (nondigit): Remove; no longer needed. * private.h (HAVE_ADJTIME, HAVE_SETTIMEOFDAY): Remove.
The old utmp.h-related code predates POSIX, which standardized on utmpx.h in the 1990s. utmpx.h is more portable nowadays, so assume it. Problem reported by Kees Dekker in: http://mm.icann.org/pipermail/tz/2015-July/022528.html * Makefile, private.h (HAVE_UTMP_H): Default to 1. * NEWS: Document this. * date.c: Do not include utmp.h. (reset): Do not update utmp; utmpx suffices nowadays.
Problem indirectly reported by Kees Dekker in: http://mm.icann.org/pipermail/tz/2015-July/022527.html * localtime.c (tzparse): Check for sp->chars overflow before converting length to 'int', to avoid undefined behavior when the input string has more than INT_MAX bytes.
* localtime.c (typesequiv, tzparse, timesub) (increment_overflow, normalize_overflow32): Omit 'const' attribute of arguments to match the corresponding declaration. Problem reported by Kees Dekker in: http://mm.icann.org/pipermail/tz/2015-July/022527.html
Problem reported by Kees Dekker in: http://mm.icann.org/pipermail/tz/2015-July/022525.html * private.h (uint_fast64_t) [!UINT_FAST64_MAX]: New typedef
In practice tzcode 'date -n' has been a no-op for years, since OLD_TIME has been standardized by POSIX for many years, and the !OLD_TIME code was bitrotted. Continue to ignore any use of -n for backward compatibility, and remove the bitrotted code. Problem reported by Kees Dekker in: http://mm.icann.org/pipermail/tz/2015-July/022525.html * NEWS, date.1: Document this. * date.c: Assume OLD_TIME is defined. (main): Remove support for -n, except as a no-op. (reset): Remove !OLD_TIME implementation, and remove nflag arg. All callers changed. (netsettime) [TSP_SETDATE]: Remove; no longer used.