(1) template< class C, class D1, class R2, class P2 >
time_point<C, typename std::common_type<D1, duration<R2,P2>>::type>
operator+( const time_point<C,D1>& pt,
const duration<R2,P2>& d ); (since C++11) (until C++14) template< class C, class D1, class R2, class P2 >
constexpr time_point<C, typename std::common_type<D1, duration<R2,P2>>::type>
operator+( const time_point<C,D1>& pt,