> Um, I'm not sure what is happening. My GNU/Linux amd64 box appears to pass both times: I've found the right machine (YelloDog 3.0), the attached appears to work on both yellow dog and IRIX (and Fedora Core). The new patch modifies find_pc_partial_function supply the PC's section when available. Look ok? The problem was that the symbol lookup was finding a symbol from a previous section, instead of no symbol in the current section. That leads to this test (using Joe's rewrite): > + if (ecs->stop_func_name == NULL > + && step_over_calls == STEP_OVER_UNDEBUGGABLE) > + { > + /* We couldn't determine where we stopped, so we just stepped > + inside undebuggable code. Since we want to step over this > + kind of code, we keep going until the inferior returns from > + the current function. */ > + handle_step_into_function (ecs); > + return; > + } not triggering. ->stop_func_name had a non-NULL but bogus symbol name. ok? Andrew PS: I think GDB has a few too many symbol lookup interfaces :-(