When I use the example from the timezone man page to define, and export a local TZ variable: export TZ="NZST-12.00:00NZDT-13:00:00,M10.1.0,M3.3.0" And then set the date to December 31st at 23:59 I see the clock roll over to 00:00 normally. But when I define a timezone using a positive offset I see time get set backwards at December 31st. I believe time should not get set back on December 31st for any timezones whose day light savings span December 31st. export TZ="NZST+12.00:00NZDT+13:00:00,M10.1.0,M3.3.0" date 123123592011.55 Sat Dec 31 23:59:55 2011 when I wait 5 seconds and check the date again I see the date has been adjusted to Dec 31st at 12:00? root@dstest2:~# date Sat Dec 31 12:00:01 NZST 2011 What is happening with TZs defined with a positive offset? I can reproduce this on Linux systems using glibc 2.5.90 up through glibc 2.12.1. I was hoping you could help me understand what is going on? thank you Dave