Change install_breakpoint to take a std::unique_ptr
authorTom Tromey <tom@tromey.com>
Sun, 20 Aug 2017 04:26:20 +0000 (22:26 -0600)
committerTom Tromey <tom@tromey.com>
Tue, 22 Aug 2017 15:38:07 +0000 (09:38 -0600)
commitb270e6f9e09814c82e198859f218b37118eaf098
tree1f123a9b425950be050f19ce29eedd9916832d58
parent36bd8eaaa0afe3ff8e8b1b1b9edc9686f5c159e6
Change install_breakpoint to take a std::unique_ptr

This changes install_breakpoint to take a std::unique_ptr rvalue-ref
argument.  This makes it clear that install_breakpoint takes ownership
of the pointer, and prevents bugs like the one fixed by the previous
patch.

ChangeLog
2017-08-22  Tom Tromey  <tom@tromey.com>

* breakpoint.h (install_breakpoint): Update.
* breakpoint.c (add_solib_catchpoint): Update.
(install_breakpoint): Change argument to a std::unique_ptr.
(create_fork_vfork_event_catchpoint): Use std::unique_ptr.
(create_breakpoint_sal, create_breakpoint): Update.
(watch_command_1, catch_exec_command_1)
(strace_marker_create_breakpoints_sal): Use std::unique_ptr.
(add_to_breakpoint_chain): Change argument to a std::unique_ptr.
Return the breakpoint.
(set_raw_breakpoint_without_location, set_raw_breakpoint)
(new_single_step_breakpoint): Update.
* break-catch-throw.c (handle_gnu_v3_exceptions): Use
std::unique_ptr.
* break-catch-syscall.c (create_syscall_event_catchpoint): Use
std::unique_ptr.
* break-catch-sig.c (create_signal_catchpoint): Use
std::unique_ptr.
* ada-lang.c (create_ada_exception_catchpoint): Use
std::unique_ptr.
gdb/ChangeLog
gdb/ada-lang.c
gdb/break-catch-sig.c
gdb/break-catch-syscall.c
gdb/break-catch-throw.c
gdb/breakpoint.c
gdb/breakpoint.h