[RFA 12/13] Introduce gdb_breakpoint_up

Simon Marchi simon.marchi@polymtl.ca
Fri Nov 3 01:56:00 GMT 2017


On 2017-11-02 18:36, Tom Tromey wrote:
> This introduces gdb_breakpoint_up, a unique_ptr typedef that owns a
> breakpoint.  It then changes set_momentary_breakpoint to return a
> gdb_breakpoint_up and fixes up the fallout.  This then allows the
> removal of make_cleanup_delete_breakpoint.
> 
> Once breakpoints are fully C++-ified, this typedef can be removed in
> favor of a plain std::unique_ptr.
> 
> gdb/ChangeLog
> 2017-11-02  Tom Tromey  <tom@tromey.com>
> 
> 	* breakpoint.c (set_momentary_breakpoint): Return
> 	gdb_breakpoint_up.
> 	(until_break_command): Update.
> 	(new_until_break_fsm): Change argument types to
> 	gdb_breakpoint_up.
> 	(set_momentary_breakpoint_at_pc): Return gdb_breakpoint_up.
> 	(do_delete_breakpoint_cleanup, make_cleanup_delete_breakpoint):
> 	Remove.
> 	* infcmd.c (finish_forward): Update.
> 	* breakpoint.h (set_momentary_breakpoint)
> 	(set_momentary_breakpoint_at_pc): Return gdb_breakpoint_up.
> 	(make_cleanup_delete_breakpoint): Remove.
> 	(struct gdb_breakpoint_deleter): New.
> 	(gdb_breakpoint_up): New typedef.
> 	* infrun.c (insert_step_resume_breakpoint_at_sal_1): Update.
> 	(insert_exception_resume_breakpoint): Update.
> 	(insert_exception_resume_from_probe): Update.
> 	(insert_longjmp_resume_breakpoint): Update.
> 	* arm-linux-tdep.c (arm_linux_copy_svc): Update.
> 	* elfread.c (elf_gnu_ifunc_resolver_stop): Update.
> 	* infcall.c (call_function_by_hand_dummy): Update

Just a tiny nit, why not name the type "breakpoint_up"?  So far the 
convention has been ${type_name}_up.

Otherwise, LGTM.

Simon



More information about the Gdb-patches mailing list