These new multithreaded tests need -pthread for targets that don't
include all pthreads symbols in libc (including older Glibc in
particular).
The 30_threads/shared_timed_mutex/try_lock_until/116586.cc test is not
fixed by this commit, because it needs a different fix for older Glibc.
libstdc++-v3/ChangeLog:
PR libstdc++/122401
* testsuite/20_util/shared_ptr/atomic/pr118757.cc: Add -pthread
for et pthread.
* testsuite/20_util/weak_ptr/pr118757.cc: Likewise.
* testsuite/30_threads/condition_variable/members/116586.cc:
Likewise. Only run for hosted targets with gthreads support.
* testsuite/30_threads/future/members/116586.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/116586.cc:
Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/116586.cc:
Likewise.
// { dg-do run { target c++20 } }
+// { dg-additional-options "-pthread" { target pthread } }
// { dg-require-gthreads "" }
// { dg-require-effective-target hosted }
// { dg-do run { target c++20 } }
+// { dg-additional-options "-pthread" { target pthread } }
// { dg-require-gthreads "" }
// { dg-require-effective-target hosted }
// { dg-do run { target c++11 } }
+// { dg-additional-options "-pthread" { target pthread } }
+// { dg-require-gthreads "" }
+// { dg-require-effective-target hosted }
#include <condition_variable>
#include <chrono>
// { dg-do run { target c++11 } }
+// { dg-additional-options "-pthread" { target pthread } }
+// { dg-require-gthreads "" }
+// { dg-require-effective-target hosted }
#include <future>
#include <chrono>
// { dg-do run { target c++11 } }
+// { dg-additional-options "-pthread" { target pthread } }
+// { dg-require-gthreads "" }
+// { dg-require-effective-target hosted }
#include <mutex>
#include <chrono>
// { dg-do run { target c++11 } }
+// { dg-additional-options "-pthread" { target pthread } }
+// { dg-require-gthreads "" }
+// { dg-require-effective-target hosted }
#include <chrono>
#include <mutex>