On 10/19/19 6:38 AM, Bernd Edlinger wrote: > Hmm, > > I noticed that the patch does not yet handle > the step correctly, the count is decremented > although the inline frame is skipped and should not be > counted... > > Thus I will need to change at least this: > > --- a/gdb/infcmd.c > +++ b/gdb/infcmd.c > @@ -1122,7 +1122,6 @@ prepare_one_step (struct step_command_fsm *sm) > set_running (resume_ptid, 1); > > step_into_inline_frame (tp); > - sm->count--; > > sal = find_frame_sal (frame); > sym = get_frame_function (frame); > @@ -1132,13 +1131,17 @@ prepare_one_step (struct step_command_fsm *sm) > > if (sal.line == 0 > || !function_name_is_marked_for_skip (fn, sal)) > - return prepare_one_step (sm); > + { > + sm->count--; > + return prepare_one_step (sm); > + } > } > > Attached is an updated patch that fixes this issue, and also adds the following after step_into_inline_frame (): frame = get_current_frame (); That I consider safer, since this function calls reinit_frame_cache (). It was probably just by chance that this did not seem to cause any problems for me. Thanks Bernd.