diff --git a/date.h b/date.h index 77cbe5c..b7d084d 100644 --- a/date.h +++ b/date.h @@ -4028,10 +4028,10 @@ format(const std::locale& loc, std::basic_string fmt, tm.tm_sec = static_cast(hms.seconds().count()); tm.tm_min = static_cast(hms.minutes().count()); tm.tm_hour = static_cast(hms.hours().count()); - tm.tm_mday = static_cast(unsigned{ymd.day()}); - tm.tm_mon = static_cast(unsigned{ymd.month()} - 1); - tm.tm_year = int{ymd.year()} - 1900; - tm.tm_wday = static_cast(unsigned{weekday{ld}}); + tm.tm_mday = static_cast(static_cast(ymd.day())); + tm.tm_mon = static_cast(static_cast(ymd.month()) - 1); + tm.tm_year = static_cast(ymd.year()) - 1900; + tm.tm_wday = static_cast(static_cast(weekday{ld})); tm.tm_yday = static_cast((ld - local_days{ymd.year()/1/1}).count()); f.put(os, os, os.fill(), &tm, fmt.data(), fmt.data() + fmt.size()); return os.str();