__TIME_MIN/__TIME_MAX
Bruce Evans
bde at zeta.org.au
Fri Nov 14 16:54:38 PST 2003
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
More information about the freebsd-arch
mailing list