At a breakpoint in this line: 294 instance_locked[instance] += 1; 295 locked_by[instance] = pthread_self(); 296 locked_from[instance] = __builtin_return_address(0);
(gdb) p instance_locked[instance] No symbol "instance" in current context. Fortunately I happen to know that instance == 3, so I type (gdb) p instance_locked[3] Address of "instance_locked" is unknown. Fortunately I know that this is "caused" by gdb not being able to deal with namespaces very well... so I type: (gdb) p 'libcw::debug::_private_::instance_locked'[3] cannot subscript something of type `<data variable, no debug info>' Ah, gdb ALSO doesn't know the type... so lets TELL it the type: (gdb) p ((unsigned int*)&'libcw::debug::_private_::instance_locked')[3] $4 = 1 This isn't the nicest way to debug though. I wish someone would react to my first post here... (with subject: Huge problems with debugging threaded C++ programs) so we can make a start with fixing things like this. -- Carlo Wood <[EMAIL PROTECTED]> _______________________________________________ Bug-gdb mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-gdb