Commit Graph
181 Commits
Author SHA1 Message Date
Howard Hinnant 5f8c904231 Enable a permanent daylight saving rule for Posix::time_zone
* See comments in ptz.h for directions and examples.
2023-02-12 19:56:54 -05:00
Jonathan Wakely c9169ea310 Fix comment typo in tz.h 2022-12-13 09:10:28 -05:00
Howard Hinnant c82b776f28 Tweak sys_time streaming operator to work better year and
month precision time_points.
2022-08-12 10:29:10 -04:00
Howard Hinnant 2c035f8def Fix abs(duration) to work with non-normalized ratios 2022-08-12 10:28:12 -04:00
Howard Hinnant e6f4aed4d1 Supply missing 'inline' 2022-04-24 22:27:54 -04:00
DavisVaughan 9ea5654c12 Sync get_info_impl() signatures 2022-02-16 20:23:27 -05:00
Howard Hinnant 3776e0f185 Update Posix::time_zone comment with CTAD simplification 2022-01-26 19:44:06 -05:00
Howard Hinnant 9e830536a0 Add range checking for numerical values in Posix::time_zone 2022-01-26 19:40:32 -05:00
Ans 28b5106d4c Fix uninitialized values (#698) 2021-09-01 09:44:26 -04:00
Howard Hinnant e1aa4837e0 Avoid signed integral overflow in to_stream
Fixes: #696
2021-08-31 17:43:44 -04:00
Nicolas b0adc54677 static_cast to silent warning implict conversion (#693)
That happen because `sizeof(long long unsigned int) == sizeof(long double)` in 32-bit architectures.
2021-08-17 11:35:13 -04:00
Howard Hinnant d57d764707 Round when parsing seconds instead of duration_cast. 2021-07-25 23:08:53 -04:00
Howard Hinnant 383214dea6 Remove string_view overloads of parse
* They were rejected by the LWG
2021-07-25 23:01:30 -04:00
Howard Hinnant fb2554a7e0 Give gcc 4.8 a hand in constructing fields
Fixes #678
2021-06-02 18:23:54 -04:00
JulZimmermannandJulian Zimmermann 8c126525cc call from_stream explicitly from date namespace (#677)
Co-authored-by: Julian Zimmermann <Julian.Zimmermann@gti.de>
2021-05-31 12:54:11 -04:00
Howard Hinnant 8f95c598c9 [Pedantic] Use named constants in place of literals 2021-05-27 21:20:36 -04:00
Aaron Franke 417402ad35 Remove trailing whitespace and add gitattributes (#672) 2021-05-24 08:22:43 -04:00
Howard Hinnant 38267fa1ef Template basic_string_view on Traits in parse overloads 2021-05-20 08:46:42 -04:00
Howard Hinnant 2f4411312b Add extra parse_manip constructor to avoid ambiguity 2021-05-19 14:36:09 -04:00
Howard Hinnant e23c15bb36 Add string_view overloads to parse functions 2021-05-19 14:13:33 -04:00
Howard Hinnant 2ef74cb41a If %I is used without %p, mark the ambiguity with failbit 2021-04-16 15:15:45 -04:00
Howard Hinnant ac6ca2a095 Add is_clock_v 2021-04-15 11:41:20 -04:00
Howard Hinnant ae017078c9 Fix Posix::time_zone for southern hemisphere
* The get_info functions were not prepared for the case where the start
  and end times of a rule are chronologically reversed for a year.  I.e.
  the daylight saving start comes later in the year than the daylight
  saving end.  When save is positive, this happens in the southern
  hemisphere (e.g. "Australia/Sydney" -> "AEST-10AEDT,M10.1.0,M4.1.0/3").
  It also happens in the nothern hemisphere when the save is negative
  (e.g. "Europe/Dublin" -> "IST-1GMT0,M10.5.0,M3.5.0/1").

* Added tests for Posix::time_zone.
2021-04-09 11:08:12 -04:00
Howard Hinnant 156e0a786e Fix up namespace error in Posix::time_zone::to_sys 2021-04-07 20:33:01 -04:00
Howard Hinnant 9a9a42db74 Enable streaming output operator for floating-point-based time_points 2021-04-06 17:22:22 -04:00
Howard Hinnant b5b765f928 Clean up calendrical streaming operators for invalid values 2021-03-31 16:15:53 -04:00
Howard Hinnant 654b97091f Change default on C++17 to uncaught_exceptions
* By popular demand.
* If you need to undo this change, compile with
  -DHAS_UNCAUGHT_EXCEPTIONS=0.
2021-03-21 22:41:22 -04:00
Howard Hinnant 0e08b942c8 Correct the streaming output of year_month_day
* Invalid dates were printing out "invalid"
  too many times.
2021-03-11 19:50:14 -05:00
Davis Vaughan 1c285d6545 Cast to unsigned char before calling toupper() (#648) 2021-02-24 12:49:46 -05:00
Howard Hinnant 26fc2bd372 Fix read_long_double with respect to decimal_point:
*  Respect locale settings when ONLY_C_LOCALE=0
*  Do not respect locale settings when ONLY_C_LOCALE=1
Fixes #637
2021-01-05 21:14:41 -05:00
Howard Hinnant 97246a638a Silence lossy conversion warning
Fixes #620
2020-11-10 08:41:30 -05:00
Howard Hinnant 215cacff56 Change all uses of round to detail::round_i
Fixes #613

detail::round_i is the same as round when the To::rep
is integral, and is just an implicit conversion when
To::rep is floating point.
2020-10-25 20:16:07 -04:00
Howard Hinnant 7848566815 Fix a parse error for Visual Studio 2020-10-02 12:53:16 -04:00
Howard Hinnant ba99134b8a For USE_OS_TZDB, look for leap seconds in the files
leapseconds and leap-seconds.list
2020-09-11 15:53:07 -04:00
Howard Hinnant 5e18488899 Fix subtle bug in fractional_width 2020-09-05 16:34:04 -04:00
Andre Nguyen 057b441ceb Use LLONG_MAX instead of std::numeric_limits<long long>::max() when constexpr is absent 2020-08-21 17:09:51 -04:00
Andre Nguyen d7a0bf1fa7 replace noexcept with NOEXCEPT macro 2020-08-21 17:09:51 -04:00
Andre Nguyen 8140d979cd fix brace value initialization for msvc 18 2020-08-21 17:09:51 -04:00
Andre Nguyen 7990eae740 fix user defined literals for compatibility with msvc 18 2020-08-21 17:09:47 -04:00
Howard Hinnant 569b2d6785 Improve error message while parsing posix timezone string 2020-08-02 10:56:37 -04:00
Howard Hinnant 6952fb50a6 Correct the value for not_a_year 2020-07-08 14:20:31 -04:00
Howard Hinnant fe2f9c7eac Change constexpr to CONSTDATA 2020-07-07 15:01:45 -04:00
Howard Hinnant d544e5af25 Throw exception if zoned_time is constructed with nullptr 2020-06-14 19:30:23 -04:00
Howard Hinnant cac99da8dc For traits in constexpr context use ::value
* Fixes #542
2020-06-02 21:08:57 -04:00
Howard Hinnant 9343e31599 Give Posix::time_zone equality comparison 2020-05-24 21:31:18 -04:00
Howard Hinnant f43c39fcf1 Add member function name() const to Posix::time_zone
* Returns the minimal string that uniquely identifies this
  time_zone.  That is, it takes advantage of all defaults.
2020-05-06 22:12:15 -04:00
Howard Hinnant e12095f26f Revert change for floating point reps in decimal_format_seconds 2020-04-18 09:24:53 -04:00
Howard Hinnant 7d811743e0 Fix parse of second offset in posix time zone 2020-04-18 09:24:22 -04:00
Howard Hinnant a2fdba1adc __GNUC_MINOR -> __GNUC_MINOR__
* Fixes #560
2020-03-30 12:50:37 -04:00
Howard Hinnant 4c1968b8f0 Fix constexpr overflow problems on gcc-7-9 2020-03-08 21:58:56 -04:00