[tz] Missing functionality (general question) - C11 functions, Localization, etc...

random832 at fastmail.us random832 at fastmail.us
Thu Mar 21 19:33:38 UTC 2013


On Thu, Mar 21, 2013, at 14:43, Ángel González wrote:
> I would begin by asking you what do you mean by a port of tzcode, I
> would usually understand that as making sure all functions provided by
> tz compile and work under windows/MSVC, but you seem to want something
> more like 'reimplement based in tz all time related functions available
> in Windows'.

All time related functions _in MSVCRT_. I'm not talking about
implementing the SystemTime/FileTime/etc family of functions from
kernel32.dll, or even time().

You do realize that tzcode implements important C library functions like
tzset, right? Substituting its implementation of tzset will make any
remaining MSVCRT functions simply fail to function at all: i.e. if I
leave MSVCRT's localtime_s alone, it won't know what timezone it's in
because the internal variables set by MSVCRT's tzset never got set.

Some of these are standard functions, too - as I mentioned, the
localtime_s (and related functions) are in a C11 annex. ftime isn't a
function unique to microsoft, it's an old unix function. The locale
support I was talking about for strftime isn't even related to the port,
I was just being thorough in listing all missing functionality I'd
noticed.

Now, those problems aren't necessarily real problems _if absolutely
nothing but zdump is ever going to use it_, which is part of why I was
asking,, what is the purpose of tzcode (and specifically of the library
functions in it). If it's just meant as a reference implementation, or
just to support zdump, then none of this is necessary. But then why
build libtz.a at all?



More information about the tz mailing list