* infrun.c (handle_inferior_event): Remove code that made us
stop when stepping into the last line of the current function.
This commit is contained in:
parent
8bed666aef
commit
1ce9f7f229
2 changed files with 5 additions and 14 deletions
|
@ -1,3 +1,8 @@
|
|||
2007-12-23 Joel Brobecker <brobecker@adacore.com>
|
||||
|
||||
* infrun.c (handle_inferior_event): Remove code that made us
|
||||
stop when stepping into the last line of the current function.
|
||||
|
||||
2007-12-22 Pierre Muller <muller@ics.u-strasbg.fr>
|
||||
|
||||
* win32-nat.c: Fix PR gdb/2388.
|
||||
|
|
14
gdb/infrun.c
14
gdb/infrun.c
|
@ -2702,20 +2702,6 @@ process_event_stop_test:
|
|||
new line in mid-statement, we continue stepping. This makes
|
||||
things like for(;;) statements work better.) */
|
||||
|
||||
if (ecs->stop_func_end && ecs->sal.end >= ecs->stop_func_end)
|
||||
{
|
||||
/* If this is the last line of the function, don't keep stepping
|
||||
(it would probably step us out of the function).
|
||||
This is particularly necessary for a one-line function,
|
||||
in which after skipping the prologue we better stop even though
|
||||
we will be in mid-line. */
|
||||
if (debug_infrun)
|
||||
fprintf_unfiltered (gdb_stdlog, "infrun: stepped to a different function\n");
|
||||
stop_step = 1;
|
||||
print_stop_reason (END_STEPPING_RANGE, 0);
|
||||
stop_stepping (ecs);
|
||||
return;
|
||||
}
|
||||
step_range_start = ecs->sal.pc;
|
||||
step_range_end = ecs->sal.end;
|
||||
step_frame_id = get_frame_id (get_current_frame ());
|
||||
|
|
Loading…
Reference in a new issue