# HG changeset patch # User iloehken # Date 1428227847 -7200 # Sun Apr 05 11:57:27 2015 +0200 # Node ID c726bfb922cffbf217679aa77c3b77717deabf26 # Parent 6222c2f9927f782a99d1c597f7f397153903c113 [boost] fixed bug diff -r 6222c2f9927f -r c726bfb922cf ext/boost/1.57/inc/boost/date_time/time_duration.hpp --- a/ext/boost/1.57/inc/boost/date_time/time_duration.hpp Sat Apr 04 23:25:01 2015 +0200 +++ b/ext/boost/1.57/inc/boost/date_time/time_duration.hpp Sun Apr 05 11:57:27 2015 +0200 @@ -275,11 +275,22 @@ "The base duration resolution must be a multiple of the subsecond duration resolution"); BOOST_STATIC_CONSTANT(boost::int64_t, adjustment_ratio = (traits_type::ticks_per_second >= frac_of_second ? traits_type::ticks_per_second / frac_of_second : frac_of_second / traits_type::ticks_per_second)); + //-------------------------------------------------------------------- + static inline impl_type InitBase(boost::int64_t const& ss) + //-------------------------------------------------------------------- + { + return impl_type(traits_type::ticks_per_second >= frac_of_second ? ss * adjustment_ratio : ss / adjustment_ratio); + } + public: - explicit subsecond_duration(boost::int64_t ss) : - base_duration(impl_type(traits_type::ticks_per_second >= frac_of_second ? ss * adjustment_ratio : ss / adjustment_ratio)) - { - } + //-------------------------------------------------------------------- + template + explicit subsecond_duration(T const& ss, + typename boost::disable_if,void>::type* = nullptr) + //-------------------------------------------------------------------- + : base_duration(InitBase(ss)) + //-------------------------------------------------------------------- + {} };