summaryrefslogtreecommitdiff
path: root/time
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-01-21 17:04:36 +0000
committerUlrich Drepper <drepper@redhat.com>1998-01-21 17:04:36 +0000
commit740152054ecbda66dae0e0f66193d8e244cc2376 (patch)
treeaa093561b97c930db58cecd18ac45401476d3a26 /time
parentb9b49b44fdc1c74ad85076bca9ff7ea0200e2214 (diff)
1998-01-22 00:55 Ulrich Drepper <drepper@happy.cygnus.com> * libc.map: Add __libc_uid, __libc_pid, __syscall_rt_sigqueueinfo, __pread64, __pwrite64, and __getpid. * libc/rt/aio_misc.c: Use pread and pwrite instead of __ protected versions. 1998-01-06 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sysdeps/unix/sysv/linux/alpha/syscalls.list: Define the cancelable socket functions as __libc_xxx with __xxx as weak alias. * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise. * sysdeps/unix/sysv/linux/m68k/socket.S: Allow __socket to be redefined. * sysdeps/unix/sysv/linux/i386/socket.S: Likewise. * sysdeps/unix/sysv/linux/arm/socket.S: Likewise. * sysdeps/unix/sysv/linux/powerpc/socket.S: Likewise. * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Likewise. * sysdeps/unix/sysv/linux/accept.S: Make __libc_xxx the main name and __xxx a weak alias. * sysdeps/unix/sysv/linux/connect.S: Likewise. * sysdeps/unix/sysv/linux/recv.S: Likewise. * sysdeps/unix/sysv/linux/recvfrom.S: Likewise. * sysdeps/unix/sysv/linux/recvmsg.S: Likewise. * sysdeps/unix/sysv/linux/send.S: Likewise. * sysdeps/unix/sysv/linux/sendmsg.S: Likewise. * sysdeps/unix/sysv/linux/sendto.S: Likewise. 1998-01-21 Andreas Jaeger <aj@arthur.rhein-neckar.de> * locale/langinfo.h: Add defines. * dirent/dirent.h: Add defines for DT_*, check also for _DIRENT_HAVE_D_TYPE. Suggested by Roland McGrath. 1998-01-16 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/netinet/ip_fw.h: Update from Linux 2.1.73+79. * README.template: Update information about possible configurations. * manual/mbyte.texi (Wide String Conversion): Fix declaration of wcstombs. Pointed out by Jochen Voss <voss@mathematik.uni-kl.de>. [PR libc/417]. * manual/time.texi (Priority): Correct description of PRIO_MAX. Pointed out by Jochen Voss <voss@mathematik.uni-kl.de>. [PR libc/416]. 11998-01-21 21:34 Ulrich Drepper <drepper@cygnus.com> * sysdeps/alpha/fpu/bits/mathdef.h: Add definition of FP_ILOGB0 and FP_ILOGNAN. Patch by a sun <asun@zoology.washington.edu>. 1998-01-21 17:53 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/_strerror.c: Handle BUFLEN == 0. Reported by Andreas Jaeger. 1998-01-20 18:13 Ulrich Drepper <drepper@cygnus.com> * locale/programs/ld-collate.c: Little optimizations. * stdio-common/xbug.c: Unset LD_LIBRRARY_PATH variable. * string/Makefile (tests): Add tst-inlcall. * string/tst-inlcall.c: New file. * string/strsignal.c: Add support for real-time signals. * sysdeps/generic/_strerror.c: Fix Handling of unknown error in presense of small buffer. * sysdeps/i386/bits/string.h: Define _HAVE_STRING_ARCH_* macros. * sysdeps/i386/i486/bits/string.h: Correct strrchr implementation for i686. * sysdeps/unix/sysv/linux/siglist.c: Change length of arrays to _NSIG + 1. 1998-01-02 15:10 Matthias Urlichs <urlichs@noris.de> * Rules: Add explicit rule for dummy.o; at least one library needs it and it isn't autogenerated by the default rules. 1997-12-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * math/libm-test.c: Tweak epsilons. 1997-12-31 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * math/test-fenv.c (feenv_nomask_test): Avoid dumping core in the child. (feenv_mask_test): Likewise. 1998-01-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makeconfig: Don't export CPPFLAGS. 1998-01-01 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * sunrpc/rpc_main.c (parseargs): Use perror to print error message. 1998-01-15 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * nss/nss_db/db-alias.c (_nss_db_getaliasent_r): Don't include terminating null in key size. 1998-01-13 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * nss/nss_files/files-service.c: Fix allocation size to include length of PROTO. * nss/nss_db/db-XXX.c (lookup): Always set errno and h_errno if applicable. Fix return value and error checking. (CONCAT(_nss_db_get,ENTNAME_r)): Loop around to skip over unparsable lines. (DB_LOOKUP): Allocate space for terminating null byte. * nss/db-Makefile ($(VAR_DB)/passwd.db): Don't handle duplicate uids specially. * db2/makedb.c (process_input): Continue processing if a duplicate key is encountered. 1998-01-19 15:20 Ulrich Drepper <drepper@cygnus.com> * time/tzfile.h: Updated from tzcode1998b. * time/zdump.c: Likewise. * time/zic.c: Likewise. * time/africa: Update from tzdata1998b. * time/antarctica: Likewise. * time/asia: Likewise. * time/australasia: Likewise. * time/etcetera: Likewise. * time/europe: Likewise. * time/leapseconds: Likewise. * time/northamerica: Likewise. * time/southamerica: Likewise. 1998-01-12 Andreas Jaeger <aj@arthur.rhein-neckar.de> * nss/nss_files/files-alias.c (get_next_alias): Do mail alias lookups ignoring case. * nss/nss_files/files-network.c: Do network lookups ignoring case. * nss/nss_files/files-hosts.c: Do hostname lookups ignoring case. * nss/nss_files/files-parse.c (LOOKUP_NAME_CASE): New macro for case insensitive comparing. Patches by Cristian Gafton <gafton@redhat.com>. 1998-01-09 Andreas Jaeger <aj@arthur.rhein-neckar.de> * sysdeps/unix/sysv/linux/net/if.h: Add IFF_*defines. Suggested by Roland McGrath. [PR libc/395] 1998-01-08 Andreas Jaeger <aj@arthur.rhein-neckar.de> * manual/arith.texi (Parsing of Integers): Correct description of strtoul. Pointed out by Scott Snyder <snyder@fnald0.fnal.gov>. [PR libc/396] 1997-12-30 14:14 Matthias Urlichs <urlichs@noris.de> * misc/lsearch.c (lsearch): Return a pointer to the new element if one was "allocated". 1997-12-26 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * string/strsignal.c: NSIG is not a valid index into _sys_siglist. Don't zap the last character of the "Unknown signal" message. 1998-01-19 15:08 Ulrich Drepper <drepper@cygnus.com> * locale/programs/charmap.c (parse_charmap): Correct parsing of ellipsis expressions. * locale/programs/charset.c (insert_char): Correctly insert value of eliipsis expression.
Diffstat (limited to 'time')
-rw-r--r--time/africa4
-rw-r--r--time/antarctica32
-rw-r--r--time/asia49
-rw-r--r--time/australasia24
-rw-r--r--time/etcetera4
-rw-r--r--time/europe1088
-rw-r--r--time/leapseconds4
-rw-r--r--time/northamerica25
-rw-r--r--time/southamerica9
-rw-r--r--time/tzfile.h6
-rw-r--r--time/zdump.c4
-rw-r--r--time/zic.c36
12 files changed, 703 insertions, 582 deletions
diff --git a/time/africa b/time/africa
index 4b56816f40..8286e6f62f 100644
--- a/time/africa
+++ b/time/africa
@@ -1,4 +1,4 @@
-# @(#)africa 7.22
+# @(#)africa 7.23
# This data is by no means authoritative; if you think you know better,
# go ahead and edit the file (and please send any changes to
@@ -301,7 +301,7 @@ Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
# Liberia
# From Paul Eggert <eggert@twinsun.com> (1993-11-18):
# In 1972 Liberia was the last country to switch
-# from a GMT offset that was not a multiple of 15 minutes.
+# from a UTC offset that was not a multiple of 15 minutes.
# Howse reports that it was in honor of their president's birthday.
# Shanks reports the date as May 1, whereas Howse reports Jan; go with Shanks.
# For Liberia before 1972, Shanks reports -0:44, whereas Howse and Whitman
diff --git a/time/antarctica b/time/antarctica
index 75d2cf63e4..1e6e73eff2 100644
--- a/time/antarctica
+++ b/time/antarctica
@@ -1,9 +1,16 @@
-# @(#)antarctica 7.10
+# @(#)antarctica 7.12
# From Paul Eggert (1997-03-28):
# To keep things manageable, we list only locations occupied year-round;
-# see <URL:http://earth.agu.org/amen/nations.html> (1996-05-24)
-# and <URL:http://www.spri.cam.ac.uk/bob/periant.htm> (1996-09-05).
+# see
+# <a href="http://earth.agu.org/amen/nations.html">
+# Antarctic Activities of Member Nations of the Antarctic Treaty (1996-05-24)
+# </a>
+# and
+# <a href="http://www.spri.cam.ac.uk/bob/periant.htm">
+# Summary of the Peri-Antarctic Islands (1996-09-05)
+# </a>
+# for information.
# Unless otherwise specified, we have no time zone information.
#
# Except for the French entries,
@@ -43,8 +50,12 @@ Zone Antarctica/Casey 0 - ___ 1969
Zone Antarctica/Mawson 0 - ___ 1954 Feb 13
6:00 - MAWT # Mawson Time
# References:
-# <URL:http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html> (1996-07-15)
-# <URL:http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html> (1996-04-19)
+# <a href="http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html">
+# http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html (1996-07-15)
+# </a>
+# <a href="http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html">
+# http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html (1996-04-19)
+# </a>
# Brazil - year-round base
# Ferraz, King George Island, since 1983/4
@@ -92,7 +103,9 @@ Zone Antarctica/DumontDUrville 0 - ___ 1947
0 - ___ 1956 Nov
10:00 - DDUT # Dumont-d'Urville Time
# Reference:
-# <URL:http://www.icair.iac.org.nz/science/reports/fr/IFRTP.html> (1996-09-10)
+# <a href="http://www.icair.iac.org.nz/science/reports/fr/IFRTP.html">
+# Support and Development of Polar Research and Technology (1996-09-10)
+# </a>
# Germany - year-round base
@@ -198,8 +211,11 @@ Zone Antarctica/McMurdo 0 - ___ 1956
# which was on GMT+12 because New Zealand was on GMT+12 all year
# at that time (1957). (Source: Siple's book 90 degrees SOUTH.)
#
-# From Susan Smith <URL:http://www.cybertours.com/whs/pole10.html>
-# (1995-11-13 16:24:56 +1300): We use the same time as McMurdo does.
+# From Susan Smith
+# <a href="http://www.cybertours.com/whs/pole10.html">
+# http://www.cybertours.com/whs/pole10.html (1995-11-13 16:24:56 +1300):
+# </a>
+# We use the same time as McMurdo does.
# And they use the same time as Christchurch, NZ does....
# One last quirk about South Pole time.
# All the electric clocks are usually wrong.
diff --git a/time/asia b/time/asia
index 34960d88e6..c7180eb408 100644
--- a/time/asia
+++ b/time/asia
@@ -1,4 +1,4 @@
-# @(#)asia 7.33
+# @(#)asia 7.35
# This data is by no means authoritative; if you think you know better,
# go ahead and edit the file (and please send any changes to
@@ -352,8 +352,11 @@ Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov
# Iran
# From Paul Eggert (1996-12-17), following up a suggestion by Rich Wales:
-# Ahmad Alavi <URL:http://tehran.stanford.edu/Iran_Lib/Calendar/taghveem.txt>
-# (1993-08-04) writes ``Daylight saving time in Iran starts from the first day
+# Ahmea Alavi in
+# <a href="http://tehran.stanford.edu/Iran_Lib/Calendar/taghveem.txt">
+# http://tehran.stanford.edu/Iran_Lib/Calendar/taghveem.txt (1993-08-04)
+# </a>
+# writes ``Daylight saving time in Iran starts from the first day
# of Farvardin and ends the first day of Mehr.'' This disagrees with the SSIM:
#
# DST start DST end
@@ -503,7 +506,8 @@ Rule Zion 1987 only - Sep 13 0:00 0 S
Rule Zion 1988 only - Apr 9 0:00 1:00 D
Rule Zion 1988 only - Sep 3 0:00 0 S
-# From Ephraim Silverberg (ephraim@cs.huji.ac.il), 1997-03-04:
+# From Ephraim Silverberg <ephraim@cs.huji.ac.il>
+# (1997-03-04 and 1997-12-31):
# According to the Office of the Secretary General of the Ministry of
# Interior, there is NO set rule for Daylight-Savings/Standard time changes.
@@ -544,16 +548,18 @@ Rule Zion 1995 only - Sep 3 0:00 0 S
# The dates for 1996 were determined by the Minister of Interior of the
# time, Haim Ramon. The official announcement regarding 1996-1998
-# (with the dates for 1997 no longer being relevant) can be viewed at:
+# (with the dates for 1997-1998 no longer being relevant) can be viewed at:
#
# ftp://ftp.huji.ac.il/pub/tz/announcements/1996-1998.ramon.ps.gz
#
-# The dates for 1997 were altered by his successor, Rabbi Eli Suissa.
-# No changes have been made regarding 1998 as of yet.
-#
+# The dates for 1997-1998 were altered by his successor, Rabbi Eli Suissa.
# The official announcement for the year 1997 can be viewed at:
#
# ftp://ftp.huji.ac.il/pub/tz/announcements/1997.ps.gz
+#
+# According to the Office of the Spokeswoman for the Ministry of Interior,
+# the dates for 1998 are tentative and are still subject to final approval
+# (probably in late February/early March of 1998).
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Zion 1996 only - Mar 15 0:00 1:00 D
@@ -561,14 +567,14 @@ Rule Zion 1996 only - Sep 16 0:00 0 S
Rule Zion 1997 only - Mar 21 0:00 1:00 D
Rule Zion 1997 only - Sep 14 0:00 0 S
Rule Zion 1998 only - Mar 20 0:00 1:00 D
-Rule Zion 1998 only - Oct 18 0:00 0 S
+Rule Zion 1998 only - Sep 6 0:00 0 S
-# From Paul Eggert (1997-03-15):
+# From Paul Eggert (1998-01-12):
# Here are guesses for rules after 1998.
# They are probably wrong, but they are more likely than no DST at all.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Zion 1999 max - Mar Fri>=15 0:00 1:00 D
-Rule Zion 1999 max - Sep Sun>=15 0:00 0 S
+Rule Zion 1999 max - Sep Sun>=1 0:00 0 S
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Asia/Jerusalem 2:20:56 - LMT 1880
@@ -774,7 +780,9 @@ Zone Indian/Maldives 4:54:00 - LMT 1880 # Male
# Mongolia
# Shanks says that Mongolia has three time zones, but usno1995 and
-# <URL:http://www.odci.gov/cia/publications/95fact/802389h.gif> (1995)
+# <a href="http://www.odci.gov/cia/publications/95fact/802389h.gif">
+# http://www.odci.gov/cia/publications/95fact/802389h.gif (1995)
+# </a>
# both say that it has just one.
# Let's comment out the western and eastern Mongolian time zones
# till we know what their principal towns are.
@@ -881,13 +889,18 @@ Zone Asia/Singapore 6:55:24 - LMT 1880
# Sri Lanka
# From Paul Eggert (1996-09-03):
-# <URL:http://www.virtual-pc.com/lankaweb/news/items/240596-2.html> (1996-05-24)
+# <a href="http://www.virtual-pc.com/lankaweb/news/items/240596-2.html">
+# http://www.virtual-pc.com/lankaweb/news/items/240596-2.html (1996-05-24)
+# </a>
# reported ``the country's standard time will be put forward by one hour at
# midnight Friday (1830 GMT) `in the light of the present power crisis'.''
# Transitions before 1996 are from Shanks (1991).
#
# From Dharmasiri Senanayake, Sri Lanka Media Minister (1996-10-24), as quoted
-# in <URL:news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net> (1996-10-26):
+# in
+# <a href="news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net">
+# news:54rka5$m5h@mtinsc01-mgt.ops.worldnet.att.net (1996-10-26):
+# </a>
# With effect from 12.30 a.m. on 26th October 1996
# Sri Lanka will be six (06) hours ahead of GMT.
@@ -977,9 +990,13 @@ Zone Asia/Tashkent 4:37:12 - LMT 1924 May 2
5:00 - UZT # Uzbekistan Time
# Shanks has Tashkent using DST after 1991, but usno1995 says they don't.
# Guess no DST after 1991.
-# <URL:http://www.odci.gov/cia/publications/95fact/802389h.gif> (1995)
+# <a href="http://www.odci.gov/cia/publications/95fact/802389h.gif">
+# http://www.odci.gov/cia/publications/95fact/802389h.gif (1995)
+# </a>
# says that Uzbekistan has two time zones, but a cable
-# <URL:http://www.itaiep.doc.gov/bisnis/cables/960510uz.html> (1996-05-10)
+# <a href="http://www.itaiep.doc.gov/bisnis/cables/960510uz.html">
+# http://www.itaiep.doc.gov/bisnis/cables/960510uz.html (1996-05-10)
+# </a>
# from the American Embassy in Tashkent implies that they have just one.
# Vietnam
diff --git a/time/australasia b/time/australasia
index 2726a25d3d..5121cd32fd 100644
--- a/time/australasia
+++ b/time/australasia
@@ -1,4 +1,4 @@
-# @(#)australasia 7.37
+# @(#)australasia 7.39
# This file also includes Pacific islands.
# Notes are at the end of this file
@@ -303,7 +303,7 @@ Rule NZ 1928 only - Nov 4 2:00 0:30 HD
Rule NZ 1929 only - Oct 30 2:00 0:30 HD
Rule NZ 1930 1933 - Mar Sun>=15 2:00 0 S
Rule NZ 1930 1933 - Oct Sun>=8 2:00 0:30 HD
-# Whitman says DST went on and off during war years, and the base GMT offset
+# Whitman says DST went on and off during war years, and the base UT offset
# didn't change until 1945 Apr 30; go with Shanks.
Rule NZ 1934 1940 - Apr lastSun 2:00 0 S
Rule NZ 1934 1939 - Sep lastSun 2:00 0:30 HD
@@ -509,6 +509,26 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
# and perhaps the newspaper's `2:00' is referring to standard time.
# For now we'll continue to assume 2:00s for changes since 1960.
+# From Eric Ulevik <eau@zip.com.au> (1998-01-05):
+#
+# Here are some URLs to Australian time legislation. These URLs are stable,
+# and should probably be included in the data file. There are probably more
+# relevant entries in this database.
+#
+# NSW (including LHI and Broken Hill):
+# <a href="http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html">
+# http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html
+# </a>
+# ACT
+# <a href="http://www.austlii.edu.au/au/legis/act/consol_act/consol_act/stasta1972279/i">
+# http://www.austlii.edu.au/au/legis/act/consol_act/consol_act/stasta1972279/i
+# </a>
+# ndex.html
+# SA
+# <a href="http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html">
+# http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html
+# </a>
+
# Northern Territory
# From George Shepherd via Simon Woodhead via Robert Elz (1991-03-06):
diff --git a/time/etcetera b/time/etcetera
index a6a65db40a..cf1516fe2f 100644
--- a/time/etcetera
+++ b/time/etcetera
@@ -1,4 +1,4 @@
-# @(#)etcetera 7.8
+# @(#)etcetera 7.9
# These entries are mostly present for historical reasons, so that
# people in areas not otherwise covered by the tz files could "zic -l"
@@ -20,7 +20,7 @@ Link Etc/GMT Etc/GMT0
# We use POSIX-style signedness in the names and output,
# internal-style signedness in the specifications.
-# For example, TZ=Etc/GMT+4 corresponds to 4 hours _behind_ GMT;
+# For example, TZ=Etc/GMT+4 corresponds to 4 hours _behind_ UTC;
# it is equivalent to TZ=GMT+4, which is implemented directly as per POSIX.
# Earlier incarnations of this package were not POSIX-compliant,
diff --git a/time/europe b/time/europe
index 4e30ab4934..dbaa01f2f4 100644
--- a/time/europe
+++ b/time/europe
@@ -1,4 +1,4 @@
-# @(#)europe 7.49
+# @(#)europe 7.52
# This data is by no means authoritative; if you think you know better,
# go ahead and edit the file (and please send any changes to
@@ -141,299 +141,355 @@
# If you can predict what Parliament will do, you should be in
# politics making a fortune, not computing.
-# From Peter Ilieve <peter@memex.co.uk> (1993-09-03):
-#
-# Our Government...couldn't...make a decision after the 1989 consultation
-# exercise about the UK changing its timezone so it just let things drift
-# (different from deciding to keep the status quo). According to the
-# Summer Time Order 1992 (SI 1992/1729) the dates of Summer Time for 1993
-# and 1994 are:
-# Start End
-# 1993 28 March 24 October
-# 1994 27 March 23 October
-# All start and end times are at 01:00 GMT.
-#
-# There [was] an error in your tables for the start and end times prior to 1981.
-# The UK always used to change at 02:00 GMT. In 1981 it changed to 01:00 GMT
-# as a part of EC harmonisation and has remained at that time since.
-#
-# I have found the default algorithm for UK Summer Time, it is in the
-# Summer Time Act 1972. Section 1 states that in the absence of an Order
-# in Council Summer Time starts at 02:00 GMT on the morning of the day
-# after the third Saturday in March, unless that day is Easter Day, in
-# which case it is the morning of the day after the second Saturday.
-# It ends at 02:00 GMT on the morning of the day after the fourth Saturday
-# in October. (All the redundant `morning of the day ...' is in the Act.)
-# This is only of passing interest now as it will always be overridden by
-# an Order in Council (a Statutory Instrument, the SI thing mentioned above)
-# to specify the EC specified dates.
-
-# From Peter Ilieve <peter@memex.co.uk> (1993-10-18):
-#
-# My contact in the Ministry of Defence Public Relations department
-# accepted the challenge of looking into this and produced the following,
-# from Hansard (the official record of the UK Parliament), Oral Answers,
-# 1 March 1945, cols 1559--60:
-#
-# `58. Major Sir Goronwy Owen asked the Secretary of State for the Home
-# Department if he is now able to state the Government's proposals
-# regarding double summer time.
-#
-# [two other similar questions omitted]
-#
-# Mr. H. Morrison: The Government, in reviewing the matter, have
-# considered, [...] the conclusion has been reached that the adoption of
-# double summer time from the beginning of April is essential to the
-# maintenance of the war effort. [...] As 1st April is Easter Sunday,
-# when very early services are held in many churches, it is proposed that
-# double summer time shall start not in the night preceding Easter
-# Sunday, but in the night of Sunday- Monday so that it will operate from
-# Monday, 2nd April.'
-
# From Chris Carrier <72157.3334@CompuServe.COM> (1996-06-14):
# I remember reading in various wartime issues of the London Times the
# acronym BDST for British Double Summer Time. Look for the published
# time of sunrise and sunset in The Times, when BDST was in effect, and
# if you find a zone reference it will say, "All times B.D.S.T."
-# From Peter Ilieve <peter@memex.co.uk> (1993-09-03):
-#
-# > # Current rules
-# > Rule GB-Eire 1981 max - Mar lastSun 1:00s 1:00 BST
-# > Rule GB-Eire 1981 max - Oct Sun>=23 1:00s 0 GMT
+# From Peter Ilieve <peter@aldie.co.uk> (1998-01-12):
+# The following list attempts to show the complete history of Summer Time
+# legislation in the United Kingdom, and has quite a bit to say about
+# the Isle of Man and the Channel Islands as well.
#
-# The ending rule here doesn't match the EC rules, which specify the fourth
-# Sunday in October for the UK and Eire. The `fourth Sunday' rule wasn't
-# followed in 1989, but then the sixth EC directive wasn't in force then
-# and I don't know what previous ones said. 1995 is the next year with
-# the 4th Sun on 22 Oct, but that year isn't covered by the UK Summer Time
-# Order or the sixth EC directive. Your Oct Sun>=23 rule matches history
-# and with things only announced for 2 years or so in advance who knows
-# what will happen.
+# Things that I have not personally seen are marked (???). Things that
+# I haven't seen but Joseph Myers has are marked (jsm). The problem
+# with finding old Orders (rather than Acts) is that nobody seems to
+# keep the actual documents themselves, not even the Government. They
+# get bound into annual volumes, which are published, but by the time
+# this happens the Orders are mainly spent as the years they refer
+# to have come and gone, so they don't get included in the annual
+# volumes.
#
-# There are renewed rumours that the Government here will make another
-# attempt at resolving this issue, which is what prompted me to start
-# asking the Home Office and the EC about it again. The EC categorically
-# state they are not asking anybody to change timezone, they only want
-# common start/end dates. The UK Govt. seem to want to change our zone
-# and blame the resulting fuss on the EC. Me, I think we should scrap
-# summer time completely, noon is when the Sun is overhead, and that should
-# be the end of it.
-
-# From Peter Ilieve <peter@memex.co.uk> (1993-10-22):
+# Thanks are due to my learned legal friend Lorna Montgomerie, who dug out
+# the dusty old statutes, to Melanie Allison of the Ministry of Defence,
+# who provided the wartime regulations and a snippet of Hansard explaining
+# why double summer time started on a Monday in 1945 (it was Easter),
+# and to Joseph Myers <jsm28@cam.ac.uk>, who tracked down the Orders
+# up to 1945, some of the old Acts, and the first five EC Directives.
#
-# I now have the text of the Summer Time Act 1916, the granddaddy of them all.
-# It is headed: `An Act to provide for the Time in Great Britain and Ireland
-# being in advance of Greenwich and Dublin mean time respectively in the
-# summer months'.
+# Some definitions:
#
-# It specifies 21 May and 1 October for 1916 (both at 02:00 GMT) and whatever
-# dates an Order in Council may specify for subsequent years.
+# Great Britain: England, Scotland and Wales
+# United Kingdom: Great Britain plus Ireland (up to 1922) or Northern
+# Ireland (since 1922)
+# S.I.: Statutory Instrument, the modern name for secondary legislation
+# S.R.&O.: Statutory Rules and Orders, the older name for secondary legislation
#
-# Section 4 states: `This act shall apply to Ireland in like manner as it
-# applies to Great Britain, with the substitution however of references
-# to Dublin mean time for references to Greenwich mean time.'
+# Unless otherwise specified, Acts and secondary legislation are assumed
+# to apply throughout the United Kingdom, but not to the Isle of Man
+# or the Channel Islands.
#
-# Lorna, my learned legal friend who supplied it, also offers this quote
-# from Halsbury's Statutes on the extent of Acts:
+# Some of the Acts and Orders I found in various libraries, and I don't
+# have copies. When I looked at them I was looking for dates and not things
+# like whether they applied to the Bailiwick of Jersey. I will try to
+# check these documents again.
#
-# `An Act of the United Kingdom Parliament is to be construed prima facie
-# to apply to the whole of the United Kingdom and not to any place outside.
-# [...] The expression "United Kingdom" for this purpose includes (since
-# 1922) Great Britain (ie. England, Wales and Scotland) and Northern Ireland,
-# but it does not include the Channel Islands or the Isle of Man.'
+# ---
#
-# She goes on to say the seminal event of 1922 was the establishment of
-# the Irish Free State, now called Eire.
+# - The Statutes (Definition of Time) Act, 1880 (43 & 44 Vict. c. 9)
#
-# The Act doesn't say anything about Wales (or Scotland) so I would assert
-# that Shanks is wrong here. I would like to know why he thinks Wales
-# was different.
+# Defined Greenwich mean time to be the standard time in Great Britain
+# and Dublin mean time to be the standard time in Ireland, superseding
+# various forms of local mean time.
#
-# It also confirms the fact that Ireland followed Dublin time back then,
-# and 25 minutes behind Greenwich, as Shanks has it, would be correct.
-
-# From Peter Ilieve <peter@memex.co.uk> (1993-10-28):
+# - The Statutory Time Act, 1883 (???)
#
-# I now have before me, thanks to my learned legal friend Lorna, the text of
-# the Time (Ireland) Act 1916.
+# An Act of Tynwald, the Isle of Man Parliament. It appears to have
+# defined the standard time on the Isle of Man as GMT but as I haven't
+# seen it I don't know if it used Greenwich mean time, some other definition,
+# or just said that Isle of Man time would be the same as in Great Britain.
#
-# It says that as from 2 AM Dublin Mean Time on 1 October 1916 the time
-# for general purposes in Ireland shall be the same as the rest of Great
-# Britain (ie. GMT with the Summer Time periods specified by the Summer Time
-# Act 1916).... As Ireland was behind GMT/BST at 02:00 DMT on 1 Oct GB would
-# have already put the clocks back. Using DST as Dublin Summer Time the
-# sequence would have been:
-# Dublin London
-# 02:34 DST 02:59 BST
-# 02:35 DST 02:00 GMT
-# 02:59 DST 02:24 GMT
-# 02:25 GMT 02:25 GMT
-# with the transition 03:00 DST -> 02:00 DMT -> 02:25 GMT all at once.
+# - The Isle of Man (War Legislation) Act, 1914 (4 & 5 Geo. 5. c. 62) (???)
#
-# In a table of repeals in the Schedule to the Act it mentions the
-# Statutes (Definition of Time) Act 1880. This is presumably the source
-# of the 1880 date in Shanks. The little bit of it that is repealed
-# also refers solely to Ireland and Dublin Mean Time.
-
-# From Peter Ilieve <peter@memex.co.uk> (1993-10-29):
+# Gives the power, by Order in Council, to extend wartime legislation
+# to the Isle of Man.
+#
+# - The Summer Time Act, 1916 (6 & 7 Geo. 5. c. 14)
+#
+# Introduced Summer Time for the first time, in Great Britain and Ireland.
+# Specified a one hour offset from GMT (DMT in Ireland), dates of
+# Sunday 21 May and Sunday 1 October and times of 02:00 (GMT/DMT).
+# Gave a power to make Orders in subsequent years, for the duration
+# of the then current war.
+#
+# - The Time (Ireland) Act, 1916 (6 & 7 Geo. 5. c. 45)
+#
+# This abolished Dublin mean time at 02:00 DMT on Sunday 1 October 1916,
+# bringing the whole of the United Kingdom onto GMT. As Ireland was behind
+# GMT/BST at 02:00 DMT on 1 Oct Great Britain had already put the clocks back.
+# Using Paul Eggert's suggestion of IST for Irish Summer Time and the figure
+# derived from Whitman for the offset of IST from GMT (00:34:39) the sequence
+# would have been:
+# Dublin London
+# 02:34:38 IST 02:59:59 BST
+# 02:34:39 IST 02:00:00 GMT
+# 02:59:59 IST 02:25:20 GMT
+# 02:25:21 GMT 02:25:21 GMT
+# with the transition 03:00:00 IST -> 02:00:00 DMT -> 02:25:21 GMT all at once.
+#
+# - S.R.&O. 1916, No. 382
+#
+# An Order made under the Isle of Man (War Legislation) Act, 1914
+# extending the Summer Time Act, 1916 to the Isle of Man. Dated
+# 23 May 1916, two days after the start of Summer Time, but it says that
+# the Act is deemed to have taken effect in the Isle of Man at the same
+# time as it took effect in the United Kingdom.
+#
+# - S.R.&O. 1917, No. 362
+#
+# An Order made under the Summer Time Act, 1916 giving dates
+# for Summer Time in 1917 of Sunday 8 April to Monday 17 September,
+# both at 02:00 GMT. Note that Summer Time ends on a Monday.
+#
+# - S.R.&O. 1917, No. 358
+#
+# An Order made under the Summer Time (Isle of Man) Act, 1916
+# (the thing created by S.R.&O. 1916, No. 382) specifying the same
+# dates of 8 April to 17 September, at 02:00 GMT for the Isle of Man.
+#
+# - S.R.&O. 1918, No. 274
+#
+# An Order made under the Summer Time Act, 1916 giving dates
+# for Summer Time in 1918 of Sunday 24 March to Monday 30 September,
+# both at 02:00 GMT.
+#
+# - S.R.&O. 1918, No. 429
+#
+# The matching Isle of Man Order for 1918 with the same dates and times.
+#
+# - S.R.&O. 1919, No. 297
+#
+# An Order made under the Summer Time Act, 1916 giving dates
+# for Summer Time in 1919 of Sunday 30 March to Monday 29 September,
+# both at 02:00 GMT.
+#
+# - S.R.&O. 1919, No. 366
+#
+# The matching Isle of Man Order for 1919 with the same dates and times.
+#
+# - S.R.&O. 1920, No. 458
+#
+# An Order made under the Summer Time Act, 1916 giving dates
+# for Summer Time in 1920 of Sunday 28 March to Monday 27 September,
+# both at 02:00 GMT.
+#
+# - S.R.&O. 1920, No. 573
+#
+# The matching Isle of Man Order for 1920 with the same dates and times.
+#
+# - S.R.&O. 1920, No. 1844
+#
+# An Order modifying both S.R.&O. 1920, No. 458 and S.R.&O. 1920, No. 573 to
+# change the end date for Summer Time from Monday 27 September to
+# Monday 25 October (the time remaining 02:00 GMT). The 1989 Green
+# Paper (Cm 722) says this was done because of a coal strike.
+#
+# - The War Emergency Laws (Continuance) Act, 1920 (10 & 11 Geo. 5. c. 5) (???)
#
-# My case is that, with the sole exception of Ireland in 1916 using Dublin
-# Mean Time, Summer Time has been uniform throughout the United Kingdom
-# ever since it first started in 1916.
+# This extends the power to make Orders under the Summer Time Act, 1916
+# for a period of 12 months after the termination of the war.
+# I haven't seen this one so I don't know when it came into force, or
+# when the law deemed the termination of the war to have been.
#
-# The United Kingdom is England, Wales and Scotland plus all of Ireland from
-# 1916 up to and including 1921, or plus Northern Ireland from 1922 to date.
+# - S.R.&O. 1921, No. 363
#
-# The dates used are those specified in the table in Summer Time: A Consultation
-# Document (Cm 722, 1989) that are now included in the europe file, with a
-# change to a single date, the start in 1924. I made a typo in my 1989 mail
-# and the table itself is also wrong. The correct date is 13 April.
-# The times were 02:00 GMT up to and including 1980, 01:00 GMT from 1981 on,
-# except for wartime double summer time.
+# An Order made under the Summer Time Act, 1916 and the War
+# Emergency Laws (Continuance) Act, 1920 giving dates for Summer Time
+# in 1921 of Sunday 3 April to Monday 3 October, both at 02:00 GMT.
#
-# As evidence I would cite:
+# - S.R.&O. 1921, No. 364
#
-# - The Summer Time Act, 1916.
+# The matching Isle of Man Order for 1921 with the same dates and times.
#
-# This specifically states that it applies to Ireland, specifies dates of
-# 21 May and 1 October and times of 02:00, and says that in Ireland the
-# times relate to Dublin mean time. It specifies an offset of 1 hour.
-#
-# - The Time (Ireland) Act, 1916
-#
-# This abolishes Dublin mean time on 02:00 DMT 1 October 1916.
-# It repeals that section of the Statutes (Definition of Time) Act, 1880
-# that specifies DMT. It is therefore a safe bet that DMT existed at least
-# from 1880 and was the only alternative standard time in the UK.
+# - S.R.&O. 1922, No. 264 (???)
#
-# - The Summer Time Act, 1922
+# This probably defines Summer Time for 1922 as the Summer Time Act, 1922
+# was passed after the start date. Dates from Cm 722:
+# 1922: 26 March to 8 October
+#
+# - S.R.&O. 1922, No. 290 (???)
+#
+# This is probably the matching Isle of Man Order.
+#
+# - The Summer Time Act, 1922 (12 & 13 Geo. 5. c. 22)
#
# This specifies an offset of 1 hour and dates of the day after the third
# Saturday in April, unless that be Easter, in which case it is the day after
# the second Saturday, and the day after the third Saturday in September.
# The time is 02:00 GMT. It applied in 1922 and 1923, and longer if Parliament
-# so approved.
+# so approved. It applied to the Isle of Man and the Channel Islands as well.
+# Came into Force on 20 July 1920. Note the reversion to ending on a Sunday.
+#
+# - S.R.&O. 1922, No. 1205
+#
+# An Order made under the War Emergency Laws (Continuance) Act, 1920
+# dated 13 October 1922. It revokes (among other things) the Order extending
+# the Summer Time Act, 1916 to the Isle of Man.
+#
+# - The Expiring Laws Continuance Act, 1923 (13 & 14 Geo. 5. c. 37) (jsm)
+#
+# This extended the Summer Time Act, 1922 (among other things) until
+# 31 December 1924.
+#
+# - The Expiring Laws Continuance Act, 1924 (15 Geo. 5. c. 1) (jsm)
#
-# It specifically states that it applies to Northern Ireland, the Channel
-# Islands, and the Isle of Man.
+# This further extended the Summer Time Act, 1922 (among other things) until
+# 31 December 1925.
#
-# - The Summer Time Act, 1925
+# - The Time Act (Northern Ireland), 1924 (14 & 15 Geo. 5. c. 24 (N.I.))
+#
+# This Act says that while it remains in force, any Act or Order relating
+# to the time for general purposes in Great Britain shall also apply
+# in Northern Ireland, and the Time (Ireland) Act, 1916 shall have effect
+# accordingly.
+#
+# - The Summer Time Act, 1925 (15 & 16 Geo. 5. c. 64)
#
# This makes the 1922 Act permanent, with a change to the end date to the
-# day after the first Saturday in October. It says nothing about extent,
-# so that part of the 1922 Act will still apply.
+# day after the first Saturday in October. Came into force on 7 August 1925.
+#
+# - The Emergency Powers (Defence) Act, 1939 (2 & 3 Geo. 6. c. 62) (???)
+#
+# I haven't seen this one. It presumably gave the Government powers to
+# do all manner of things during the newly started war.
#
-# - The Defence (Summer Time) Regulations, 1939, SR&O 1939 No. 1379
-# [SR&O == Statutory Regulation and Order]
+# - The Defence (Summer Time) Regulations, 1939, S.R.&O. 1939, No. 1379
#
# These were made under the Emergency Powers (Defence) Act, 1939.
-# It changes the end date to be the day after the third Saturday in November.
-# It makes consequential changes to some vehicle lighting legislation,
-# which includes the Motor Vehicles and Road Traffic (Northern Ireland) Act,
-# 1934, so it seems clear it applies in Northern Ireland.
+# They change the end date to be the day after the third Saturday in November.
#
-# - An Order in Council amending the The Defence (Summer Time) Regulations,
-# 1939, SR&O 1940 No. 1883
+# - S.R.&O. 1940, No. 1883
#
+# An Order in Council amending the Defence (Summer Time) Regulations, 1939.
# This continues summer time throughout the year after it starts in 1940.
-# It says nothing about extent and has no consequential changes.
+# There was another Order (S.R.&O. 1940, No. 172) that I assume had merely
+# changed the dates, to start on 4 February, and was then superseded by this
+# one. I haven't seen No. 172 so I don't know what end date it would have
+# specified. The dates from Cm 722:
+# 1940: Summer Time starts on 4 February
#
-# - An Order in Council amending the The Defence (Summer Time) Regulations,
-# 1939, SR&O 1941 No. 476
+# - S.R.&O. 1941, No. 476
#
+# Another Order amending the Defence (Summer Time) Regulations, 1939.
# This introduces double summer time, starting at 01:00 GMT on the day after
# the first Saturday in May and ending at 01:00 GMT on the day after the
# second Saturday in August, offset another hour from normal summer time,
-# which continues throughout the rest of the year. It goes on a lot about
-# consequential changes to agricultural wages legislation, and says in part
-# `... and in its application to Northern Ireland have effect as
-# if for the references to the Agricultural Wages (Regulation) Acts, 1924 and
-# 1940, there were substituted references to the Agricultural Wages (Regulation)
-# Acts (Northern Ireland), 1939 and 1940, ...'. It also has a similar section
-# for Scotland. Both sections substitute the local Agricultural Wages Board
-# for the Agricultural Wages Board for England and Wales, showing that
-# England and Wales were indivisible.
-#
-# - An Order in Council amending the The Defence (Summer Time) Regulations,
-# 1939, SR&O 1942 No. 506
-#
-# This changes the start date of double summer time to the day after the first
-# Saturday in April. It says nothing about extent.
-#
-# - An Order in Council amending the The Defence (Summer Time) Regulations,
-# 1939, SR&O 1944 No. 932
-#
-# This changed the end date of double summer time to 17 September 1944.
+# which continues throughout the rest of the year.
+#
+# - S.R.&O. 1942, No. 506
+#
+# Another Order amending the Defence (Summer Time) Regulations, 1939.
+# This changes the start date of Double Summer Time to the day after the first
+# Saturday in April, bringing it forward from May.
+#
+# - S.R.&O. 1944, No. 932
+#
+# This changed the end date of Double Summer Time to 17 September 1944.
# (I don't have the text of this, just a note of what it did, the text almost
# certainly had the `day after the nth Saturday' form.)
#
-# (I am missing whatever regulations there were to change things in 1945
-# and the Summer Time Act, 1947.)
+# - S.R.&O. 1945, No. 312 (???)
#
-# - The British Standard Time Act, 1968
+# Probably defines the dates of Double Summer Time in 1945.
+# I do have this quote from Hansard (the official record of the United Kingdom
+# Parliament), Oral Answers, 1 March 1945, cols 1559--60:
#
-# This came into force on 27 October 1968 and continued summer time throughout
-# the year as an experiment until it expired on 31 October 1971.
-# There was no double summer time so we didn't have to change the clocks at all.
-# It specifically said it applied to Northern Ireland. It also said it
-# applied to Jersey, Guernsey and the Isle of Man unless they passed
-# measures saying it didn't.
+# `58. Major Sir Goronwy Owen asked the Secretary of State for the Home
+# Department if he is now able to state the Government's proposals
+# regarding double summer time.
#
-# - The Manx Time Act, 1968
+# [two other similar questions omitted]
#
-# This is an Act of Tynwald (the Isle of Man Parliament) that said that
-# henceforth Manx time would be the same as the time in Great Britain.
+# Mr. H. Morrison: The Government, in reviewing the matter, have
+# considered, [...] the conclusion has been reached that the adoption of
+# double summer time from the beginning of April is essential to the
+# maintenance of the war effort. [...] As 1st April is Easter Sunday,
+# when very early services are held in many churches, it is proposed that
+# double summer time shall start not in the night preceding Easter
+# Sunday, but in the night of Sunday-Monday so that it will operate from
+# Monday, 2nd April.'
#
-# - The Summer Time Act, 1972
+# Cm 722 gives dates of:
+# 1945: Double Summer time: 2 April to 15 July
+# 1945: Summer Time ends on 7 October
#
-# This specified a reversion to normal summer time behaviour with a start
-# date of the day after the third Saturday in March, unless that is Easter,
-# when it is the day after the second Saturday, and an end date of the day
-# after the fourth Saturday in October. Times are at 02:00 GMT, offset is
-# 1 hour.
+# - S.R.&O. 1945, No. 1208
#
-# It has the same wording about extent as the British Standard Time Act, 1968,
-# applying to Northern Ireland unconditionally and to Jersey, Guernsey and the
-# Isle of Man if they don't do something about it.
+# An Order under the Emergency Powers (Defence) Acts, 1939 and 1940 revoking
+# a long list of things, including the Defence (Summer Time) Regulations, 1939.
+# This meant that Summer Time reverted to being set by the 1922 and 1925 Acts.
#
-# (I am missing various Summer Time Orders that modified the 1972 Act to
-# harmonise with the EC since 1981. The major change is that the time changes
-# to 01:00 GMT.)
+# - The Summer Time Act, 1947 (10 & 11 Geo. 6. c. 16)
#
-# - The Summer Time Order, 1992, SI 1992/1729 [SI == Statutory Instrument]
+# Came into force on 11 March 1947. Amended the Summer Time Acts, 1922 and
+# 1925 to change the dates of Summer Time and to introduce Double Summer Time
+# (although it doesn't give this, or any, name for this period of 2 hour
+# offset from GMT). Dates are given for 1947 only and are: 02:00 GMT Sunday
+# 16 March, 01:00 GMT Sunday 13 April, 01:00 GMT Sunday 10 August, and 02:00
+# Sunday 2 November. It gave a power to make Orders for subsequent years,
+# both to vary the dates and to continue Double Summer Time. It applied
+# to the Isle of Man and the Channel Islands.
#
-# This specifies dates of:
-# Start End
-# 1993 28 March 24 October
-# 1994 27 March 23 October
-# All start and end times are at 01:00 GMT....
+# - Summer Time Order, 1948 (S.I. 1948/495) (???)
+# - Summer Time Order, 1949 (S.I. 1949/373) (???)
+# - Summer Time Order, 1950 (S.I. 1950/518) (???)
+# - Summer Time Order, 1951 (S.I. 1951/430) (???)
+# - Summer Time Order, 1952 (S.I. 1952/451) (???)
#
-# - Some text on the extent of Acts, from Halsbury's Statutes
+# These presumably give the dates of Summer Time for the relevent years.
+# There was no Double Summer Time. The dates given in the 1989 Green Paper
+# for these years are:
+# 1948: 14 March to 31 October
+# 1949: 3 April to 30 October
+# 1950: 16 April to 22 October
+# 1951: 15 April to 21 October
+# 1952: 20 April to 26 October
+# After 1952 things revert back to the 1922 and 1925 Acts.
#
-# `An Act of the United Kingdom Parliament is to be construed prima facie
-# to apply to the whole of the United Kingdom and not to any place outside.
-# [...] The expression "United Kingdom" for this purpose includes (since
-# 1922) Great Britain (ie. England, Wales and Scotland) and Northern Ireland,
-# but it does not include the Channel Islands or the Isle of Man.'
+# - The Interpretation Act (Northern Ireland), 1954 (1954 c. 33 (N.I.)) (???)
#
-# So, many of these measures specifically include Northern Ireland,
-# the Channel Islands and the Isle of Man. None of them exclude any
-# part of the UK. The default interpretation of Acts is that they apply
-# throughout the UK.
+# I presume that section 39 of this Act is similar to section 9 of the
+# Interpretation Act, 1978 (listed below) in specifying GMT as the
+# legal time in Northern Ireland, replacing the Time (Ireland) Act, 1916.
#
-# With that, I rest my case Milud :-)
+# - Summer Time Order, 1961 (S.I. 1961/71)
#
-# Thanks are due to my learned legal friend Lorna Montgomerie, who dug out
-# the dusty old statutes, and to Melanie Allison of the Ministry of Defence,
-# who provided the wartime regulations and a snippet of Hansard explaining
-# why double summer time started on a Monday in 1945 (it was Easter).
-
-# From Peter Ilieve <peter@aldie.co.uk> (1996-05-29):
-# I have now got a copy of the British Standard Time Act 1968.
-# It says (S4(2)) that it expires at 02:00 GMT on 31 October 1971 unless
-# an Order in Council was passed in Parliament to make the Act permanent.
-# No Order was passed, so 02:00 1971-10-31 it is...
+# Specified dates of 26 March and 29 October (02:00 GMT) for 1961
+#
+# - Summer Time (1962) Order, 1961 (S.I. 1961/2465)
+#
+# Specified dates of 25 March to 28 October (02:00 GMT) for 1962.
+#
+# - Summer Time Order, 1963 (S.I. 1963/81)
+#
+# Specified dates of 31 March to 27 October (02:00 GMT) for 1963.
+#
+# - Summer Time (1964) Order, 1963 (S.I. 1963/2101)
+#
+# Specified dates of 22 March to 25 October (02:00 GMT) for 1964.
+#
+# - Summer Time Order, 1964 (S.I. 1964/1201)
+#
+# Specified dates for three years (all 02:00 GMT):
+# 1965: 21 March to 24 October
+# 1966: 20 March to 23 October
+# 1967: 19 March to 29 October
+#
+# - Summer Time Order, 1967 (S.I. 1967/1148)
+# - Summer Time Order, 1968 (S.I. 1968/117)
+#
+# The first of these specifies dates for 1968 of 18 February for the United
+# Kingdom but 7 April for the Isle of Man, both ending on 27 October,
+# all at 02:00 GMT. The second Order changes the Isle of Man start date
+# to 18 February to match the United Kingdom.
+#
+# - The British Standard Time Act 1968 (1968 c. 45)
+#
+# This came into force on 27 October 1968 and continued summer time throughout
+# the year. It expired at 02:00 GMT on 31 October 1971, as specified in the
+# Act, as Parliament did not move to make this experment permanent.
+# It applied to the Isle of Man and the Channel Islands.
#
# Interestingly, it says baldly `This Act shall come into force on
# 27 October 1968', without giving a time. As S1 of the Act merely
@@ -443,218 +499,182 @@
# possibly argue that the start time of BStandardT was 00:00 1968-10-27,
# especially as the Act repealed the Summer Time Acts 1916--1947 in toto,
# thereby destroying the authority of the Summer Time Order specifying
-# summer time in 1968....
-
-# From Peter Ilieve <peter@memex.co.uk> (1993-11-18)
-#
-# Here is a revised version of my tabrules file for the perl script I sent
-# before. I have personally verified the various Orders back to 1953 and
-# all the Acts.
-#
-# There are no changes to the dates we already have.
-#
-# My doubt about an early start in 1967 on 18 Feb was misplaced, the Order
-# does say 18 Feb. This is an interesting case as the first Order gave a
-# different date of 7 April 1967 for the Isle of Man but this was changed
-# before it came into effect by another Order for the Isle of Man alone.
-#
-# I don't think I will be able to find any more of the earlier Orders.
-# The annual volumes for 1949--52 do not contain the various Summer Time
-# Orders. They therefore don't appear in the index. They rate a mention in
-# italics in the numerical list at the start but that is all.
-# I think what happens is that the annual volume is produced well after the
-# end of the year in question, by which time the Summer Time Order is spent.
-# They assume that nobody would ever be stupid enough to want to see it
-# again so they leave it out.
-#
-# It might be a good idea to put this table, or the output of tabscript
-# showing all the moves because of Easter, in the europe file comments in
-# place of my old transcription of the Green Paper table [the UK Government
-# paper "Summer Time: A Consultation Document" (HMSO Cm722 June 1989)].
-#
-# Peter Ilieve peter@memex.co.uk
-#
-#
-# ## control file for tabscript, a program to generate UK summer time dates
-# ## matching the table in Cm 722, the 1989 Green Paper.
-# ## Lines like this are comments.
-# ## Lines with a single # at the start are copied into the output
-# ## Control lines are of the form
-# ## <years> <start date> <end date> <flags> <double start> <double end>
-# ## <years> is either a single year or a hyphen separated range, with --
-# ## also accepted as I use this in TeX a lot.
-# ## <start date> and <end date> are a digit followed bu a month name.
-# ## It is either an nth Saturday or an explicit date, depending on <flags>.
-# ## 0 and/or none are used when there is no date, as during 1968--71.
-# ## <flags> can contain `fixed' to indicate explicit dates and `double'
-# ## to indicate double summer time dates are present.
-# ## At present double requires fixed as well.
-# ## <double start> and <double end> are like the start and end dates, with
-# ## the exception of the 0 and/or none feature.
-#
-# ## Blank lines are also ignored.
-#
-# ## Places where I am uncertain, not having personally verified the dates
-# ## against the Act or Order, are marked ???
-# ## These dates are taken from the Cm 722 table.
-#
-# # Summer Time Act, 1916
-# 1916 21 May 1 October fixed
-#
-# ## I haven't yet looked for Orders for 1916--22 and I doubt I will find them.
-# # unknown Order or Orders ???
-# 1917 8 apr 17 sep fixed
-# 1918 24 mar 30 sep fixed
-# 1919 30 mar 29 sep fixed
-# # end date extended in 1920 from 27 Sep because of coal strike (from Cm 722)
-# 1920 28 mar 25 oct fixed
-# 1921 3 apr 3 oct fixed
-#
-# # Summer Time Act, 1922
-# # came into force 22 July 1922, too late for 1922, so missing Order ???
-# 1922 26 mar 8 oct fixed
-# 1923-1924 3 April 3 September
-#
-# # Summer Time Act, 1925
-# 1925--1938 3 April 1 October
-#
-# # Defence (Summer Time) Regulations, 1939
-# 1939 3 April 3 November
-# # 1940 amendment (SR&O 1940 Nos. 172 & 1883)
-# 1940 4 feb 0 none
-# # 1941 amendment (SR&O 1941 No. 476)
-# 1941 0 none 0 none fixed,double 4 may 10 aug
-# # 1942 amendment (SR&O 1942 No. 506)
-# 1942 0 none 0 none fixed,double 5 apr 9 aug
-# 1943 0 none 0 none fixed,double 4 apr 15 aug
-# # 1944 amendment (SR&O 1944 No. 932)
-# 1944 0 none 0 none fixed,double 2 apr 17 sep
-# # 1945 dates from Hansard, Oral Answers, 1 March 1945
-# 1945 0 none 7 oct fixed,double 2 apr 15 jul
-#
-# # reversion to Summer Time Act, 1925
-# 1946 3 April 1 October
-#
-# # Summer Time Act, 1947
-# # Fixed dates for 1947 only, gives power to have double summer time
-# 1947 16 mar 2 nov fixed,double 13 apr 10 aug
-# ## I can't find any trace of the Order for 1948.
-# # Unknown Order ???
-# 1948 14 mar 31 oct fixed
-# ## I know the numbers for the 1949--52 ones but the text is missing from the
-# ## annual volumes. I also don't know if the 49 Order was for 49 or 50, etc.
-# # Summer Time Order, 1949 (SI1949/373) ???
-# 1949 3 apr 30 oct fixed
-# # Summer Time Order, 1950 (SI1950/518) ???
-# 1950 16 apr 22 oct fixed
-# # Summer Time Order, 1951 (SI1951/430) ???
-# 1951 15 apr 21 oct fixed
-# # Summer Time Order, 1952 (SI1952/451) ???
-# 1952 20 apr 26 oct fixed
-#
-# # reversion to Summer Time Act, 1925
-# 1953--1960 3 April 1 October
-#
-# ## All Orders from here on specify fixed dates, not day after nth Sunday
-# ## Start pattern looks like Mar lastSun up to 1963, Mar Sun>=19 up to 1967.
-# ## End pattern looks like Oct Sun>=23 up to 1967.
-# # Summer Time Order, 1961 (SI1961/71)
-# 1961 26 March 29 October fixed
-# # Summer Time (1962) Order, 1961 (SI1961/2465)
-# 1962 25 Mar 28 Oct fixed
-# # Summer Time Order, 1963 (SI1963/81)
-# 1963 31 March 27 October fixed
-# # Summer Time (1964) Order, 1963 (SI1963/2101)
-# 1964 22 March 25 October fixed
-# # Summer Time Order, 1964 (SI1964/1201)
-# 1965 21 Mar 24 Oct fixed
-# 1966 20 Mar 23 Oct fixed
-# 1967 19 Mar 29 Oct fixed
-# # Summer Time Order, 1967 (SI1967/1148)
-# # Specifies different start date of 7 April for Isle of Man
-# # Summer Time Order, 1968 (SI1968/117)
-# # Changes Isle of Man start date to 18 Feb to match rest of UK
-# # British Standard Time Act, 1968
-# 1968 18 feb 0 none fixed
-# 1969--1970 0 none 0 none
-# 1971 0 none 31 oct fixed
-#
-# # Summer Time Act, 1972
-# 1972-1980 3 March 4 October
-#
-# # The pattern here looks like Last Sun in Mar, day after 4th Sat in Oct
-# # First EC Directive ???
-# # Summer Time Order, 1980 (SI1980/1089)
-# 1981 29 Mar 25 Oct fixed
-# 1982 28 Mar 24 Oct fixed
-# # Second EC Directive ???
-# # Summer Time Order, 1982 (SI1982/1673)
-# 1983 27 Mar 23 Oct fixed
-# 1984 25 Mar 28 Oct fixed
-# 1985 31 Mar 27 Oct fixed
-# # Third EC Directive ???
-# # Summer Time Order, 1986 (SI1986/223)
-# 1986 30 Mar 26 Oct fixed
-# 1987 29 Mar 25 Oct fixed
-# 1988 27 Mar 23 Oct fixed
-# # Fourth EC Directive ???
-# # Summer Time Order, 1988 (SI1988/931)
-# 1989 26 Mar 29 Oct fixed
-# # Fifth EC Directive ???
-# # Summer Time Order, 1989 (SI1989/985)
-# 1990 25 Mar 28 Oct fixed
-# 1991 31 Mar 27 Oct fixed
-# 1992 29 Mar 25 Oct fixed
-# # Sixth EC Directive
-# # Summer Time Order, 1992 (SI1992/1729)
-# 1993 28 Mar 24 Oct fixed
-# 1994 27 Mar 23 Oct fixed
-
-# From Peter Ilieve <peter@memex.co.uk> (1994-08-18):
-# I now have the text of the 7th EC directive on summer time arrangements
-# (94/21/EC), which was approved on 30 May....
-# The major changes from existing practice are that 1995 will be the last year
-# that the UK and Eire finish on a different date from everyone else,
-# and the common end date from 1996 onwards will be the last Sunday in October.
-# Year Start End End (UK & Eire, 1995 only)
-# (rule) (last Sun) (last Sun) (4th Sun)
-# 1995 26 March 24 September 22 October
-# 1996 31 March 27 October
-# 1997 30 March 26 October
-#
-# From Peter Ilieve <peter@memex.co.uk> (1994-12-01):
-# The final piece of the legislative jigsaw for summer time in the UK for
-# 1995-97 is now in place. The Summer Time Order 1994 (SI 1994/2798)
-# came into force on 16 November. It restates the dates from the EC
-# seventh Summer Time Directive....
-#
-# From Peter Ilieve <peter@aldie.co.uk> (1997-08-06):
-# I now have a copy of the ... Eighth Directive 97/44/EC of the European
-# Parliament and of the Council of 22 July 1997 on summer-time arrangements.
-# It runs for 4 years, 1998--2001, and confirms the current rules of
-# last Sunday in March to last Sunday in October....
-# The directive does not apply in overseas territories of the Member States.
-# It says the Commission should produce a proposal for 2002 and beyond
-# by 1 Jan 2000 and this should be adopted by 1 Jan 2001. I doubt that
-# this will happen though....
-# There is no mention of the French desire to abandon the whole idea.
-# France has had a change of government recently so maybe it will
-# be quietly dropped.
-
-# From Peter Ilieve <peter@memex.co.uk> (1994-03-28):
-# The [GB-Eire] end date of 22 October [1995] conflicts with your current rule
-# of Oct Sun>=23, and the historical UK formula of Sun after 4th Sat.
-# The last time 4th Sun and Sun after 4th Sat differed was in 1989,
-# when 29 October was used. That year was covered by a UK Summer Time Order
-# for only a single year and it looks as though there was a matching 4th EC
-# directive for just this year. I don't have the text of the 5th EC
-# directive (for 1990--92) but my guess would be it said 4th Sun.
-# To maintain strict historical accuracy you could start a new UK ending rule
-# of Oct Sun>=22 in 1990.
+# summer time in 1968.
+#
+# - The Manx Time Act 1968
+#
+# This is an Act of Tynwald (the Isle of Man Parliament) that said that
+# henceforth Manx time would be the same as the time in Great Britain.
+#
+# - The Summer Time Act 1972 (1972 c. 6)
+#
+# This specified a reversion to normal Summer Time behaviour with a start
+# date of the day after the third Saturday in March, unless that is Easter,
+# when it is the day after the second Saturday, and an end date of the day
+# after the fourth Saturday in October. Times are at 02:00 GMT, offset is
+# 1 hour. It gives the power to make Orders to vary these dates and
+# times. This Act is still in force and is the legal authority for
+# implementing the EC Directives in the United Kingdom.
+#
+# - The Interpretation Act 1978 (1978 c. 30)
+#
+# Section 9 of this Act replaces section 1 of the Statutes (Definition of
+# Time) Act, 1880 with very similar wording maintaining GMT as the legal
+# time in Great Britain. This does not apply in Northern Ireland (it
+# has its own Interpretation Act listed above).
+#
+# - Council Directive of 22 July 1980 on summertime arrangements (80/737/EEC)
+#
+# The first of the European Directives on Summer Time. It specified start
+# dates for 1981 and 1982. No agreement had been reached on end dates.
+# Only dates were given, there was no rule like `last Sunday in March'.
+# The main change for the United Kingdom was a move to a 01:00 GMT change
+# time. The dates:
+# 1981: 29 March
+# 1982: 28 March
+#
+# - Summer Time Order, 1980 (S.I. 1980/1089)
+#
+# Specified dates for 1981 and 1982, with the start dates as in the
+# EC Directive and all times 01:00 GMT:
+# 1981: 29 March to 25 October
+# 1982: 28 March to 24 October
+#
+# - Second Council Directive of 10 June 1982 on summertime arrangements
+# (82/399/EEC)
+#
+# The next European Directive. Specified dates for three years, 1983 to 1985.
+# Agreement still hadn't been reached on a common end date, and wouldn't
+# be until 1994 with the appeareance of the seventh Directive with a common
+# date for 1996 and beyond, but this time the Directive gave two sets of
+# end dates. The start date was specified by rule: the last Sunday in March.
+# All times were 01:00 GMT. The end dates were given without rule, as:
+# 1983: 25 September or 23 October
+# 1984: 30 September or 28 october
+# 1985: 29 September or 27 October
+#
+# - Summer Time Order, 1982 (S.I. 1982/1673)
+#
+# Implemented the second EC Directive, using the October end dates.
+# 1983: 27 March to 23 October
+# 1984: 25 March to 28 october
+# 1985: 31 March to 27 October
+#
+# - Third Council Directive of 12 December 1984 on summertime arrangements
+# (84/634/EEC)
+#
+# Specified start dates of the last Sunday in March and two sets of end
+# dates, last Sunday in September and fourth Sunday in October, all at
+# 01:00 GMT. The end dates were also specified as dates:
+# 1986: 28 September or 26 October
+# 1987: 27 September or 25 October
+# 1988: 25 September or 23 October
+#
+# - Summer Time Order, 1986 (S.I. 1986/223)
+#
+# Implemented the third EC Directive, using the October end dates.
+# 1986: 30 March to 26 October
+# 1987: 29 March to 25 October
+# 1988: 27 March to 23 October
+#
+# - Council Directive of 20 December 1985 amending Directive 84/634/EEC
+# on summertime arrangements (85/582/EEC)
+#
+# This was to do with the accession of Spain and Portugal to the EEC.
+# The previous directve had used wording like `Member States belonging
+# to the zero (Greenwich) time zone' when refering to the different
+# sets of end dates. Portugal was in that time zone but was not going
+# to follow the United Kingdom and Ireland dates, so the text was reworded
+# without any change to the dates themselves.
+#
+# - Fourth Council Directive of 22 December 1987 on summertime arrangements
+# (88/14/EEC)
+#
+# This Directive covered only a single year: 1989. My guess is that
+# this was because 1989 was one of the years when the historic United Kingdom
+# end date of the Sunday after the fourth Saturday in October differed from
+# the rule in the previous Directive of the fourth Sunday in October.
+# All times are 01:00 GMT. No rule was specified, specific dates were given:
+# 1989: 26 March to 24 September or 29 October
+#
+# - Summer Time Order, 1988 (S.I. 1988/931)
+#
+# Implemented the dates of 26 March to 29 October for 1989.
+#
+# - Fifth Council Directive of 21 December 1988 on summertime arrangements
+# (89/47/EEC)
+#
+# Covered the three years 1990 to 1992. All times are 01:00 GMT. Gave both
+# rules (last Sunday in March, last Sunday in September or fourth Sunday
+# in October) and specific dates:
+# 1990: 25 March to 30 September or 28 October
+# 1991: 31 March to 29 September or 27 October
+# 1992: 29 March to 27 September or 25 October
+#
+# - Summer Time Order, 1989 (S.I. 1989/985)
+#
+# Implemented the fifth Directive using the October end dates.
+#
+# - Sixth Council Directive 92/20/EEC of 26 March 1992 on summertime
+# arrangements
+#
+# Covered the two years 1993 and 1994. All times are 01:00 GMT. Specified
+# both rules (same as the fifth Directive) and specific dates:
+# 1993: 28 March to 26 September or 24 October
+# 1994: 27 March to 25 September or 23 October
+#
+# - Summer Time Order, 1992 (S.I. 1992/1729)
+#
+# Implemented the sixth Directive using the October end dates.
+#
+# - Seventh Directive 94/21/EC of the European Parliament and of the Council
+# of 30 May 1994 on summer-time arrangements
+#
+# Covered the three years 1995 to 1997. Agreement had finally been reached
+# on a common end date, to start in 1996. Both rules and dates were given.
+# The rules were the same last Sunday in March to last Sunday in September
+# or fourth Sunday in October for 1995, with the end rule changing to the
+# last Sunday in October for 1996 and 1997. The year 1995 was another of
+# the tricky ones where the EC and traditional United Kingdom rules differed
+# but this time the UK changed on the fourth Sunday, 22 October, earlier
+# than usual. All times are 01:00 GMT. Specific dates were also given:
+# 1995: 26 March to 24 September or 22 October
+# 1996: 31 March to 27 October
+# 1997: 30 March to 26 October
+#
+# - Summer Time Order 1994 (S.I. 1994/2798)
+#
+# Implements the seventh Directive using the October end date in 1995.
+# Applies also to the Bailiwick of Guernsey but not to the Bailiwick of
+# Jersey or the Isle of Man, which have their own (unspecified) legislation
+# on the subject.
+#
+# - Eighth Directive 97/44/EC of the European Parliament and of the Council
+# of 22 July 1997 on summer-time arrangements
+#
+# Covers four years: 1998 to 2001. All times are 01:00 GMT. Specifies both
+# rules, last Sunday in March and last Sunday in October, and specific dates:
+# 1998: 29 March to 25 October
+# 1999: 28 March to 31 October
+# 2000: 26 March to 29 October
+# 2001: 25 March to 28 October
+#
+# - Summer Time Order 1997 (S.I. 1997/2982)
+#
+# Implements the eighth Directive. Has the same text about the Isle of Man,
+# Guernsey and Jersey as the 1994 Order.
+
+# From Joseph S. Myers <jsm28@hermes.cam.ac.uk> (1998-01-06):
+#
+# The legal time in the UK outside of summer time is definitely GMT, not UTC;
+# see Lord Tanlaw's speech
+# <a href="http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0">
+# (Lords Hansard 11 June 1997 columns 964 to 976)
+# </a>.
# From Paul Eggert <eggert@twinsun.com> (1996-06-12):
#
-# As Ilieve remarks, the date `20 April 1924' in the table of ``Summer Time: A
+# The date `20 April 1924' in the table of ``Summer Time: A
# Consultation Document'' (Cm 722, 1989) table is a transcription error;
# 20 April was an Easter Sunday. Shanks has 13 April, the correct date.
# Also, the table is not quite right for 1925 through 1938; the correct rules
@@ -695,79 +715,112 @@
# "Irish Summer Time", abbreviated to "IST".
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-# 1916 to 1925--irregular
+# Summer Time Act, 1916
Rule GB-Eire 1916 only - May 21 2:00s 1:00 BST
Rule GB-Eire 1916 only - Oct 1 2:00s 0 GMT
+# S.R.&O. 1917, No. 358
Rule GB-Eire 1917 only - Apr 8 2:00s 1:00 BST
Rule GB-Eire 1917 only - Sep 17 2:00s 0 GMT
+# S.R.&O. 1918, No. 274
Rule GB-Eire 1918 only - Mar 24 2:00s 1:00 BST
Rule GB-Eire 1918 only - Sep 30 2:00s 0 GMT
+# S.R.&O. 1919, No. 297
Rule GB-Eire 1919 only - Mar 30 2:00s 1:00 BST
Rule GB-Eire 1919 only - Sep 29 2:00s 0 GMT
+# S.R.&O. 1920, No. 458
Rule GB-Eire 1920 only - Mar 28 2:00s 1:00 BST
+# S.R.&O. 1920, No. 1844
Rule GB-Eire 1920 only - Oct 25 2:00s 0 GMT
+# S.R.&O. 1921, No. 363
Rule GB-Eire 1921 only - Apr 3 2:00s 1:00 BST
Rule GB-Eire 1921 only - Oct 3 2:00s 0 GMT
+# S.R.&O. 1922, No. 264
Rule GB-Eire 1922 only - Mar 26 2:00s 1:00 BST
+# The Summer Time Act, 1922
Rule GB-Eire 1922 only - Oct 8 2:00s 0 GMT
Rule GB-Eire 1923 only - Apr Sun>=16 2:00s 1:00 BST
Rule GB-Eire 1923 1924 - Sep Sun>=16 2:00s 0 GMT
-Rule GB-Eire 1924 only - Apr 13 2:00s 1:00 BST
-# 1925 to 1939 start--regular, except for avoiding Easter
+Rule GB-Eire 1924 only - Apr Sun>=9 2:00s 1:00 BST
Rule GB-Eire 1925 1926 - Apr Sun>=16 2:00s 1:00 BST
+# The Summer Time Act, 1925
Rule GB-Eire 1925 1938 - Oct Sun>=2 2:00s 0 GMT
-Rule GB-Eire 1927 only - Apr 10 2:00s 1:00 BST
+Rule GB-Eire 1927 only - Apr Sun>=9 2:00s 1:00 BST
Rule GB-Eire 1928 1929 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1930 only - Apr 13 2:00s 1:00 BST
+Rule GB-Eire 1930 only - Apr Sun>=9 2:00s 1:00 BST
Rule GB-Eire 1931 1932 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1933 only - Apr 9 2:00s 1:00 BST
+Rule GB-Eire 1933 only - Apr Sun>=9 2:00s 1:00 BST
Rule GB-Eire 1934 only - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1935 only - Apr 14 2:00s 1:00 BST
+Rule GB-Eire 1935 only - Apr Sun>=9 2:00s 1:00 BST
Rule GB-Eire 1936 1937 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1938 only - Apr 10 2:00s 1:00 BST
+Rule GB-Eire 1938 only - Apr Sun>=9 2:00s 1:00 BST
Rule GB-Eire 1939 only - Apr Sun>=16 2:00s 1:00 BST
-# 1939 end to 1947--irregular, and with double summer time
-Rule GB-Eire 1939 only - Nov 19 2:00s 0 GMT
+# S.R.&O. 1939, No. 1379
+Rule GB-Eire 1939 only - Nov Sun>=16 2:00s 0 GMT
+# S.R.&O. 1940, No. 172 and No. 1883
Rule GB-Eire 1940 only - Feb 25 2:00s 1:00 BST
+# S.R.&O. 1941, No. 476
Rule GB-Eire 1941 only - May Sun>=2 1:00s 2:00 BDST
Rule GB-Eire 1941 1943 - Aug Sun>=9 1:00s 1:00 BST
+# S.R.&O. 1942, No. 506
Rule GB-Eire 1942 1944 - Apr Sun>=2 1:00s 2:00 BDST
+# S.R.&O. 1944, No. 932
Rule GB-Eire 1944 only - Sep Sun>=16 1:00s 1:00 BST
-# Double daylight starts on a Monday in 1945--see above.
+# S.R.&O. 1945, No. 312
Rule GB-Eire 1945 only - Apr 2 1:00s 2:00 BDST
+# S.R.&O. 1945, No. 1208
Rule GB-Eire 1945 only - Jul 15 1:00s 1:00 BST
-Rule GB-Eire 1945 only - Oct 7 2:00s 0 GMT
-Rule GB-Eire 1946 only - Apr 14 2:00s 1:00 BST
-Rule GB-Eire 1946 only - Oct 6 2:00s 0 GMT
+Rule GB-Eire 1945 1946 - Oct Sun>=2 2:00s 0 GMT
+Rule GB-Eire 1946 only - Apr Sun>=9 2:00s 1:00 BST
+# The Summer Time Act, 1947
Rule GB-Eire 1947 only - Mar 16 2:00s 1:00 BST
Rule GB-Eire 1947 only - Apr 13 1:00s 2:00 BDST
Rule GB-Eire 1947 only - Aug 10 1:00s 1:00 BST
Rule GB-Eire 1947 only - Nov 2 2:00s 0 GMT
-# So much for double saving time. 1948 and 1949, irregular.
+# Summer Time Order, 1948 (S.I. 1948/495)
Rule GB-Eire 1948 only - Mar 14 2:00s 1:00 BST
Rule GB-Eire 1948 1949 - Oct lastSun 2:00s 0 GMT
+# Summer Time Order, 1949 (S.I. 1949/373)
Rule GB-Eire 1949 only - Apr 3 2:00s 1:00 BST
-# 1950 through start of 1953, regular.
-Rule GB-Eire 1950 1953 - Apr Sun>=14 2:00s 1:00 BST
+# Summer Time Order, 1950 (S.I. 1950/518)
+# Summer Time Order, 1951 (S.I. 1951/430)
+# Summer Time Order, 1952 (S.I. 1952/451)
+Rule GB-Eire 1950 1952 - Apr Sun>=14 2:00s 1:00 BST
Rule GB-Eire 1950 1952 - Oct Sun>=21 2:00s 0 GMT
-# 1954 to 1980, starting rules
-Rule GB-Eire 1954 only - Apr 11 2:00s 1:00 BST
+# revert to the rules of the Summer Time Act, 1925
+Rule GB-Eire 1953 only - Apr Sun>=16 2:00s 1:00 BST
+Rule GB-Eire 1953 1960 - Oct Sun>=2 2:00s 0 GMT
+Rule GB-Eire 1954 only - Apr Sun>=9 2:00s 1:00 BST
Rule GB-Eire 1955 1956 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1957 only - Apr 14 2:00s 1:00 BST
+Rule GB-Eire 1957 only - Apr Sun>=9 2:00s 1:00 BST
Rule GB-Eire 1958 1959 - Apr Sun>=16 2:00s 1:00 BST
-Rule GB-Eire 1960 only - Apr 10 2:00s 1:00 BST
+Rule GB-Eire 1960 only - Apr Sun>=9 2:00s 1:00 BST
+# Summer Time Order, 1961 (S.I. 1961/71)
+# Summer Time (1962) Order, 1961 (S.I. 1961/2465)
+# Summer Time Order, 1963 (S.I. 1963/81)
Rule GB-Eire 1961 1963 - Mar lastSun 2:00s 1:00 BST
+Rule GB-Eire 1961 1968 - Oct Sun>=23 2:00s 0 GMT
+# Summer Time (1964) Order, 1963 (S.I. 1963/2101)
+# Summer Time Order, 1964 (S.I. 1964/1201)
+# Summer Time Order, 1967 (S.I. 1967/1148)
Rule GB-Eire 1964 1967 - Mar Sun>=19 2:00s 1:00 BST
+# Summer Time Order, 1968 (S.I. 1968/117)
Rule GB-Eire 1968 only - Feb 18 2:00s 1:00 BST
+# The British Standard Time Act, 1968
+# (no summer time)
+# The Summer Time Act, 1972
Rule GB-Eire 1972 1980 - Mar Sun>=16 2:00s 1:00 BST
-# 1953 to 1980, ending rules
-Rule GB-Eire 1953 1960 - Oct Sun>=1 2:00s 0 GMT
-Rule GB-Eire 1961 1968 - Oct Sun>=23 2:00s 0 GMT
Rule GB-Eire 1972 1980 - Oct Sun>=23 2:00s 0 GMT
-# 1981 on
+# Summer Time Order, 1980 (S.I. 1980/1089)
+# Summer Time Order, 1982 (S.I. 1982/1673)
+# Summer Time Order, 1986 (S.I. 1986/223)
+# Summer Time Order, 1988 (S.I. 1988/931)
Rule GB-Eire 1981 1995 - Mar lastSun 1:00u 1:00 BST
Rule GB-Eire 1981 1989 - Oct Sun>=23 1:00u 0 GMT
+# Summer Time Order, 1989 (S.I. 1989/985)
+# Summer Time Order, 1992 (S.I. 1992/1729)
+# Summer Time Order 1994 (S.I. 1994/2798)
Rule GB-Eire 1990 1995 - Oct Sun>=22 1:00u 0 GMT
+# Summer Time Order 1997 (S.I. 1997/2982)
# See EU for rules starting in 1996.
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
@@ -778,14 +831,14 @@ Zone Europe/London -0:01:15 - LMT 1847 Sep 22
0:00 EU GMT/BST
Zone Europe/Belfast -0:23:40 - LMT 1880 Aug 2
-0:25:21 - DMT 1916 May 21 2:00 # Dublin MT
- -0:25:21 1:00 IST 1916 Oct 1 3:00 # Irish Summer Time
+ -0:25:21 1:00 IST 1916 Oct 1 2:00s # Irish Summer Time
0:00 GB-Eire %s 1968 Oct 27
1:00 - BST 1971 Oct 31 2:00u
0:00 GB-Eire %s 1996
0:00 EU GMT/BST
Zone Europe/Dublin -0:25:21 - LMT 1880 Aug 2
-0:25:21 - DMT 1916 May 21 2:00 # Dublin MT
- -0:25:21 1:00 IST 1916 Oct 1 3:00
+ -0:25:21 1:00 IST 1916 Oct 1 2:00s
0:00 GB-Eire %s 1921 Dec 6 # independence
0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
0:00 1:00 IST 1946 Oct 6 2:00
@@ -1040,13 +1093,7 @@ Zone Europe/Brussels 0:17:30 - LMT 1880
1:00 EU CE%sT
# Bosnia and Herzegovina
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Sarajevo 1:13:40 - LMT 1884
- 1:00 - CET 1941 Apr 18 23:00
- 1:00 C-Eur CE%sT 1945 May 8 2:00s
- 1:00 1:00 CEST 1945 Sep 16 2:00s
- 1:00 - CET 1982 Nov 27
- 1:00 EU CE%sT
+# see Yugoslavia
# Bulgaria
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
@@ -1066,13 +1113,7 @@ Zone Europe/Sofia 1:33:16 - LMT 1880
2:00 E-Eur EE%sT
# Croatia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Zagreb 1:03:52 - LMT 1884
- 1:00 - CET 1941 Apr 18 23:00
- 1:00 C-Eur CE%sT 1945 May 8 2:00s
- 1:00 1:00 CEST 1945 Sep 16 2:00s
- 1:00 - CET 1982 Nov 27
- 1:00 EU CE%sT
+# see Yugosloavia
# Czech Republic
# Gregorian calendar adopted 1584-01-17.
@@ -1192,13 +1233,14 @@ Zone Europe/Helsinki 1:39:52 - LMT 1878 May 31
# France
# Gregorian calendar adopted 1582-12-20.
-# French Revolutionary calendar used 1792-09-22 - 1805-12-31.
+# French Revolutionary calendar used 1793-11-24 through 1805-12-31,
+# and (in Paris only) 1871-05-06 through 1871-05-23.
#
# Shanks seems to use `24:00' ambiguously; we resolve it with Whitman.
# From Shanks (1991):
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule France 1916 only - Jun 14 23:00s 1:00 S
-Rule France 1916 1919 - Oct Sun>=1 0:00 0 -
+Rule France 1916 1919 - Oct Sun>=1 23:00s 0 -
Rule France 1917 only - Mar 24 23:00s 1:00 S
Rule France 1918 only - Mar 9 23:00s 1:00 S
Rule France 1919 only - Mar 1 23:00s 1:00 S
@@ -1230,27 +1272,34 @@ Rule France 1940 only - Feb 25 2:00 1:00 S
# The French rules for 1941-1944 were not used in Paris,
# but were used in other places (e.g. Monaco).
Rule France 1941 only - May 5 0:00 2:00 DS
-Rule France 1941 only - Oct 6 1:00 1:00 S
-Rule France 1942 only - Mar 8 0:00 2:00 DS
+# Shanks says this transition occurred at Oct 6 1:00,
+# but go with Denis.Excoffier@ens.fr (1997-12-12),
+# who quotes the Ephemerides Astronomiques for 1998 from Bureau des Longitudes
+# as saying 5/10/41 22hUT.
+Rule France 1941 only - Oct 6 0:00 1:00 S
+Rule France 1942 only - Mar 9 0:00 2:00 DS
Rule France 1942 only - Nov 2 3:00 1:00 S
Rule France 1943 only - Mar 29 2:00 2:00 DS
-Rule France 1943 only - Nov 4 3:00 1:00 S
+Rule France 1943 only - Oct 4 3:00 1:00 S
Rule France 1944 only - Apr 3 2:00 2:00 DS
Rule France 1944 only - Oct 8 1:00 1:00 S
Rule France 1945 only - Apr 2 2:00 2:00 DS
Rule France 1945 only - Sep 16 3:00 0 -
-Rule France 1976 only - Mar 28 2:00s 1:00 S
-Rule France 1976 only - Sep lastSun 2:00s 0 -
+# Shanks gives Mar 28 2:00 and Sep 26 3:00;
+# go with Excoffier's 28/3/76 0hUT and 25/9/76 23hUT.
+Rule France 1976 only - Mar 28 1:00 1:00 S
+Rule France 1976 only - Sep 26 1:00 0 -
# Shanks gives 0:09 for Paris Mean Time, and Whitman gives 0:09:05,
# but Howse quotes the actual French legislation as saying 0:09:21.
# Go with Howse. Howse writes that the time in France was officially based
# on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
+Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
- 0:00 France WE%sT 1940 Jun 14
+# Shanks gives 1940 Jun 14 0:00; go with Excoffier's 14/6/40 22hUT.
+ 0:00 France WE%sT 1940 Jun 14 23:00
1:00 C-Eur CE%sT 1944 Aug 25
- 0:00 France WE%sT 1945 Sep 16 3:00
+ 0:00 France WE%sT 1945 Sep 16 3:00
1:00 France CE%sT 1977
1:00 EU CE%sT
@@ -1414,9 +1463,11 @@ Zone Atlantic/Reykjavik -1:27:24 - LMT 1837
#
# From Paul Eggert (1996-05-06):
# For Italian DST we have three sources: Shanks, Whitman, and F. Pollastri
-# <URL:http://pisolo.cstv.to.cnr.it/toi/uk/ienitlt.html> (1996-03-14) (`FP'
-# below), taken from an Italian National Electrotechnical Institute publication.
-# When the three sources disagree, guess who's right, as follows:
+# <a href="http://pisolo.cstv.to.cnr.it/toi/uk/ienitlt.html">
+# http://pisolo.cstv.to.cnr.it/toi/uk/ienitlt.html (1996-03-14)
+# </a>
+# (`FP' below), taken from an Italian National Electrotechnical Institute
+# publication. When the three sources disagree, guess who's right, as follows:
#
# year FP Shanks (S) Whitman (W) Go with:
# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
@@ -1565,13 +1616,7 @@ Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
1:00 EU CE%sT
# Macedonia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Skopje 1:25:44 - LMT 1884
- 1:00 - CET 1941 Apr 18 23:00
- 1:00 C-Eur CE%sT 1945 May 8 2:00s
- 1:00 1:00 CEST 1945 Sep 16 2:00s
- 1:00 - CET 1982 Nov 27
- 1:00 EU CE%sT
+# see Yugoslavia
# Malta
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
@@ -1709,8 +1754,10 @@ Zone Europe/Warsaw 1:24:00 - LMT 1880
1:00 Poland CE%sT 1977 Apr 3 1:00
1:00 W-Eur CE%sT
# IATA SSIM (1991/1996) gives EU rules, but the _The Warsaw Voice_
-# <URL:http://www.contact.waw.pl/voice/v361/NewsInBrief.shtml>
-# (1995-09-24) says the autumn 1995 switch was at 02:00.
+# <a href="http://www.contact.waw.pl/voice/v361/NewsInBrief.shtml">
+# http://www.contact.waw.pl/voice/v361/NewsInBrief.shtml (1995-09-24)
+# </a>
+# says the autumn 1995 switch was at 02:00.
# Stick with W-Eur for now.
# Portugal
@@ -1961,13 +2008,7 @@ Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
Link Europe/Prague Europe/Bratislava
# Slovenia
-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
-Zone Europe/Ljubljana 0:58:04 - LMT 1884
- 1:00 - CET 1941 Apr 18 23:00
- 1:00 C-Eur CE%sT 1945 May 8 2:00s
- 1:00 1:00 CEST 1945 Sep 16 2:00s
- 1:00 - CET 1982 Nov 27
- 1:00 EU CE%sT
+# see Yugoslavia
# Spain
# Gregorian calendar adopted 1582-10-15.
@@ -2042,7 +2083,10 @@ Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
# Sweden
-# From: msb@sq.com (Mark Brader) <URL:news:1996Jul6.012937.29190@sq.com>:
+# From: msb@sq.com (Mark Brader)
+# <a href=news:1996Jul6.012937.29190@sq.com>
+# news:1996Jul6.012937.29190@sq.com
+# </a>:
#
# In 1700, Denmark made the transition from Julian to Gregorian. Sweden
# decided to *start* a transition in 1700 as well, but rather than have one of
@@ -2072,6 +2116,8 @@ Zone Europe/Stockholm 1:12:12 - LMT 1878 May 31
1:00 EU CE%sT
# Switzerland
+# The Gregorian calendar was introduced gradually in Switzerland,
+# by omitting leap years during 1583-1812.
# From Howse (1988), p 82:
# By the end of the 18th century clocks and watches became commonplace
# and their performance improved enormously. Communities began to keep
@@ -2211,6 +2257,10 @@ Zone Europe/Belgrade 1:22:00 - LMT 1884
# Shanks doesn't give as much detail, so go with Kozelj.
1:00 - CET 1982 Nov 27
1:00 EU CE%sT
+Link Europe/Belgrade Europe/Ljubljana # Slovenia
+Link Europe/Belgrade Europe/Sarajevo # Bosnia and Herzegovina
+Link Europe/Belgrade Europe/Skopje # Macedonia
+Link Europe/Belgrade Europe/Zagreb # Croatia
###############################################################################
@@ -2287,21 +2337,3 @@ Zone Europe/Belgrade 1:22:00 - LMT 1884
# ...
# Monaco: has same DST as France.
# ...
-
-# ...
-# Date: Fri, 3 Sep 93 13:43:41 BST
-# From: Peter Ilieve <peter@memex.co.uk>
-# ...
-# Turning to Europe, I now have a copy of the `Sixth Council Directive 92/20/EEC
-# of 26 March 1992 on summertime arrangements'. This only covers 1993 and
-# 1994, a seventh one is in the works but I doubt that the algorithm will
-# change. This says summertime starts at 01:00 GMT on the last Sunday in March
-# and ends at 01:00 GMT on the last Sunday in September, except for the UK
-# and Eire where it ends at 01:00 GMT on the fourth Sunday in October.
-# It says the arrangements for 1995 onwards will be decided by 1 January 1994,
-# but as the sixth directive was supposed to appear by 1 Jan 92 and didn't
-# arrive til March I wouldn't hold your breath.
-#
-# The first summertime directive was adopted in 1980, although the UK didn't
-# seem to use it until 1981. I suspect it would be safe to move your start
-# dates for the -Eur rules back to 1981.
diff --git a/time/leapseconds b/time/leapseconds
index 6ff99ada37..903da5aaae 100644
--- a/time/leapseconds
+++ b/time/leapseconds
@@ -1,4 +1,4 @@
-# @(#)leapseconds 7.9
+# @(#)leapseconds 7.10
# Allowance for leapseconds added to each timezone file.
@@ -17,7 +17,7 @@
# Leap YEAR MON DAY 23:59:59 - R/S
# If the leapsecond is Rolling (R) the given time is local time
-# If the leapsecond is Stationary (S) the given time is GMT
+# If the leapsecond is Stationary (S) the given time is UTC
# Leap YEAR MONTH DAY HH:MM:SS CORR R/S
Leap 1972 Jun 30 23:59:60 + S
diff --git a/time/northamerica b/time/northamerica
index a978333503..baaf84095a 100644
--- a/time/northamerica
+++ b/time/northamerica
@@ -1,4 +1,4 @@
-# @(#)northamerica 7.35
+# @(#)northamerica 7.39
# also includes Central America and the Caribbean
# This data is by no means authoritative; if you think you know better,
@@ -651,6 +651,20 @@ Zone America/Glace_Bay -3:59:48 - LMT 1902 Jun 15
# Nipigon (EST) and Rainy River (CST) are the largest that we know of.
# Far west Ontario is like Winnipeg; far east Quebec is like Halifax.
+# From Paul Eggert (1997-10-17):
+# msb@sq.com writes that an article in the 1997-10-14 Toronto Star
+# says that Atikokan, Ontario currently does not observe DST,
+# but will vote on 11-10 whether to use EST/EDT.
+# He also writes that the
+# <a href="http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html">
+# Ontario Time Act (1990, Chapter T.9)
+# </a>
+# says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
+# Officially Atikokan is therefore on CST/CDT, and most likely this report
+# concerns a non-official time observed as a matter of local practice.
+# For what it's worth, Shanks (1995) says that Atikokan has agreed with
+# Rainy River ever since standard time was introduced.
+
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Mont 1917 only - Mar 25 2:00 1:00 D
Rule Mont 1917 only - Apr 24 0:00 0 S
@@ -893,7 +907,7 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
# From Guy Harris:
# Rules are from the Official Airline Guide, Worldwide Edition, for 1987.
-# Rules prior to 1987 are unknown.
+# Rules [before] 1987 are unknown.
# The comments in the OAG say "Only Ensenada, Mexicale, San Felipe and Tijuana
# observe DST." This is presumably Baja California Norte, above 28th parallel,
# as listed there; [there is also] "Baja California Sur and N. Pacific
@@ -971,9 +985,10 @@ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
#
# -------------- End Forwarded Message --------------
# From Paul Eggert (1996-06-12):
-# For an English translation of the decree,
-# see ``Diario Oficial: Time Zone Changeover'',
-# <URL:http://mexico-travel.com/extra/timezone_eng.html> (1996-01-04).
+# For an English translation of the decree, see
+# <a href="http://mexico-travel.com/extra/timezone_eng.html">
+# ``Diario Oficial: Time Zone Changeover'' (1996-01-04).
+# </a>
# From Shanks (1991):
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
diff --git a/time/southamerica b/time/southamerica
index 4f8cb906d9..f53355c4c0 100644
--- a/time/southamerica
+++ b/time/southamerica
@@ -1,4 +1,4 @@
-# @(#)southamerica 7.21
+# @(#)southamerica 7.22
# This data is by no means authoritative; if you think you know better,
# go ahead and edit the file (and please send any changes to
@@ -189,7 +189,7 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# ending dates, giving them as "estimated date(s) based on previous year". We
# infer a rule here from one example, always a dangerous practice.... Yes,
# they really do switch on Saturday, according to the OAG.
-# "[America/Porto_Acre]" is for the Territory of Acre;
+# "[America/Porto_Acre]" is for the [State] of Acre;
# "[America/Noronha]" is for Fernando De Noronha.
# From Paul Eggert <eggert@twinsun.com> (1993-11-18):
@@ -242,6 +242,11 @@ Zone America/La_Paz -4:32:36 - LMT 1890
# Sao Paulo (UTC-3) and Cuiaba (UTC-4) always observed DST.
# Porto Acre (UTC-5) stopped observing DST in mid-1988.
+# From Rodrigo Feher <feher@pobox.com> (1998-01-17):
+# Reading "southamerica" file in timezone 7.55 I've found an
+# error. Line 193 say "Territory of Acre". It is not a territory anymore
+# but a state.
+
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Brazil 1931 only - Oct 3 11:00 1:00 D
Rule Brazil 1932 1933 - Apr 1 0:00 0 S
diff --git a/time/tzfile.h b/time/tzfile.h
index 90441cbbc3..0921c3c339 100644
--- a/time/tzfile.h
+++ b/time/tzfile.h
@@ -21,7 +21,7 @@
#ifndef lint
#ifndef NOID
-static char tzfilehid[] = "@(#)tzfile.h 7.13";
+static char tzfilehid[] = "@(#)tzfile.h 7.14";
#endif /* !defined NOID */
#endif /* !defined lint */
@@ -64,7 +64,7 @@ struct tzhead {
** tzh_timecnt (char [4])s coded transition times a la time(2)
** tzh_timecnt (unsigned char)s types of local time starting at above
** tzh_typecnt repetitions of
-** one (char [4]) coded GMT offset in seconds
+** one (char [4]) coded UTC offset in seconds
** one (unsigned char) used to set tm_isdst
** one (unsigned char) that's an abbreviation list index
** tzh_charcnt (char)s '\0'-terminated zone abbreviations
@@ -77,7 +77,7 @@ struct tzhead {
** if absent, transition times are
** assumed to be wall clock time
** tzh_ttisgmtcnt (char)s indexed by type; if TRUE, transition
-** time is GMT, if FALSE,
+** time is UTC, if FALSE,
** transition time is local time
** if absent, transition times are
** assumed to be local time
diff --git a/time/zdump.c b/time/zdump.c
index 01c79ca7fb..f6480bb308 100644
--- a/time/zdump.c
+++ b/time/zdump.c
@@ -1,6 +1,6 @@
#ifndef lint
#ifndef NOID
-static char elsieid[] = "@(#)zdump.c 7.26";
+static char elsieid[] = "@(#)zdump.c 7.27";
#endif /* !defined NOID */
#endif /* !defined lint */
@@ -344,7 +344,7 @@ int v;
(void) printf("%-*s ", (int) longest, zone);
if (v)
- (void) printf("%.24s GMT = ", asctime(gmtime(&t)));
+ (void) printf("%.24s UTC = ", asctime(gmtime(&t)));
tmp = localtime(&t);
(void) printf("%.24s", asctime(tmp));
if (*abbr(tmp) != '\0')
diff --git a/time/zic.c b/time/zic.c
index 2780e4c996..adec622672 100644
--- a/time/zic.c
+++ b/time/zic.c
@@ -1,6 +1,6 @@
#ifndef lint
#ifndef NOID
-static char elsieid[] = "@(#)zic.c 7.91";
+static char elsieid[] = "@(#)zic.c 7.93";
#endif /* !defined NOID */
#endif /* !defined lint */
@@ -601,10 +601,23 @@ const char * const tofile;
if (!itsdir(toname))
(void) remove(toname);
if (link(fromname, toname) != 0) {
- if (mkdirs(toname) != 0)
- (void) exit(EXIT_FAILURE);
- if (link(fromname, toname) != 0) {
- const char *e = strerror(errno);
+ int failure = errno;
+ if (failure == ENOENT)
+ if (mkdirs(toname) != 0)
+ failure = errno;
+ else if (link(fromname, toname) == 0)
+ failure = 0;
+ else
+ failure = errno;
+#ifndef MISSING_SYMLINK
+ if (failure == EXDEV)
+ if (symlink(fromname, toname) != 0)
+ failure = errno;
+ else
+ failure = 0;
+#endif
+ if (failure) {
+ const char *e = strerror(failure);
(void) fprintf(stderr,
_("%s: Can't link from %s to %s: %s\n"),
@@ -1020,7 +1033,7 @@ const int iscont;
}
z.z_filename = filename;
z.z_linenum = linenum;
- z.z_gmtoff = gethms(fields[i_gmtoff], _("invalid GMT offset"), TRUE);
+ z.z_gmtoff = gethms(fields[i_gmtoff], _("invalid UTC offset"), TRUE);
if ((cp = strchr(fields[i_format], '%')) != 0) {
if (*++cp != 's' || strchr(cp, '%') != 0) {
error(_("invalid abbreviation format"));
@@ -1254,11 +1267,12 @@ const char * const timep;
} else if (sscanf(cp, scheck(cp, "%d"), &rp->r_loyear) != 1) {
error(_("invalid starting year"));
return;
- } else if (noise)
+ } else if (noise) {
if (rp->r_loyear < min_year_representable)
warning(_("starting year too low to be represented"));
else if (rp->r_loyear > max_year_representable)
warning(_("starting year too high to be represented"));
+ }
cp = hiyearp;
if ((lp = byword(cp, end_years)) != NULL) switch ((int) lp->l_value) {
case YR_MINIMUM:
@@ -1278,11 +1292,12 @@ const char * const timep;
} else if (sscanf(cp, scheck(cp, "%d"), &rp->r_hiyear) != 1) {
error(_("invalid ending year"));
return;
- } else if (noise)
+ } else if (noise) {
if (rp->r_loyear < min_year_representable)
warning(_("starting year too low to be represented"));
else if (rp->r_loyear > max_year_representable)
warning(_("starting year too high to be represented"));
+ }
if (rp->r_loyear > rp->r_hiyear) {
error(_("starting year greater than ending year"));
return;
@@ -1630,7 +1645,7 @@ const int zonecount;
INITIALIZE(ktime);
if (useuntil) {
/*
- ** Turn untiltime into GMT
+ ** Turn untiltime into UTC
** assuming the current gmtoff and
** stdoff values.
*/
@@ -1946,10 +1961,11 @@ register const struct lookup * const table;
*/
foundlp = NULL;
for (lp = table; lp->l_word != NULL; ++lp)
- if (itsabbr(word, lp->l_word))
+ if (itsabbr(word, lp->l_word)) {
if (foundlp == NULL)
foundlp = lp;
else return NULL; /* multiple inexact matches */
+ }
return foundlp;
}