Kevin Atkinson wrote: > > On Wed, 19 Feb 2003, Alexander Terekhov wrote: > > > Kevin Atkinson wrote: > > > > > static const pthread_mutex_t MUTEX_INIT = PTHREAD_MUTEX_INITIALIZER; > > > > > > > > class Mutex { > > > > pthread_mutex_t l_; > > > > public: > > > > Mutex() : l_(MUTEX_INIT) {}" > > > > ^^^^^^^^^^^^^^ > > > > > > I believe this behavior is well defined. .... > > ".... > > Only /mutex/ itself may be used for performing synchronization. > > The result of referring to copies of /mutex/ in calls to <snip> > > is undefined." > > > > End of story. > > You ignored the rest of my argument. Neither the right hand side or the > left hand side of the assignment involve a mutex that has ever been used > in any way by any function. It may be technically undefined by the POSIX > standard however I can not see any way that this can do any harm. I > challenge you to find an implementation in which what I did will cause a > problem, or for that matter an hypothetical implementation.
struct pthread_mutex_t_ { /* ... */ #ifdef __cplusplus __copy_ctor(const pthread_mutex_t_&) { throw "Don't do this!"; } #endif }; typedef struct pthread_mutex_t_ pthread_mutex_t; regards, alexander. _______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost