From: williamkempf_at_[hidden]
Date: 2001-10-11 11:50:43


--- In boost_at_y..., Karl Pitrich <pit_at_r...> wrote:
>
> hm, this is strange, the function signatures do not match:
>
> from pthreads man page:
> > int pthread_getspecific(pthread_key_t key, pthread_addr_t
*value);
>
> but in once.cpp:
> > once_callback cb =
> reinterpret_cast<once_callback>(pthread_getspecific(key));
>
> ?

We'll need a PTHREADS expert on this one. The pthreads-win32
documentation, as well as Butenhof's book, define pthread_getspecific
as:

void* pthread_getspecific(pthread_key_t key);

However, the O'Reilly book, Pthreads Programming, agrees with your
manpage signature. Just taking a wild guess this may be something
that's changed during the POSIX standardization process and we may
need a Boost.Config option to handle this. But I don't know any of
this for sure so can't solve this issue with out help from others.

Bill Kempf