-
Notifications
You must be signed in to change notification settings - Fork 5
Open
Description
Sorry, this is a bug report, not an extension proposal.
I couldn't find a place to report a bug of basis spec.
Basis Date sais that:
Offsets are taken modulo 24 hours. That is, we express t, in hours, as sgn(t)(24*d + r), where d and r are non-negative, d is integral, and r < 24. The offset then becomes sgn(t)r and sgn(t)(24d) is added to the hours (before converting hours to days).
But sml/nj 110.97 takes an offset >24, ignore it:
- Date.toString (Date.date { year=2000, day= 1, hour=0, minute=0, month=Date.Jan, offset=SOME (Time.fromSeconds (0)), second=0});
val it = "Sat Jan 01 00:00:00 2000" : string
- Date.toString (Date.date { year=2000, day= 1, hour=0, minute=0, month=Date.Jan, offset=SOME (Time.fromSeconds (3600 * 24 + 1)), second=0});
val it = "Sat Jan 01 00:00:01 2000" : string
I think this implementation is correct, because offset larger than 24 is unnatural.
Also, the spec sais taken modulo 24 hours
.
Metadata
Metadata
Assignees
Labels
No labels