https://gcc.gnu.org/bugzilla/show_bug.cgi?id=45896
Jonathan Wakely <redi at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed|2010-10-05 17:57:04 |2019-3-20 Severity|enhancement |normal --- Comment #10 from Jonathan Wakely <redi at gcc dot gnu.org> --- Testcase from PR 89778: #include <ctime> #include <string> #include <iomanip> #include <sstream> #include <iostream> void printDate( const std::string &date_string ) { std::istringstream is( date_string ); std::tm tm{}; static const char *date_format( "%Y/%b/%d" ); // d : parses the day of the month as a decimal number // (range [01,31]), leading zeroes permitted but not required is >> std::get_time( &tm, date_format ); char buf[ 20 ]; std::strftime( buf, 20, date_format, &tm ); std::cout << buf << '\n'; } int main() { printDate( "2019/Apr/09" ); printDate( "2019/Apr/9" ); std::cout << '\n'; printDate( "2017/Jan/02" ); printDate( "2017/Jan/2" ); std::cout << '\n'; printDate( "2018/Dec/07" ); printDate( "2018/Dec/7" ); }