use the name UTC instead of GMT for UTC timezone

notes by maintainer:

both C and POSIX use the term UTC to specify related functionality,
despite POSIX defining it as something more like UT1 or historical
(pre-UTC) GMT without leap seconds. neither specifies the associated
string for %Z. old choice of "GMT" violated principle of least
surprise for users and some applications/tests. use "UTC" instead.
This commit is contained in:
Natanael Copa 2017-12-07 17:54:07 +01:00 committed by Rich Felker
parent 3ec82877e7
commit eb7f93c4f6
3 changed files with 12 additions and 12 deletions

View File

@ -15,7 +15,7 @@ weak_alias(__tzname, tzname);
static char std_name[TZNAME_MAX+1];
static char dst_name[TZNAME_MAX+1];
const char __gmt[] = "GMT";
const char __utc[] = "UTC";
static int dst_off;
static int r0[5], r1[5];
@ -126,7 +126,7 @@ static void do_tzset()
s = getenv("TZ");
if (!s) s = "/etc/localtime";
if (!*s) s = __gmt;
if (!*s) s = __utc;
if (old_tz && !strcmp(s, old_tz)) return;
@ -136,7 +136,7 @@ static void do_tzset()
* free so as not to pull it into static programs. Growth
* strategy makes it so free would have minimal benefit anyway. */
i = strlen(s);
if (i > PATH_MAX+1) s = __gmt, i = 3;
if (i > PATH_MAX+1) s = __utc, i = 3;
if (i >= old_tz_size) {
old_tz_size *= 2;
if (i >= old_tz_size) old_tz_size = i+1;
@ -165,12 +165,12 @@ static void do_tzset()
}
}
}
if (!map) s = __gmt;
if (!map) s = __utc;
}
if (map && (map_size < 44 || memcmp(map, "TZif", 4))) {
__munmap((void *)map, map_size);
map = 0;
s = __gmt;
s = __utc;
}
zi = map;
@ -207,7 +207,7 @@ static void do_tzset()
}
}
if (!__tzname[0]) __tzname[0] = __tzname[1];
if (!__tzname[0]) __tzname[0] = (char *)__gmt;
if (!__tzname[0]) __tzname[0] = (char *)__utc;
if (!__daylight) {
__tzname[1] = __tzname[0];
dst_off = __timezone;
@ -216,7 +216,7 @@ static void do_tzset()
}
}
if (!s) s = __gmt;
if (!s) s = __utc;
getname(std_name, &s);
__tzname[0] = std_name;
__timezone = getoff(&s);
@ -413,7 +413,7 @@ const char *__tm_to_tzname(const struct tm *tm)
const void *p = tm->__tm_zone;
LOCK(lock);
do_tzset();
if (p != __gmt && p != __tzname[0] && p != __tzname[1] &&
if (p != __utc && p != __tzname[0] && p != __tzname[1] &&
(!zi || (uintptr_t)p-(uintptr_t)abbrevs >= abbrevs_end - abbrevs))
p = "";
UNLOCK(lock);

View File

@ -2,7 +2,7 @@
#include <errno.h>
#include "libc.h"
extern const char __gmt[];
extern const char __utc[];
struct tm *__gmtime_r(const time_t *restrict t, struct tm *restrict tm)
{
@ -12,7 +12,7 @@ struct tm *__gmtime_r(const time_t *restrict t, struct tm *restrict tm)
}
tm->tm_isdst = 0;
tm->__tm_gmtoff = 0;
tm->__tm_zone = __gmt;
tm->__tm_zone = __utc;
return tm;
}

View File

@ -2,7 +2,7 @@
#include "time_impl.h"
#include <errno.h>
extern const char __gmt[];
extern const char __utc[];
time_t timegm(struct tm *tm)
{
@ -15,6 +15,6 @@ time_t timegm(struct tm *tm)
*tm = new;
tm->tm_isdst = 0;
tm->__tm_gmtoff = 0;
tm->__tm_zone = __gmt;
tm->__tm_zone = __utc;
return t;
}