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
Asad. Gharighi
9cc3a7bca1
Adding Persian/Jalali/Solar-Hijri calendar
2020-03-08 20:18:45 -04:00
Nexus Web Development
9502bc27a3
Update Date.h ( #529 )
...
* Remove arithmetic overflow:
Using operator '-' on a 4 byte value and then casting the result to a 8 byte value. Casting the value to the wider type before calling operator '-' to avoid overflow.
2020-01-11 15:24:10 -05:00
nanoric
66a5aa482e
Add constexpr for clock_cast.
2020-01-11 14:44:06 -05:00
Howard Hinnant
a184309786
Fix unwanted localization of integral grouping
...
* Fixes #525
2020-01-01 11:12:14 -05:00
johnmph
48433b9892
Update date.h ( #518 )
...
using decltype in day constructor to be consistent with month and year
2019-12-05 14:00:16 -05:00
Nehal J Wani
4c95165298
Constrain make_zoned for icc16
...
Build fails with Intel Compiler v16:
<source>(1698): error: expression must have a constant value
std::is_class<typename std::decay<decltype(*std::declval<TimeZonePtr&>())>::type>{}
^
2019-11-29 19:45:59 -05:00
Ten10
940f4a5ceb
Support Curl Error Buffer
...
Allow user to get error message when download fails
2019-11-29 19:38:40 -05:00
Lakshay Garg
018a50bcd0
Work around for a NVCC compiler bug
...
The NVCC compiler fails to compile the date library due
to a compiler bug which causes it to emit an error when
directly using std::ratio_{multiply,divide} in the template
instantiations for std::duration. This PR works around the
issue by introducing custom ratio_{multiply,divide} which
delegate to the standard library templates
2019-11-29 19:27:36 -05:00
Howard Hinnant
3e376be2e9
Rename link to time_zone_link
...
* At the request of LEWG
2019-11-08 19:36:09 +00:00
Howard Hinnant
224c71a899
Rename leap to leap_second and leaps to leap_seconds
...
* At the request of LEWG
2019-11-08 19:24:03 +00:00
jgzhuang
67e272a54e
change the order in hh_mm_ss::to_duration() to have correct result on Windows for cases when h is 2147483647 hours and m and s are all 0 ( #501 )
2019-10-24 09:57:36 -04:00
Howard Hinnant
d399e10cba
Bump zoned_time fixes for MSVC from 1900 to 1916
2019-10-22 13:28:48 -04:00
Howard Hinnant
96ffe23f72
Replace INTMAX_MAX with numeric_limits
2019-10-21 22:22:50 -04:00
Howard Hinnant
a5c4b4ebf8
Protect is_am and make12 from ADL
2019-09-17 15:48:15 -04:00
Alexej Harm
44344000f0
Fix MSVC C++ version detection
2019-09-12 19:58:05 -04:00
KerryJ
d21333f636
Fixes #484
2019-09-03 23:17:43 -04:00
maximilianriemensberger
cb4bf26fc7
Fix compilation error with GCC 5
...
GCC 5 complains that `operator-=` and `operator+=` are not constexpr. The `-` and `+` operator appear seem to be fine.
2019-09-03 22:59:04 -04:00
Tomasz Kamiński
5a0057587d
Correct behavior for classes for which only lvalue is convertible to string_view.
...
Added OnlyLValueString test case that shows the problem with
current impl. Implemented the change, that accept TimeZonePtrOrName
by forwarding reference (to preserve value category), and
merged time_zone selection into one trait.
2019-09-01 14:43:50 -04:00
Tomasz Kamiński
7c020642fb
Fixed deduction guides for GCC 8.
...
The GCC 8 was correctly preffering the deduction guide
syntezied from the std::string_view constructor which is more
specialized than deduction guide. Changed the constructor
so the Duration cannot be deduced from it.
2019-09-01 14:43:50 -04:00
Howard Hinnant
141ba85614
Fix space-matches 0 spaces at end of format string
2019-08-23 15:51:18 -04:00
Robert Campion
dca8ddc659
Replace computed value with standard macro
2019-07-21 23:43:29 -04:00
James Beach
1f5c192f4a
Resolve GCC 9.1.0 noexcept warning
2019-07-21 23:31:29 -04:00
Si Wei How
c0e7b4e2f7
Make date.h compatible with g++-4.7
2019-07-21 21:48:51 -04:00
AdrienBellanger
09d90a8b5e
Fix operator<< for years with non C locale
...
Fix the issue https://github.com/HowardHinnant/date/issues/392
2019-07-21 21:20:49 -04:00
tomaszkam
27d1e1e54e
Removed undefined behavioir from year_mont_day_last::day ( #456 )
...
This is done to make the result of calling day() on
year_month_day_last object that is !ok() unspecified.
Checked only months, are there are needed to avoid UB.
2019-05-28 09:01:14 -04:00
Jonathan Chapple
7817ebf45a
Update date.h ( #451 )
...
endf -> endif
2019-05-20 09:44:20 -04:00
Howard Hinnant
a029f1105d
Conditionally set _SILENCE_CXX17_UNCAUGHT_EXCEPTION_DEPRECATION_WARNING
2019-05-19 22:46:35 -04:00
Howard Hinnant
44215f6781
Eschew using directives in headers, even at function scope.
...
* There is still an impact on user code, though I'm not sure
if by specification or compiler bug.
* Prefer using declarations instead.
2019-05-19 21:53:29 -04:00
Howard Hinnant
081e9af55b
Migrate ptz.h from jan to January
2019-04-05 22:36:21 -04:00
Howard Hinnant
8a563041fa
Adjust HAS_STRING_VIEW for VS
...
Fixes #330
2019-04-05 09:19:54 -04:00
Howard Hinnant
9dc96fd9b5
Silence warning
...
Fixes #337
2019-03-26 18:13:39 -04:00
Howard Hinnant
8b69087d35
Fix up constexpr of changed weekday_from_days
2019-03-21 12:23:38 -04:00
Howard Hinnant
d5e96f0991
Suppress VS-15 warning about concerning conditional expression is constant
...
Thanks to https://github.com/ujos for the report.
2019-03-20 21:24:01 -04:00
Evgen Bodunov
5ba1c1ad85
HAS_UNCAUGHT_EXCEPTIONS definition.
...
Added some flexibility for usage of std::uncaught_exceptions().
Xcode 10 uses clang and perfectly compiles C++17, but
std::uncaught_exceptions() is available only on iOS 10+ devices. When
application supports iOS 9 devices and uses C++17 there is no way to
build it, except drop iOS 9 support or remove C++17 code. Using this
define we could configure should date.h use std::uncaught_exceptions()
or not.
2019-03-20 20:43:43 -04:00
Howard Hinnant
cb7ca96f68
Protect weekday_from_days from signed overflow
...
Found by static analyzer.
This change makes weekday_from_days slightly more efficient.
2019-03-19 19:51:32 -04:00