skaller <skaller@xxxxxxxxxxxxxxxxxxxxx> writes: > Arggg .. C++ is such a mess.. look at this and spot the bug: > > { > flx_mutex_locker_t (*ehd->spawner_lock); > fprintf(stderr,"Thread %p acquired mutex\n", pthread_self()); > *ehd->spawner_flag=true; > ehd->spawner_cond->broadcast(); > fprintf(stderr,"Thread %p releasing mutex\n", pthread_self()); > } > > This baffled me for 3 days now. The code is legal, it just > doesn't do what I expected. The fix is ONE CHARACTER. I assume the problem is that you didn't name your lock. I think the question is: could g++ issue a warning for this code which would have helped you identify the problem? Ian