Consider the following program:
#include <chrono>
#include <thread>
int main() {
std::this_thread::sleep_until(std::chrono::steady_clock::now() - std::chrono::seconds(10));
return 0;
}
When compiled with GCC 4.8.5, it will hang. When compiled with GCC 4.9 and above or clang3.4 and above, it returns immediately,
Why would it hang? As I understand, GCC 4.8.5 fully supports C++11 standard.