| <assertions> |
| <assertion id="1" tag="ref:XSH6:32467:32469"> |
| The function |
| int pthread_cond_wait(pthread_cond_t *restrict cond, |
| pthread_mutex_t *restrict mutex); |
| shall block on a condition variable. It shall be called with mutex locked |
| by the calling thread or undefined behavior results. |
| </assertion> |
| |
| <assertion id="2" tag="ref:XSH6:32476:32477"> |
| Upon successful return, the mutex shall have been locked and shall be owned |
| by the calling thread. |
| </assertion> |
| |
| <assertion id="3" tag="ref:XSH6:32516:32516"> |
| Upon successful completion, a value of zero shall be returned; |
| </assertion> |
| |
| <assertion id="4" tag="ref:XSH6:32521:32526"> |
| The pthread_cond_wait() function may fail if: |
| [EINVAL] The value specified by cond, mutex,or abstime is invalid. |
| [EINVAL] Different mutexes were supplied for concurrent pthread_cond_timedwait() or |
| pthread_cond_wait() operations on the same condition variable. |
| [EPERM] The mutex was not owned by the current thread at the time of the call. |
| These functions shall not return an error code of [EINTR]. |
| </assertion> |
| |
| </assertions> |