diff options
Diffstat (limited to 'gdb/infcmd.c')
-rw-r--r-- | gdb/infcmd.c | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/gdb/infcmd.c b/gdb/infcmd.c index 84bc920..06439d0 100644 --- a/gdb/infcmd.c +++ b/gdb/infcmd.c @@ -576,27 +576,27 @@ static void step_1_continuation (arg) struct continuation_arg *arg; { - int count; - int skip_subroutines; - int single_inst; - - skip_subroutines = (int) arg->data; - single_inst = (int) (arg->next)->data; - count = (int) ((arg->next)->next)->data; - - if (stop_step) - { - /* FIXME: On nexti, this may have already been done (when we hit the - step resume break, I think). Probably this should be moved to - wait_for_inferior (near the top). */ + int count; + int skip_subroutines; + int single_inst; + + skip_subroutines = arg->data.integer; + single_inst = arg->next->data.integer; + count = arg->next->next->data.integer; + + if (stop_step) + { + /* FIXME: On nexti, this may have already been done (when we hit the + step resume break, I think). Probably this should be moved to + wait_for_inferior (near the top). */ #if defined (SHIFT_INST_REGS) - SHIFT_INST_REGS (); + SHIFT_INST_REGS (); #endif - step_once (skip_subroutines, single_inst, count - 1); - } - else - if (!single_inst || skip_subroutines) - do_exec_cleanups (ALL_CLEANUPS); + step_once (skip_subroutines, single_inst, count - 1); + } + else + if (!single_inst || skip_subroutines) + do_exec_cleanups (ALL_CLEANUPS); } /* Do just one step operation. If count >1 we will have to set up a @@ -662,11 +662,11 @@ which has no line number information.\n", name); arg3 = (struct continuation_arg *) xmalloc (sizeof (struct continuation_arg)); arg1->next = arg2; - arg1->data = (PTR) skip_subroutines; + arg1->data.integer = skip_subroutines; arg2->next = arg3; - arg2->data = (PTR) single_inst; + arg2->data.integer = single_inst; arg3->next = NULL; - arg3->data = (PTR) count; + arg3->data.integer = count; add_intermediate_continuation (step_1_continuation, arg1); proceed ((CORE_ADDR) -1, TARGET_SIGNAL_DEFAULT, 1); } @@ -1108,9 +1108,9 @@ finish_command_continuation (arg) struct breakpoint *breakpoint; struct cleanup *cleanups; - breakpoint = (struct breakpoint *) arg->data; - function = (struct symbol *) (arg->next)->data; - cleanups = (struct cleanup *) (arg->next->next)->data; + breakpoint = (struct breakpoint *) arg->data.pointer; + function = (struct symbol *) arg->next->data.pointer; + cleanups = (struct cleanup *) arg->next->next->data.pointer; if (bpstat_find_breakpoint (stop_bpstat, breakpoint) != NULL && function != 0) @@ -1225,9 +1225,9 @@ finish_command (arg, from_tty) arg1->next = arg2; arg2->next = arg3; arg3->next = NULL; - arg1->data = (PTR) breakpoint; - arg2->data = (PTR) function; - arg3->data = (PTR) old_chain; + arg1->data.pointer = breakpoint; + arg2->data.pointer = function; + arg3->data.pointer = old_chain; add_continuation (finish_command_continuation, arg1); } |