cvs commit: src/usr.bin/touch touch.1 touch.c
M. Warner Losh
imp at bsdimp.com
Tue Apr 10 15:03:45 UTC 2007
In message: <Pine.LNX.4.64.0704101101450.24971 at hermes-1.csi.cam.ac.uk>
Tony Finch <dot at dotat.at> writes:
: On Tue, 10 Apr 2007, Greg 'groggy' Lehey wrote:
: > The definition of time_t is simply a number of seconds since a
: > specified event.
: ... modulo leap second adjustments.
: time_t cannot encode UTC correctly since you need more than a simple
: scalar to do so (e.g. you need a TAI offset or a leap second flag).
Yes. POSIX defined time_t to be UTC, and then forgot that there's
leap seconds in UTC. UTC uses a variable radix notation for just such
events, which translates poorly to a single number. Or at least
translates poorly to time_t which is defined such that one cannot take
them into account.
More information about the cvs-all