Index: changes.md ================================================================== --- changes.md +++ changes.md @@ -153,10 +153,9 @@ # Known bugs - [changed behaviour wrt command names, namespaces and resolution](https://core.tcl-lang.org/tcl/tktview/f14b33) - [windows dos device paths inconsistencies and missing functionality](https://core.tcl-lang.org/tcl/tktview/d8f121) - [load library (dll) from zipfs-library causes a leak in temporary folder](https://core.tcl-lang.org/tcl/tktview/a8e4f7) - - [Wrong handling of "24:00" for weekdays](https://core.tcl-lang.org/tcl/tktview/882da1) - [lsearch -stride with -subindices and -inline -all gives unexpected result](https://core.tcl-lang.org/tcl/tktview/5a1aaa) - [lsearch -sorted -inline -subindices incorrect result](https://core.tcl-lang.org/tcl/tktview/bc4ac0) - ["No error" when load fails due to a missing secondary DLL](https://core.tcl-lang.org/tcl/tktview/bc4ac0) Index: generic/tclClock.c ================================================================== --- generic/tclClock.c +++ generic/tclClock.c @@ -3731,12 +3731,12 @@ Tcl_SetErrorCode(opts->interp, "CLOCK", "dateTooLarge", (char *)NULL); return TCL_ERROR; } } - /* If seconds overflows the day (not valide case, or 24:00), increase days */ - if (yySecondOfDay >= SECONDS_PER_DAY) { + /* If seconds overflows the day (no validate and "24:00" case), increase days */ + if (yySecondOfDay >= SECONDS_PER_DAY + ((info->flags & CLF_TIME) && (yyHour == 24))) { yydate.julianDay += (yySecondOfDay / SECONDS_PER_DAY); yySecondOfDay %= SECONDS_PER_DAY; } /* Local seconds to UTC (stored in yydate.seconds) */