https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60421
--- Comment #5 from Jaak Ristioja <jaak at ristioja dot ee> --- (In reply to Jonathan Wakely from comment #4) > Fixed for gcc5. Looking at the diff <thread> of revision 221708, I fail to see how the if (__rtime <= __rtime.zero()) return; check in sleep_for() prevents the EINVAL in nanosleep(3p), as is the original issue. I mean aren't we dealing here with unsigned (decltype(_rtime)) to signed (std::time_t) conversion?