commit 75c74a83acee3f51e6753b8159fa600fe2d86810 Author: Jonathan Wakely Date: Thu Feb 25 11:48:18 2021 libstdc++: Fix narrowing conversion in year_month_day [PR 99265] libstdc++-v3/ChangeLog: PR libstdc++/99265 * include/std/chrono (year_month_day::_S_from_days): Cast long to int explicitly. diff --git a/libstdc++-v3/include/std/chrono b/libstdc++-v3/include/std/chrono index feb2c2a1fad..eef503af274 100644 --- a/libstdc++-v3/include/std/chrono +++ b/libstdc++-v3/include/std/chrono @@ -2481,8 +2481,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION const auto __m1 = __j ? __m0 - 12 : __m0; const auto __d1 = __d0 + 1; - return year_month_day{chrono::year{__y1 + __z2}, chrono::month{__m1}, - chrono::day{__d1}}; + return year_month_day{chrono::year{static_cast(__y1 + __z2)}, + chrono::month{__m1}, chrono::day{__d1}}; } // Days since 1970/01/01.