fix: narrow uses insufficient input char type

The current implementation uses std::stringstream::narrow(char) with its 'char' input parameter type to transform 'charT' chars taken from a std::basic_istream<charT> into 'char' chars. This is most likely not what is intended if 'charT' is wider than 'char'. Fix this by using std::basic_istream<charT>::narrow(charT) instead.

Signed-off-by: Daniela Engert <dani@ngrt.de>
Fix for utc_to_local year 2038 problem

Even if std::time_t is 64-bit, multiplying the 32-bit value dd.days() by 86400 result in a negative value for dates after 2038. This results in c_time::localtime(&t2, &tms) throwing an exception.

Adding casts to std::time_t fixes this problem.
Merge pull request #1 from DanielaE/fix/bad_narrow

fix: narrow uses insufficient input char type
Merge pull request #4 from MarcelRaad/patch-1

Fix for utc_to_local year 2038 problem