When the target doesn't define PTHREAD_RWLOCK_INITIALIZER we use a wrapper around pthread_wrlock_init, but the wrapper only takes one argument and we try to call it with two. This went unnnoticed on most targets because they do define the PTHREAD_RWLOCK_INITIALIZER macro, but it causes a bootstrap failure on darwin8. PR libstdc++/93244 * include/std/shared_mutex [!PTHREAD_RWLOCK_INITIALIZER] (__shared_mutex_pthread::__shared_mutex_pthread()): Remove incorrect second argument to __glibcxx_rwlock_init. * testsuite/30_threads/shared_timed_mutex/94069.cc: New test.
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| async | Loading commit data... | |
| call_once | Loading commit data... | |
| condition_variable | Loading commit data... | |
| condition_variable_any | Loading commit data... | |
| future | Loading commit data... | |
| headers | Loading commit data... | |
| jthread | Loading commit data... | |
| lock | Loading commit data... | |
| lock_guard | Loading commit data... | |
| mutex | Loading commit data... | |
| once_flag/cons | Loading commit data... | |
| packaged_task | Loading commit data... | |
| promise | Loading commit data... | |
| recursive_mutex | Loading commit data... | |
| recursive_timed_mutex | Loading commit data... | |
| scoped_lock | Loading commit data... | |
| shared_future | Loading commit data... | |
| shared_lock | Loading commit data... | |
| shared_mutex | Loading commit data... | |
| shared_timed_mutex | Loading commit data... | |
| stop_token | Loading commit data... | |
| this_thread | Loading commit data... | |
| thread | Loading commit data... | |
| timed_mutex | Loading commit data... | |
| try_lock | Loading commit data... | |
| unique_lock | Loading commit data... |