1<assertions>
2  <assertion id="1" tag="ref:XSH6:32050:32055">
3   The function
4
5   void pthread_cleanup_push(void (*routine) (void*), void *arg); 
6
7  Shall push the specified cancelation cleanup handler routine onto the calling thread's
8  cancelation cleanup stack.
9
10  The cancelation cleanup handler shall be popped from the cancelation cleanup stack and invoked
11  with the argument arg when:
12
13  - The thread exits (calls pthread_exit())
14  - The thread acts upon a cancelation request
15  - the thread calls pthread_cleanup_pop() with a non-zero execution argument
16  </assertion>
17
18  <assertion id="2" tag="ref:XSH6:32066:32069">
19  It will not return a value, or an error code of [EINTR]
20  </assertion>
21
22</assertions>
23