* from storing a {year, month}.
* Change constructor from {year, month} to {year, month_day_last}.
* Add getter from year_month_day_last().
* Fix up operator/() as required.
* This is an API change, but not a functionality change.
* Rationale: consistency.
* from storing a {month, weekday}.
* Change constructor from {month, weekday} to {month, week_last}.
* Change getter from weekday() to weekday_last().
* Fix up operator/() as required.
* This is an API change, but not a functionality change.
* Rationale: consistency.
This library now compiles on Windows but requires VS2015 for Windows.
VS2013 may work but this has not been tested yet.
Requires NOMINMAX to be defined to avoid clashes with the Windows.h
headers and the C++ stl and this libraries Date max functions.
Also known to work equivalently with recent g++ and mingw combinations
but -std=C++14 flag should be set.
C++14 restrictions may be relaxed later. Patches welcome!
g++ 5.1 was tested. It may work with other version but that hasn't been tried.
Mac OS and Linux systems are known to compile with -std=c++11
current_timezone and locate_zone will return iana names not windows
time zone names. This is expected and as designed.
to within the range of chrono::minutes.
* This prevents overflow when adding minutes to day_point
when minutes is stored in 32 bits.
* Also added static checks on the range of hours and seconds.
If these static checks fire, the range of year should be
further reduced.
* This does not impact gcc at all. It impacts clang only
when targeting 32 bit architectures. And it fixes
overflow on Visual Studio.
* Thanks much to https://github.com/gmcode for the herculean
effort in tracking this down.