Opened 14 years ago
Closed 13 years ago
#2824 closed Bugs (fixed)
constant boost::date_time::time_resolution_traits::ticks_per_second has wrong type
Reported by: | Owned by: | az_sw_dude | |
---|---|---|---|
Milestone: | Boost 1.39.0 | Component: | date_time |
Version: | Boost Release Branch | Severity: | Problem |
Keywords: | Cc: |
Description
The constant boost::date_time::time_resolution_traits::ticks_per_second is declared as an int, yet it is initialized to the template parameter resolution_adjust, which is of type frac_sec_type::int_type or boost::int64_t depending on compiler settings. When building for a 64 bit target this causes the constant value to be truncated to 32 bits. To fix this, the declaration of ticks_per_second should be made consistent with the declaration of resolution_adjust:
#if (defined(BOOST_MSVC) && (_MSC_VER < 1300)) BOOST_STATIC_CONSTANT(boost::int64_t, ticks_per_second = resolution_adjust); #else BOOST_STATIC_CONSTANT(fractional_seconds_type, ticks_per_second = resolution_adjust); #endif
Note:
See TracTickets
for help on using tickets.
(In [53678]) Fixes #2824.