diff --git a/include/date/date.h b/include/date/date.h index 9902b0c..5af9dd2 100644 --- a/include/date/date.h +++ b/include/date/date.h @@ -6996,6 +6996,8 @@ from_stream(std::basic_istream& is, const CharT* fmt, else if (day(static_cast(d)) != ymd.day()) goto broken; } + if (Y < static_cast(year::min()) || Y > static_cast(year::max())) + goto broken; auto ymd = year{Y}/m/d; if (wd != not_a_weekday && ymd.ok()) {