summaryrefslogtreecommitdiffstats
path: root/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp')
-rw-r--r--libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp b/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
index bffb5f38b3c..27e1d2a1d42 100644
--- a/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
+++ b/libcxx/test/std/thread/thread.threads/thread.thread.this/sleep_for.pass.cpp
@@ -17,14 +17,17 @@
#include <thread>
#include <cstdlib>
#include <cassert>
+#include <cstring>
#include <signal.h>
#include <sys/time.h>
+void sig_action(int) {}
+
int main()
{
int ec;
struct sigaction action;
- action.sa_handler = [](int) {};
+ action.sa_handler = &sig_action;
sigemptyset(&action.sa_mask);
action.sa_flags = 0;
@@ -32,7 +35,7 @@ int main()
assert(!ec);
struct itimerval it;
- it.it_interval = { 0 };
+ std::memset(&it, 0, sizeof(itimerval));
it.it_value.tv_sec = 0;
it.it_value.tv_usec = 250000;
// This will result in a SIGALRM getting fired resulting in the nanosleep
OpenPOWER on IntegriCloud