From owner-cvs-src@FreeBSD.ORG Tue Apr 10 15:03:45 2007 Return-Path: X-Original-To: cvs-src@freebsd.org Delivered-To: cvs-src@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id A238F16A475; Tue, 10 Apr 2007 15:03:45 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (vc4-2-0-87.dsl.netrack.net [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id 59B3413C4AD; Tue, 10 Apr 2007 15:03:45 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.13.8/8.13.4) with ESMTP id l3AF15Rp077065; Tue, 10 Apr 2007 09:01:08 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Tue, 10 Apr 2007 09:01:13 -0600 (MDT) Message-Id: <20070410.090113.-432836671.imp@bsdimp.com> To: dot@dotat.at From: "M. Warner Losh" In-Reply-To: References: <20070409.222011.1689682576.imp@bsdimp.com> <20070410050011.GH91694@wantadilla.lemis.com> X-Mailer: Mew version 4.2 on Emacs 21.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.0 (harmony.bsdimp.com [127.0.0.1]); Tue, 10 Apr 2007 09:01:08 -0600 (MDT) Cc: grog@freebsd.org, cvs-src@freebsd.org, src-committers@freebsd.org, brian@freebsd.org, cvs-all@freebsd.org Subject: Re: cvs commit: src/usr.bin/touch touch.1 touch.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 Apr 2007 15:03:45 -0000 In message: Tony Finch 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. Warner