diff --git a/include/chrono b/include/chrono index 97b0c816d..e5b9a496b 100644 --- a/include/chrono +++ b/include/chrono @@ -225,9 +225,9 @@ public: typedef chrono::time_point time_point; static const bool is_steady = false; - static time_point now(); - static time_t to_time_t (const time_point& __t); - static time_point from_time_t(time_t __t); + static time_point now() noexcept; + static time_t to_time_t (const time_point& __t) noexcept; + static time_point from_time_t(time_t __t) noexcept; }; class steady_clock @@ -239,7 +239,7 @@ public: typedef chrono::time_point time_point; static const bool is_steady = true; - static time_point now(); + static time_point now() noexcept; }; typedef steady_clock high_resolution_clock; @@ -845,9 +845,9 @@ public: typedef chrono::time_point time_point; static const bool is_steady = false; - static time_point now(); - static time_t to_time_t (const time_point& __t); - static time_point from_time_t(time_t __t); + static time_point now() _NOEXCEPT; + static time_t to_time_t (const time_point& __t) _NOEXCEPT; + static time_point from_time_t(time_t __t) _NOEXCEPT; }; class _LIBCPP_VISIBLE steady_clock @@ -859,7 +859,7 @@ public: typedef chrono::time_point time_point; static const bool is_steady = true; - static time_point now(); + static time_point now() _NOEXCEPT; }; typedef steady_clock high_resolution_clock; diff --git a/src/chrono.cpp b/src/chrono.cpp index c3714208b..416b95013 100644 --- a/src/chrono.cpp +++ b/src/chrono.cpp @@ -25,7 +25,7 @@ namespace chrono // system_clock system_clock::time_point -system_clock::now() +system_clock::now() _NOEXCEPT { timeval tv; gettimeofday(&tv, 0); @@ -33,13 +33,13 @@ system_clock::now() } time_t -system_clock::to_time_t(const time_point& t) +system_clock::to_time_t(const time_point& t) _NOEXCEPT { return time_t(duration_cast(t.time_since_epoch()).count()); } system_clock::time_point -system_clock::from_time_t(time_t t) +system_clock::from_time_t(time_t t) _NOEXCEPT { return system_clock::time_point(seconds(t)); } @@ -97,7 +97,7 @@ init_steady_clock() #pragma GCC visibility pop steady_clock::time_point -steady_clock::now() +steady_clock::now() _NOEXCEPT { static FP fp = init_steady_clock(); return time_point(duration(fp())); @@ -114,7 +114,7 @@ steady_clock::now() // instead. steady_clock::time_point -steady_clock::now() +steady_clock::now() _NOEXCEPT { struct timespec tp; if (0 != clock_gettime(CLOCK_MONOTONIC, &tp))