Boost logo

Boost :

From: scleary_at_[hidden]
Date: 2001-09-26 08:32:41

> On pthreads, boost::once_init is defined like this:
> namespace boost
> {
> typedef pthread_once_t once_flag;
> const once_flag once_init = PTHREAD_ONCE_INIT;
> }
> Is it guaranteed that
> boost::once_flag x = boost::once_init;
> is statically initialized?

I had the same question this morning. I don't think so, because
pthread_once_t does not have to be an arithmetic type [POSIX Draft 7 Base
Definitions, line 12984]. It can be a POD, which would make
boost::once_init statically initialized, but ::x dynamically initialized,
from my reading of the C++ Standard. Providing:
would work around this.


Boost list run by bdawes at, gregod at, cpdaniel at, john at