diff options
author | Tom Tromey <tom@tromey.com> | 2018-06-14 15:59:55 -0700 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2018-09-17 00:42:18 -0600 |
commit | ee841dd8fee73c355587533027aecc8983bd5478 (patch) | |
tree | fda1bcc80220de90f052a0ea8461fa154cacff2b /gdb/gdbthread.h | |
parent | 117f580a97f721465d62d0630594dafdcd89e4e8 (diff) | |
download | gdb-ee841dd8fee73c355587533027aecc8983bd5478.zip gdb-ee841dd8fee73c355587533027aecc8983bd5478.tar.gz gdb-ee841dd8fee73c355587533027aecc8983bd5478.tar.bz2 |
Use new and delete for struct infcall_control_state
This changes infrun.c to use new and delete for infcall_control_state.
gdb/ChangeLog
2018-09-17 Tom Tromey <tom@tromey.com>
* gdbthread.h (struct thread_control_state): Add initializer.
(class thread_info) <control>: Remove initializer.
* inferior.h (struct inferior_control_state): Add initializer.
(class inferior) <control>: Remove initializer.
(exit_inferior_1): Update.
* infrun.c (struct infcall_control_state): Add constructors.
(save_infcall_control_state): Use new.
(restore_infcall_control_state, discard_infcall_control_state):
Use delete.
Diffstat (limited to 'gdb/gdbthread.h')
-rw-r--r-- | gdb/gdbthread.h | 34 |
1 files changed, 17 insertions, 17 deletions
diff --git a/gdb/gdbthread.h b/gdb/gdbthread.h index 99de5ff..2738e44 100644 --- a/gdb/gdbthread.h +++ b/gdb/gdbthread.h @@ -52,17 +52,17 @@ struct thread_control_state /* User/external stepping state. */ /* Step-resume or longjmp-resume breakpoint. */ - struct breakpoint *step_resume_breakpoint; + struct breakpoint *step_resume_breakpoint = nullptr; /* Exception-resume breakpoint. */ - struct breakpoint *exception_resume_breakpoint; + struct breakpoint *exception_resume_breakpoint = nullptr; /* Breakpoints used for software single stepping. Plural, because it may have multiple locations. E.g., if stepping over a conditional branch instruction we can't decode the condition for, we'll need to put a breakpoint at the branch destination, and another at the instruction after the branch. */ - struct breakpoint *single_step_breakpoints; + struct breakpoint *single_step_breakpoints = nullptr; /* Range to single step within. @@ -74,11 +74,11 @@ struct thread_control_state wait_for_inferior in a minor way if this were changed to the address of the instruction and that address plus one. But maybe not). */ - CORE_ADDR step_range_start; /* Inclusive */ - CORE_ADDR step_range_end; /* Exclusive */ + CORE_ADDR step_range_start = 0; /* Inclusive */ + CORE_ADDR step_range_end = 0; /* Exclusive */ /* Function the thread was in as of last it started stepping. */ - struct symbol *step_start_function; + struct symbol *step_start_function = nullptr; /* If GDB issues a target step request, and this is nonzero, the target should single-step this thread once, and then continue @@ -86,16 +86,16 @@ struct thread_control_state thread stops in the step range above. If this is zero, the target should ignore the step range, and only issue one single step. */ - int may_range_step; + int may_range_step = 0; /* Stack frame address as of when stepping command was issued. This is how we know when we step into a subroutine call, and how to set the frame for the breakpoint used to step out. */ - struct frame_id step_frame_id; + struct frame_id step_frame_id {}; /* Similarly, the frame ID of the underlying stack frame (skipping any inlined frames). */ - struct frame_id step_stack_frame_id; + struct frame_id step_stack_frame_id {}; /* Nonzero if we are presently stepping over a breakpoint. @@ -119,29 +119,29 @@ struct thread_control_state wait_for_inferior, which calls handle_inferior_event in a loop, and until wait_for_inferior exits, this variable is changed only by keep_going. */ - int trap_expected; + int trap_expected = 0; /* Nonzero if the thread is being proceeded for a "finish" command or a similar situation when return value should be printed. */ - int proceed_to_finish; + int proceed_to_finish = 0; /* Nonzero if the thread is being proceeded for an inferior function call. */ - int in_infcall; + int in_infcall = 0; - enum step_over_calls_kind step_over_calls; + enum step_over_calls_kind step_over_calls = STEP_OVER_NONE; /* Nonzero if stopped due to a step command. */ - int stop_step; + int stop_step = 0; /* Chain containing status of breakpoint(s) the thread stopped at. */ - bpstat stop_bpstat; + bpstat stop_bpstat = nullptr; /* Whether the command that started the thread was a stepping command. This is used to decide whether "set scheduler-locking step" behaves like "on" or "off". */ - int stepping_command; + int stepping_command = 0; }; /* Inferior thread specific part of `struct infcall_suspend_state'. */ @@ -296,7 +296,7 @@ public: /* State of GDB control of inferior thread execution. See `struct thread_control_state'. */ - thread_control_state control {}; + thread_control_state control; /* State of inferior thread to restore after GDB is done with an inferior call. See `struct thread_suspend_state'. */ |