the TZ environment variable while it is running.
Arnold Robbins' strftime() implementation from comp.sources.unix caches
the value of TZ to avoid calling tzset() (it's expensive) unless it has
been changed. But since POSIX.1 also requires ctime(), localtime(),
and mktime() to call tzset(), I think that it is better for tzset()
itself to determine whether or not to parse a new timezone file.
Since perror is not permitted to change strerror()'s static buffer, I have
changed both functions to pass their own buffers to the new library-internal
function _strerror() that actually does the error message string look up.
Split strerror manpage into strerror and perror manpages.
format modifiers that are needed for a 1003.2 compliant date(1). The
modifiers don't actually do anything at present and are not documented.
It's too confusing to the user to describe localization features when
they aren't implemented yet. It is safe to do this, as the modifiers
fall back to the default behavior if the locale doesn't support alternate
eras or numeric formats.
But, in anticipation of _some_ locale support, all month and day names and
abbrevs, certain time formats, am/pm, etc. are now accessed through variables.