Dear gdb gurus, I found the bug in gdb-5.0. In the routine (symtab.c) find_pc_sect_psymtab, the short-circuit logic can prevent the continued traversal of the ALL_PSYMTABS, causing nested shared objects to be masked by the parent shared object. (The nested shared objects can have their pc as a subrange of the parent shared objects textlow/texthigh range.) I added an extra local variable... register struct partical_symtab *best = NULL; And changed "return (pst);" fallback to... /* Best we've got so far, but it's still unimpressive. */ /* Maybe a more likely match further down the chain. */ best = pst; And changd the final "return (NULL);" to... return (best); Problem solved in 4 days of scrutinizing gdb code. Three line change. *whew* Sincerely, John Love-Jensen Adobe Systems Incorporated PS: SunOS 5.8, gcc 2.95.2, gdb 5.0. _______________________________________________ Bug-gdb mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-gdb