On Fri, 9 Dec 2011, Tomas Hajny wrote:

On Fri, December 9, 2011 13:07, Jonas Maebe wrote:
On 09 Dec 2011, at 12:28, Michael Van Canneyt wrote:

The linux kernel returns UTC time, it always has. Now() converts
this to local time.
(as does libc). All NowUTC needs to do is return the kernel time.

It should only be called NowUTC if it is defined as always returning
UTC on all platforms.

Obviously assuming that something like that is possible on a certain
platform at all (GO32v2 not having the TZ environment variable defined
will simply never be able to provide UTC time; in fact, the same applies
for OS/2 / eCS too).

I do not think the Go32V2 environment needs to be considered.
It stems from an age where the difference in timezones was irrelevant on a PC.

There are much more functions that perform strangely - if at all - in go32V2.
It doesn't even have threading multi-tasking or multi-user support. Nonetheless we introduced already lots of functions that assume this, and no-one so much as squeaked then. For a function as NowUTC I do not think we should start pulling this argument.

As far as I know, Windows and all Unix-like OSes support returning UTC.
I know nothing about OS/2-eCS, but the same arguments as for Go32V2 apply as far as I am concerned. If all these platforms can guarantee returning correct UTC time, I do not see why we would not introduce it.

Michael.
_______________________________________________
fpc-devel maillist  -  [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to