diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2013-07-08 14:54:19 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2013-07-09 12:50:04 +0200 |
commit | 4f39412f6c4452d985eb00880b24dc01afafe4ce (patch) | |
tree | e32f5f29b287ec9287ad4725bfe5eb76c9ff236c /odb/boost/date-time | |
parent | c1a2d8503c53d333e380844b2b8e412708c50eaa (diff) |
Add support for Visual Studio 20052.2
Diffstat (limited to 'odb/boost/date-time')
-rw-r--r-- | odb/boost/date-time/mysql/posix-time-traits.hxx | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/odb/boost/date-time/mysql/posix-time-traits.hxx b/odb/boost/date-time/mysql/posix-time-traits.hxx index 2f40445..9750d12 100644 --- a/odb/boost/date-time/mysql/posix-time-traits.hxx +++ b/odb/boost/date-time/mysql/posix-time-traits.hxx @@ -210,7 +210,10 @@ namespace odb i.minute = std::abs (v.minutes ()); i.second = std::abs (v.seconds ()); - unsigned long long ms (std::abs (v.fractional_seconds ())); + // Some compilers, e.g., VC8, don't have 64-bit abs() overload. + // + time_duration::fractional_seconds_type sms (v.fractional_seconds ()); + unsigned long long ms (sms >= 0 ? sms : -sms); ms = ms * 1000000ULL / time_duration::ticks_per_second (); i.second_part = static_cast<unsigned long> (ms); } |