Date: Sat, 15 Nov 2003 11:54:33 +1100 (EST) From: Bruce Evans <bde@zeta.org.au> To: "Jacques A. Vidrine" <nectar@FreeBSD.org> Cc: freebsd-arch@FreeBSD.org Subject: Re: __TIME_MIN/__TIME_MAX Message-ID: <20031115114906.L11453@gamplex.bde.org> In-Reply-To: <20031114194119.GA94198@madman.celabo.org> References: <20031114194119.GA94198@madman.celabo.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 14 Nov 2003, Jacques A. Vidrine wrote:
> In at least one place in libc, it is necessary to range check a time_t
> value. One most platforms, time_t has the same range as `int', but
> on at least amd64, it has a larger range. Any objections to adding
> definitions of __TIME_MIN and __TIME_MAX to sys/${arch}/_limits.h?
>
> I could just do the usual check for lossage after casting, except that
> in theory time_t could be a floating-point value (but not in reality
> in FreeBSD). It seems cleaner to me to have an explicit range.
I prefer the cast. It doesn't require nonstandard infrastructure that
would need to be maintained forever, and works even better for floating
point too (assuming a C99 compiler, but not in reality in FreeBSD :)
(min/max checks don't work right for floating point because precision
may be just as important as range).
Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20031115114906.L11453>
