X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/2b83f27e1980a6c5de752bd55c0ff76f53ec15f6..94187a80bd60baab4b9c4b949ad820d730578123:/sbr/done.c diff --git a/sbr/done.c b/sbr/done.c index cd76fac5..5f2bc8db 100644 --- a/sbr/done.c +++ b/sbr/done.c @@ -7,19 +7,6 @@ #include -/* It's undefined behaviour in C99 to convert from a function pointer to - * a data-object pointer, e.g. void pointer. gcc's -pedantic warns of - * this and can stop compilation. POSIX requires the operation however, - * e.g. for dlsym(3), and so we know it's safe on POSIX platforms, e.g. - * the pointers are of the same size. Thus use a union to subvert gcc's - * check. The function-pointer equivalent of a void pointer is any - * function-pointer type as all function pointers are defined to be - * convertible from one another; use the simplest available. */ -typedef union { - void *v; - void (*f)(void); -} generic_pointer; - static void (*altexit)(int) NORETURN = exit; /* set_done changes the path of done() from exit(3), or back to exit(3).