summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog20
-rw-r--r--sysdeps/ieee754/ldbl-opt/Makefile2
-rw-r--r--sysdeps/powerpc/powerpc64/Makefile14
-rw-r--r--sysdeps/powerpc/powerpc64/elf/Makefile14
-rw-r--r--timezone/asia14
-rw-r--r--timezone/northamerica222
-rw-r--r--timezone/private.h2
-rw-r--r--timezone/scheck.c11
-rw-r--r--timezone/zone.tab17
9 files changed, 226 insertions, 90 deletions
diff --git a/ChangeLog b/ChangeLog
index 34eaad0426..ec8e939f49 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,23 @@
+2006-02-02 Roland McGrath <roland@redhat.com>
+
+ * timezone/private.h: Update from tzcode2006a.
+ * timezone/scheck.c: Likewise.
+ * timezone/asia: Update from tzdata2006a.
+ * timezone/northamerica: Likewise.
+ * timezone/zone.tab: Likewise.
+
+ * sysdeps/powerpc/powerpc64/Makefile (no-special-regs): New variable.
+ (CFLAGS-mcount.c): Use it instead of -msoft-float.
+ * sysdeps/powerpc/powerpc64/elf/Makefile
+ (CFLAGS-dl-runtime.os, CFLAGS-dl-lookup.os, CFLAGS-dl-misc.os,
+ CFLAGS-rtld-mempcpy.os, CFLAGS-rtld-memmove.os, CFLAGS-rtld-memchr.os,
+ CFLAGS-rtld-strnlen.os): LIkewise
+
+2006-02-01 Roland McGrath <roland@redhat.com>
+
+ * sysdeps/ieee754/ldbl-opt/Makefile (sysdep-CFLAGS): Avoid adding
+ -mlong-double-128 when it's already there.
+
2006-02-01 Roland McGrath <roland@frob.com>
* mach/Machrules ($(objpfx)%.uh, $(objpfx)%.__h): Use static pattern
diff --git a/sysdeps/ieee754/ldbl-opt/Makefile b/sysdeps/ieee754/ldbl-opt/Makefile
index bcafb3c84a..7f7bc3ce33 100644
--- a/sysdeps/ieee754/ldbl-opt/Makefile
+++ b/sysdeps/ieee754/ldbl-opt/Makefile
@@ -2,7 +2,9 @@
# -mlong-double-128 option is used (or when it becomes a default
# when -mlong-double-64 is not used).
long-double-fcts = yes
+ifeq (,$(filter -mlong-double-128,$(sysdep-CFLAGS)))
sysdep-CFLAGS += -mlong-double-128
+endif
ifeq ($(subdir),math)
libm-routines += s_nexttowardfd
diff --git a/sysdeps/powerpc/powerpc64/Makefile b/sysdeps/powerpc/powerpc64/Makefile
index cf7c4337e0..78d4f07e57 100644
--- a/sysdeps/powerpc/powerpc64/Makefile
+++ b/sysdeps/powerpc/powerpc64/Makefile
@@ -10,6 +10,18 @@ ifeq (yes,$(build-shared))
pic-ccflag = -fpic
endif
+# These flags prevent FPU or Altivec registers from being used,
+# for code called in contexts that is not allowed to touch those registers.
+# Stupid GCC requires us to pass all these ridiculous switches.
+no-special-regs := $(sort $(foreach n,40 41 50 51 60 61 62 63 \
+ $(foreach m,2 3 4 5 6 7 8 9, \
+ 3$m 4$m 5$m),\
+ -ffixed-$n)) \
+ $(sort $(foreach n,$(foreach m,0 1 2 3 4 5 6 7 8 9,\
+ $m 1$m 2$m) 30 31,\
+ -ffixed-v$n)) \
+ -ffixed-vrsave -ffixed-vscr
+
ifeq ($(subdir),csu)
sysdep_routines += hp-timing
elide-routines.os += hp-timing
@@ -29,5 +41,5 @@ ifeq ($(subdir),gmon)
# The assembly functions assume that fp arg regs are not trashed.
# Compiling with -msoft-float ensures that fp regs are not used
# for moving memory around.
-CFLAGS-mcount.c += -msoft-float
+CFLAGS-mcount.c += $(no-special-regs)
endif
diff --git a/sysdeps/powerpc/powerpc64/elf/Makefile b/sysdeps/powerpc/powerpc64/elf/Makefile
index bd0580ebc9..6a77e116bd 100644
--- a/sysdeps/powerpc/powerpc64/elf/Makefile
+++ b/sysdeps/powerpc/powerpc64/elf/Makefile
@@ -2,10 +2,10 @@
# Need to prevent gcc from using fprs in code used during dynamic linking.
-CFLAGS-dl-runtime.os := -msoft-float
-CFLAGS-dl-lookup.os := -msoft-float
-CFLAGS-dl-misc.os := -msoft-float
-CFLAGS-rtld-mempcpy.os := -msoft-float
-CFLAGS-rtld-memmove.os := -msoft-float
-CFLAGS-rtld-memchr.os := -msoft-float
-CFLAGS-rtld-strnlen.os := -msoft-float
+CFLAGS-dl-runtime.os = $(no-special-regs)
+CFLAGS-dl-lookup.os = $(no-special-regs)
+CFLAGS-dl-misc.os = $(no-special-regs)
+CFLAGS-rtld-mempcpy.os = $(no-special-regs)
+CFLAGS-rtld-memmove.os = $(no-special-regs)
+CFLAGS-rtld-memchr.os = $(no-special-regs)
+CFLAGS-rtld-strnlen.os = $(no-special-regs)
diff --git a/timezone/asia b/timezone/asia
index 59e62dde4f..059ad7f245 100644
--- a/timezone/asia
+++ b/timezone/asia
@@ -1,4 +1,4 @@
-# @(#)asia 7.90
+# @(#)asia 7.91
# <pre>
# This data is by no means authoritative; if you think you know better,
@@ -934,6 +934,10 @@ Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u
# From Paul Eggert (2005-11-22):
# Starting 2003 transitions are from Steffen Thorsen's web site timeanddate.com.
#
+# From Steffen Thorsen (2005-11-23):
+# For Jordan I have received multiple independent user reports every year
+# about DST end dates, as the end-rule is different every year.
+#
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule Jordan 1973 only - Jun 6 0:00 1:00 S
Rule Jordan 1973 1975 - Oct 1 0:00 0 -
@@ -1433,6 +1437,12 @@ Zone Asia/Karachi 4:28:12 - LMT 1907
# From Paul Eggert (2005-11-22):
# Starting 2004 transitions are from Steffen Thorsen's web site timeanddate.com.
+# From Steffen Thorsen (2005-11-23):
+# A user from Gaza reported that Gaza made the change early because of
+# the Ramadan. Next year Ramadan will be even earlier, so I think
+# there is a good chance next year's end date will be around two weeks
+# earlier--the same goes for Jordan.
+
# The rules for Egypt are stolen from the `africa' file.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
Rule EgyptAsia 1957 only - May 10 0:00 1:00 S
@@ -1445,7 +1455,7 @@ Rule EgyptAsia 1966 only - Oct 1 3:00 0 -
Rule Palestine 1999 max - Apr Fri>=15 0:00 1:00 S
Rule Palestine 1999 2003 - Oct Fri>=15 0:00 0 -
Rule Palestine 2004 only - Oct 1 1:00 0 -
-Rule Palestine 2005 max - Oct 4 1:00 0 -
+Rule Palestine 2005 max - Oct 4 2:00 0 -
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
diff --git a/timezone/northamerica b/timezone/northamerica
index 9f9b98b09c..087fa544e6 100644
--- a/timezone/northamerica
+++ b/timezone/northamerica
@@ -1,4 +1,4 @@
-# @(#)northamerica 7.87
+# @(#)northamerica 7.88
# <pre>
# also includes Central America and the Caribbean
@@ -321,6 +321,14 @@ Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
Zone America/North_Dakota/Center -6:45:12 - LMT 1883 Nov 18 12:14:48
-7:00 US M%sT 1992 Oct 25 02:00
-6:00 US C%sT
+# From Paul Eggert (2006-01-20):
+# The following is not implemented yet.
+# What is the most populous city in that area?
+# From http://www.statoids.com/tus.html (2006-01-20):
+# 2003-10-26 02:00: All of Morton County, ND, and the part of Sioux
+# County, ND east of ND route 31 moved from MT to CT. (The area
+# around Fort Yates in Sioux County and the area around Mandan in
+# Morton County were already in CT.)
# US mountain time, represented by Denver
#
@@ -519,9 +527,9 @@ Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
# For a map of Indiana's time zone regions, see:
# <a href="http://www.mccsc.edu/time.html">
# What time is it in Indiana?
-# </a> (2005-05-03)
+# </a> (2005-10-30)
#
-# From Paul Eggert (2005-08-22):
+# From Paul Eggert (2006-01-20):
# Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
# with the following exceptions:
#
@@ -533,11 +541,14 @@ Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
# - Clark, Floyd, and Harrison counties have been like
# America/Kentucky/Louisville.
#
-# - Crawford, Starke, and Switzerland counties have their own time zone
+# - Daviess, Dubois, Knox, Martin, Perry, and Pulaski counties
+# have been like America/Indiana/Vincennes.
+#
+# - Crawford, Pike, Starke, and Switzerland counties have their own time zone
# histories as noted below.
#
-# Shanks partitions Indiana into 345 regions, each with its own time history,
-# and writes ``Even newspaper reports present contradictory information.''
+# Shanks partitioned Indiana into 345 regions, each with its own time history,
+# and wrote ``Even newspaper reports present contradictory information.''
# Fortunately, most of the complexity occurred before our cutoff date of 1970.
#
# Other than Indianapolis, the Indiana place names are so nondescript
@@ -545,11 +556,19 @@ Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
# So we reluctantly put them all in a subdirectory `America/Indiana'.
# From Paul Eggert (2005-08-16):
-# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006,
-# and that many counties may switch either to Central or to Eastern time.
-# The county-by-county decisions have not been made yet, so for now assume
-# that no counties will switch: this assumption is most likely wrong,
-# but it's the best we can do for now.
+# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
+
+# From Deborah Goldsmith (2006-01-18):
+# http://dmses.dot.gov/docimages/pdf95/382329_web.pdf
+# From Paul Eggert (2006-01-20):
+# It says "DOT is relocating the time zone boundary in Indiana to move Starke,
+# Pulaski, Knox, Daviess, Martin, Pike, Dubois, and Perry Counties from the
+# Eastern Time Zone to the Central Time Zone.... The effective date of
+# this rule is 2:OO a.m. EST Sunday, April 2, 2006, which is the
+# changeover date from standard time to Daylight Saving Time."
+# Strictly speaking, this means the affected counties will change their
+# clocks twice that night, but this obviously is in error. The intent
+# is that 01:59:59 EST be followed by 02:00:00 CDT.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
Rule Indianapolis 1941 only - Jun 22 2:00 1:00 D
@@ -568,8 +587,8 @@ Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
-5:00 - EST 2006
-5:00 US E%sT
#
-# Part of Crawford County, Indiana, last observed DST in 1975,
-# and left its clocks alone in 1974.
+# Eastern Crawford County, Indiana, left its clocks alone in 1974,
+# as well as from 1976 through 2005.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
Rule Marengo 1951 only - Apr lastSun 2:00 1:00 D
Rule Marengo 1951 only - Sep lastSun 2:00 0 S
@@ -586,7 +605,45 @@ Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37
-5:00 - EST 2006
-5:00 US E%sT
#
-# Starke County, Indiana
+# Daviess, Dubois, Knox, Martin, Perry, and Pulaski Counties, Indiana,
+# switched from eastern to central time in April 2006.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Vincennes 1946 only - Apr lastSun 2:00 1:00 D
+Rule Vincennes 1946 only - Sep lastSun 2:00 0 S
+Rule Vincennes 1953 1954 - Apr lastSun 2:00 1:00 D
+Rule Vincennes 1953 1959 - Sep lastSun 2:00 0 S
+Rule Vincennes 1955 only - May 1 0:00 1:00 D
+Rule Vincennes 1956 1963 - Apr lastSun 2:00 1:00 D
+Rule Vincennes 1960 only - Oct lastSun 2:00 0 S
+Rule Vincennes 1961 only - Sep lastSun 2:00 0 S
+Rule Vincennes 1962 1963 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53
+ -6:00 US C%sT 1946
+ -6:00 Vincennes C%sT 1964 Apr 26 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
+#
+# Pike County, Indiana moved from central to eastern time in 1977,
+# then switched back in 2006.
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+Rule Pike 1955 only - May 1 0:00 1:00 D
+Rule Pike 1955 1960 - Sep lastSun 2:00 0 S
+Rule Pike 1956 1964 - Apr lastSun 2:00 1:00 D
+Rule Pike 1961 1964 - Oct lastSun 2:00 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53
+ -6:00 US C%sT 1955
+ -6:00 Pike C%sT 1965 Apr 25 2:00
+ -5:00 - EST 1966 Oct 30 2:00
+ -6:00 US C%sT 1977 Oct 30 2:00
+ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
+#
+# Starke County, Indiana moved from central to eastern time in 1991,
+# then switched back in 2006.
# From Arthur David Olson (1991-10-28):
# An article on page A3 of the Sunday, 1991-10-27 Washington Post
# notes that Starke County switched from Central time to Eastern time as of
@@ -603,10 +660,10 @@ Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30
-6:00 Starke C%sT 1962 Apr 29 2:00
-5:00 - EST 1963 Oct 27 2:00
-6:00 US C%sT 1991 Oct 27 2:00
- -5:00 - EST 2006
- -5:00 US E%sT
+ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
#
-# Switzerland County, Indiana, last observed DST in 1972.
+# Switzerland County, Indiana, did not observe DST from 1973 through 2005.
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44
-6:00 US C%sT 1954 Apr 25 2:00
@@ -636,7 +693,7 @@ Zone America/Kentucky/Louisville -5:43:02 - LMT 1883 Nov 18 12:16:58
-6:00 1:00 CDT 1974 Oct 27 2:00
-5:00 US E%sT
#
-# Wayne, Clinton, and Russell Counties, Kentucky
+# Wayne County, Kentucky
#
# From
# <a href="http://www.lake-cumberland.com/life/archive/news990129time.shtml">
@@ -733,7 +790,8 @@ Zone America/Detroit -5:32:11 - LMT 1905
-5:00 - EST 1975 Apr 27 2:00
-5:00 US E%sT
#
-# The Michigan border with Wisconsin switched from EST to CST/CDT in 1973.
+# Dickinson, Gogebic, Iron, and Menominee Counties, Michigan,
+# switched from EST to CST/CDT in 1973.
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
Rule Menominee 1946 only - Apr lastSun 2:00 1:00 D
Rule Menominee 1946 only - Sep lastSun 2:00 0 S
@@ -929,7 +987,7 @@ Zone America/Goose_Bay -4:01:40 - LMT 1884 # Happy Valley-Goose Bay
-4:00 StJohns A%sT
-# west Labrador, New Brunswick, Nova Scotia, Prince Edward I
+# west Labrador, Nova Scotia, Prince Edward I
# From Paul Eggert (1996-06-12):
# Shanks writes that since 1970 most of this region has been like Halifax.
@@ -938,53 +996,48 @@ Zone America/Goose_Bay -4:01:40 - LMT 1884 # Happy Valley-Goose Bay
# Shanks also writes that Liverpool, NS was the only town in Canada to observe
# DST in 1971 but not 1970; for now we'll assume this is a typo.
-# From Paul Eggert (2000-10-02):
-# INMS (2000-09-12) says that, since 1988 at least, New Brunswick switches
-# at 00:01 local time. FIXME: verify and create a new Zone for this.
-
-
# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
-Rule Halifax 1916 only - Apr 1 0:00 1:00 D
-Rule Halifax 1916 only - Oct 1 0:00 0 S
-Rule Halifax 1920 only - May 9 0:00 1:00 D
-Rule Halifax 1920 only - Aug 29 0:00 0 S
-Rule Halifax 1921 only - May 6 0:00 1:00 D
-Rule Halifax 1921 1922 - Sep 5 0:00 0 S
-Rule Halifax 1922 only - Apr 30 0:00 1:00 D
-Rule Halifax 1923 1925 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1923 only - Sep 4 0:00 0 S
-Rule Halifax 1924 only - Sep 15 0:00 0 S
-Rule Halifax 1925 only - Sep 28 0:00 0 S
-Rule Halifax 1926 only - May 16 0:00 1:00 D
-Rule Halifax 1926 only - Sep 13 0:00 0 S
-Rule Halifax 1927 only - May 1 0:00 1:00 D
-Rule Halifax 1927 only - Sep 26 0:00 0 S
-Rule Halifax 1928 1931 - May Sun>=8 0:00 1:00 D
-Rule Halifax 1928 only - Sep 9 0:00 0 S
-Rule Halifax 1929 only - Sep 3 0:00 0 S
-Rule Halifax 1930 only - Sep 15 0:00 0 S
-Rule Halifax 1931 1932 - Sep Mon>=24 0:00 0 S
-Rule Halifax 1932 only - May 1 0:00 1:00 D
-Rule Halifax 1933 only - Apr 30 0:00 1:00 D
-Rule Halifax 1933 only - Oct 2 0:00 0 S
-Rule Halifax 1934 only - May 20 0:00 1:00 D
-Rule Halifax 1934 only - Sep 16 0:00 0 S
-Rule Halifax 1935 only - Jun 2 0:00 1:00 D
-Rule Halifax 1935 only - Sep 30 0:00 0 S
-Rule Halifax 1936 only - Jun 1 0:00 1:00 D
-Rule Halifax 1936 only - Sep 14 0:00 0 S
-Rule Halifax 1937 1938 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1937 1941 - Sep Mon>=24 0:00 0 S
-Rule Halifax 1939 only - May 28 0:00 1:00 D
-Rule Halifax 1940 1941 - May Sun>=1 0:00 1:00 D
-Rule Halifax 1946 1949 - Sep lastSun 2:00 0 S
-Rule Halifax 1946 1949 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1951 1954 - Sep lastSun 2:00 0 S
-Rule Halifax 1951 1954 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1956 1959 - Sep lastSun 2:00 0 S
-Rule Halifax 1956 1959 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1962 1973 - Apr lastSun 2:00 1:00 D
-Rule Halifax 1962 1973 - Oct lastSun 2:00 0 S
+Rule Halifax 1916 only - Apr 1 0:00 1:00 D
+Rule Halifax 1916 only - Oct 1 0:00 0 S
+Rule Halifax 1920 only - May 9 0:00 1:00 D
+Rule Halifax 1920 only - Aug 29 0:00 0 S
+Rule Halifax 1921 only - May 6 0:00 1:00 D
+Rule Halifax 1921 1922 - Sep 5 0:00 0 S
+Rule Halifax 1922 only - Apr 30 0:00 1:00 D
+Rule Halifax 1923 1925 - May Sun>=1 0:00 1:00 D
+Rule Halifax 1923 only - Sep 4 0:00 0 S
+Rule Halifax 1924 only - Sep 15 0:00 0 S
+Rule Halifax 1925 only - Sep 28 0:00 0 S
+Rule Halifax 1926 only - May 16 0:00 1:00 D
+Rule Halifax 1926 only - Sep 13 0:00 0 S
+Rule Halifax 1927 only - May 1 0:00 1:00 D
+Rule Halifax 1927 only - Sep 26 0:00 0 S
+Rule Halifax 1928 1931 - May Sun>=8 0:00 1:00 D
+Rule Halifax 1928 only - Sep 9 0:00 0 S
+Rule Halifax 1929 only - Sep 3 0:00 0 S
+Rule Halifax 1930 only - Sep 15 0:00 0 S
+Rule Halifax 1931 1932 - Sep Mon>=24 0:00 0 S
+Rule Halifax 1932 only - May 1 0:00 1:00 D
+Rule Halifax 1933 only - Apr 30 0:00 1:00 D
+Rule Halifax 1933 only - Oct 2 0:00 0 S
+Rule Halifax 1934 only - May 20 0:00 1:00 D
+Rule Halifax 1934 only - Sep 16 0:00 0 S
+Rule Halifax 1935 only - Jun 2 0:00 1:00 D
+Rule Halifax 1935 only - Sep 30 0:00 0 S
+Rule Halifax 1936 only - Jun 1 0:00 1:00 D
+Rule Halifax 1936 only - Sep 14 0:00 0 S
+Rule Halifax 1937 1938 - May Sun>=1 0:00 1:00 D
+Rule Halifax 1937 1941 - Sep Mon>=24 0:00 0 S
+Rule Halifax 1939 only - May 28 0:00 1:00 D
+Rule Halifax 1940 1941 - May Sun>=1 0:00 1:00 D
+Rule Halifax 1946 1949 - Apr lastSun 2:00 1:00 D
+Rule Halifax 1946 1949 - Sep lastSun 2:00 0 S
+Rule Halifax 1951 1954 - Apr lastSun 2:00 1:00 D
+Rule Halifax 1951 1954 - Sep lastSun 2:00 0 S
+Rule Halifax 1956 1959 - Apr lastSun 2:00 1:00 D
+Rule Halifax 1956 1959 - Sep lastSun 2:00 0 S
+Rule Halifax 1962 1973 - Apr lastSun 2:00 1:00 D
+Rule Halifax 1962 1973 - Oct lastSun 2:00 0 S
# Zone NAME GMTOFF RULES FORMAT [UNTIL]
Zone America/Halifax -4:14:24 - LMT 1902 Jun 15
-4:00 Halifax A%sT 1918
@@ -1000,6 +1053,43 @@ Zone America/Glace_Bay -3:59:48 - LMT 1902 Jun 15
-4:00 Halifax A%sT 1974
-4:00 Canada A%sT
+# New Brunswick
+
+# From Paul Eggert (2006-01-20):
+# New Brunswick's Time Definition Act
+# <http://www.gnb.ca/0062/PDF-acts/t-06.pdf> says they change at 00:01, and
+# <http://www.canlii.org/nb/laws/sta/t-6/20030127/whole.html> makes it
+# clear that this has been the case since at least 1993.
+# For now, assume it started in 1993. The Office of the Premier announced
+# <http://www.gnb.ca/cnb/news/pre/2005e1737pr.htm> (2005-12-23)
+# that they will bring forward proposed amendments to harmonize with the US;
+# for now assume that this will happen, but they'll still switch at 00:01.
+
+# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+Rule Moncton 1933 1935 - Jun Sun>=8 1:00 1:00 D
+Rule Moncton 1933 1935 - Sep Sun>=8 1:00 0 S
+Rule Moncton 1936 1938 - Jun Sun>=1 1:00 1:00 D
+Rule Moncton 1936 1938 - Sep Sun>=1 1:00 0 S
+Rule Moncton 1939 only - May 27 1:00 1:00 D
+Rule Moncton 1939 1941 - Sep Sat>=21 1:00 0 S
+Rule Moncton 1940 only - May 19 1:00 1:00 D
+Rule Moncton 1941 only - May 4 1:00 1:00 D
+Rule Moncton 1946 1972 - Apr lastSun 2:00 1:00 D
+Rule Moncton 1946 1956 - Sep lastSun 2:00 0 S
+Rule Moncton 1956 1972 - Oct lastSun 2:00 0 S
+Rule Moncton 1993 2006 - Apr Sun>=1 0:01 1:00 D
+Rule Moncton 1993 2006 - Oct lastSun 0:01 0 S
+Rule Moncton 2007 max - Mar Sun>=8 0:01 1:00 D
+Rule Moncton 2007 max - Nov Sun>=1 0:01 0 S
+# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+Zone America/Moncton -4:19:08 - LMT 1883 Dec 9
+ -5:00 - EST 1902 Jun 15
+ -4:00 Canada A%sT 1933
+ -4:00 Moncton A%sT 1942
+ -4:00 Canada A%sT 1946
+ -4:00 Moncton A%sT 1973
+ -4:00 Canada A%sT 1993
+ -4:00 Moncton A%sT
# Ontario, Quebec
diff --git a/timezone/private.h b/timezone/private.h
index 33dc4c3de9..d9f232c8e3 100644
--- a/timezone/private.h
+++ b/timezone/private.h
@@ -218,7 +218,7 @@ char * imalloc P((int n));
void * irealloc P((void * pointer, int size));
void icfree P((char * pointer));
void ifree P((char * pointer));
-char * scheck P((const char *string, char *format));
+const char *scheck P((const char *string, const char *format));
/*
** Finally, some convenience items.
diff --git a/timezone/scheck.c b/timezone/scheck.c
index 2dd9b35285..bc156379a0 100644
--- a/timezone/scheck.c
+++ b/timezone/scheck.c
@@ -1,6 +1,6 @@
#ifndef lint
#ifndef NOID
-static char elsieid[] = "@(#)scheck.c 8.16";
+static char elsieid[] = "@(#)scheck.c 8.17";
#endif /* !defined lint */
#endif /* !defined NOID */
@@ -8,20 +8,19 @@ static char elsieid[] = "@(#)scheck.c 8.16";
#include "private.h"
-char *
+const char *
scheck(string, format)
const char * const string;
-char * const format;
+const char * const format;
{
register char * fbuf;
register const char * fp;
register char * tp;
register int c;
- register char * result;
+ register const char * result;
char dummy;
- static char nada;
- result = &nada;
+ result = "";
if (string == NULL || format == NULL)
return result;
fbuf = imalloc((int) (2 * strlen(format) + 4));
diff --git a/timezone/zone.tab b/timezone/zone.tab
index d9b278b0ec..b2e12460e9 100644
--- a/timezone/zone.tab
+++ b/timezone/zone.tab
@@ -1,4 +1,4 @@
-# @(#)zone.tab 1.32
+# @(#)zone.tab 1.33
#
# TZ zone descriptions
#
@@ -100,8 +100,9 @@ BW -2545+02555 Africa/Gaborone
BY +5354+02734 Europe/Minsk
BZ +1730-08812 America/Belize
CA +4734-05243 America/St_Johns Newfoundland Island
-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), NB, W Labrador, E Quebec & PEI
+CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), W Labrador, E Quebec & PEI
CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
CA +5320-06025 America/Goose_Bay Atlantic Time - E Labrador
CA +4531-07334 America/Montreal Eastern Time - Quebec - most locations
CA +4339-07923 America/Toronto Eastern Time - Ontario - most locations
@@ -370,12 +371,14 @@ US +404251-0740023 America/New_York Eastern Time
US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
-US +394606-0860929 America/Indiana/Indianapolis Eastern Standard Time - Indiana - most locations
-US +382232-0862041 America/Indiana/Marengo Eastern Standard Time - Indiana - Crawford County
-US +411745-0863730 America/Indiana/Knox Eastern Standard Time - Indiana - Starke County
-US +384452-0850402 America/Indiana/Vevay Eastern Standard Time - Indiana - Switzerland County
+US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+US +411745-0863730 America/Indiana/Knox Eastern Time - Indiana - Starke County
+US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
US +415100-0873900 America/Chicago Central Time
-US +450628-0873651 America/Menominee Central Time - Michigan - Wisconsin border
+US +384038-0873143 America/Indiana/Vincennes Central Time - Indiana - Daviess, Dubois, Knox, Martin, Perry & Pulaski
+US +382931-0871643 America/Indiana/Petersburg Central Time - Indiana - Pike County
+US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
US +394421-1045903 America/Denver Mountain Time
US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon