14
14
struct child_wait *
15
15
child_wait_new_with_pid(pid_t pid, child_wait_callback_t *callback,
17
#ifdef CONTEXT_TYPE_SAFETY
18
# define child_wait_new_with_pid(pid, callback, context) \
19
({(void)(1 ? 0 : callback((const struct child_wait_status *)0, \
21
child_wait_new_with_pid(pid, (child_wait_callback_t *)callback, context); })
23
# define child_wait_new_with_pid(pid, callback, context) \
24
child_wait_new_with_pid(pid, (child_wait_callback_t *)callback, context)
16
void *context) ATTR_NULL(3);
17
#define child_wait_new_with_pid(pid, callback, context) \
18
child_wait_new_with_pid(pid + \
19
CALLBACK_TYPECHECK(callback, void (*)( \
20
const struct child_wait_status *status, typeof(context))), \
21
(child_wait_callback_t *)callback, context)
26
22
#define child_wait_new(callback, context) \
27
23
child_wait_new_with_pid((pid_t)-1, callback, context)
28
24
void child_wait_free(struct child_wait **wait);