Index: include/__mutex_base =================================================================== --- include/__mutex_base +++ include/__mutex_base @@ -410,8 +410,10 @@ typedef time_point > __sys_tpf; typedef time_point __sys_tpi; __sys_tpf _Max = __sys_tpi::max(); - system_clock::time_point __s_now = system_clock::now(); + + // Steady clock must be sampled prior to system clock steady_clock::time_point __c_now = steady_clock::now(); + system_clock::time_point __s_now = system_clock::now(); if (_Max - __d > __s_now) __do_timed_wait(__lk, __s_now + __ceil(__d)); else