A non-trivial typo in the man page for pthread_cleanup_push()?
On my Solaris 9 and 10 systems, the prototype of the pthread_cleanup_push() function is, according to the man page:
void pthread_cleanup_push(void (*handler, void *), void *arg);
Should it be
void pthread_cleanup_push(void (*routine) (void *), void *arg); ?
Alternatively, if both are correct, what are the differences between the two? I tried to use the first format to write some test code and got a bunch of syntax errors.

