[kaffe] DateFormatTest regression

Ito Kazumitsu ito.kazumitsu at hitachi-cable.co.jp
Wed Mar 3 17:13:02 PST 2004


In message "Re: [kaffe] DateFormatTest regression"
    on 04/03/03, Guilhem Lavaux <guilhem at kaffe.org> writes:

> After some experiment, I'm principally suspecting SimpleTimeZone for 
> this. The bug also occurs with WET but not with some other really 
> similar timezones (like America/Scoresbysund)... Maybe tomorrow...

java/text/SimpleDateFormat.java reads

        if (! saw_timezone)
          {
            // Use the real rules to determine whether or not this
            // particular time is in daylight savings.
            calendar.clear (Calendar.DST_OFFSET);
            calendar.clear (Calendar.ZONE_OFFSET);
          }

I think this part is most suspicious.  I call this bug DST_BUG afterwards.

As for WET, java/util/TimeZone.java reads

        tz = new SimpleTimeZone
          (0 * 3600, "WET",
           Calendar.MARCH, -1, Calendar.SUNDAY, 1000 * 3600,
           Calendar.OCTOBER, -1, Calendar.SUNDAY, 1000 * 3600);

This means WET's daylight saving time should start on the last
Sunday in March.  But now that DST_BUG occurs before the last
Sundy, there may be another bug about the handling of
DAY_OF_WEEK_IN_MONTH.  I call this this bug DOWIM_BUG afterwards.

As for America/Scoresbysund,  results vary depending on whether
you give the timezone by TZ or by user.timezone:

$ TZ=/usr/share/zoneinfo/America/Scoresbysund java DateFormat
Test
Same time zone
Different time zone
$ java -Duser.timezone=Atlantic/Canary DateFormatTest
Same time zone
Dates don't match? Thu Mar 04 00:49:58 GMT+00:00 2004 != Thu Mar 04 01:49:58 GMT+00:00 2004
Different time zone

When you give the timezone by TZ, the zoneinfo from OS, which is
free from DOWIM_BUG and says DST starts on the last Sunday in March,
is used and DST_BUG does not occur until the last Sunday in March.

When you give the timezone by user.timezone,  DOWIM_BUG works and
the same thing occurs as WET.

By the way,

  I feel happy living in an area where they do not have daylight
  saving time although they have difficulty with CJK characters.




More information about the kaffe mailing list