from libs/thread/mutex.cpp in boost 1.31, around line 211: void mutex::do_lock() { int res = 0; res = pthread_mutex_lock(&m_mutex); if (res == EDEADLK) throw lock_error(); assert(res == 0); } that last assert is failing for me. pthread_mutex_lock is returning 22 which if it's from sys/errno.h is EINVAL or "Invalid argument". any ideas? i built boost 1.31 on hpux 11.11 with a gcc from hp. some info:
gcc -v Reading specs from /usr/local/lib/gcc-lib/hppa2.0w-hp-hpux11.11/3.3.3/specs Configured with: /scratch/zack/pkgbuild/3.3.1/hpux-11/gcc-3.3.3/configure --enable-languages=c,c++ --enable-threads=posix --disable-nls --with-gnu-as --without-gnu-ld --with-as=/usr/local/bin/as --prefix=/usr/local Thread model: posix gcc version 3.3.3
uname -a HP-UX unknown B.11.11 U 9000/800 180901557 unlimited-user license
thanks, mike