1
0
mirror of https://frontier.innolan.net/rainlance/amiga-tz.git synced 2025-11-22 02:11:27 +00:00

Remove attempt to support floating-point time_t.

It wasn't tested and probably never worked, no platform used it,
and the latest POSIX no longer allows it.
* Makefile (typecheck): Don't check time_t being 'double'.
* Theory: Document the change.
* difftime.c (difftime):
* localtime.c (differ_by_repeat, tzload, timesub, time2sub):
* private.h (time_t_min, time_t_max):
* zdump.c (absolute_min_time, absolute_max_time, tformat):
Don't try to support floating-point time_t.
* localtime.c, private.h, zdump.c: Don't include float.h.
* localtime.c (truncate_time, double_to_time):
* private.h (TYPE_INTEGRAL):
* zdump.c (checkabsolutes):
Remove; no longer needed.  All uses removed.
* zdump.8 (LIMITATIONS): Remove discussion of floating-point time_t.
This commit is contained in:
Paul Eggert
2013-08-12 01:41:34 -07:00
parent 4e5dbe1bbf
commit 3cfb933344
7 changed files with 16 additions and 140 deletions

9
Theory
View File

@ -104,11 +104,10 @@ POSIX has the following properties and limitations.
new implementations these days typically use a signed 64-bit integer.
Unsigned 32-bit integers are used on one or two platforms,
and 36-bit integers are also used occasionally.
Although POSIX.1-2013 requires time_t to be an integer type,
earlier POSIX versions also allowed time_t to be a floating-point type.
No known platforms have a floating-point time_t and although
the tz code attempts to support floating-point time_t this has not
been tested and will probably be removed at some point.
Although earlier POSIX versions allowed time_t to be a
floating-point type, this was not supported by any practical
systems, and POSIX.1-2013 and the tz code both require time_t
to be an integer type.
These are the extensions that have been made to the POSIX functions: