From 0db88c1ddcd5524c2839650474b9750018b272f4 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Wed, 18 Dec 2013 10:47:22 -0700 Subject: [PATCH] convert to_has_exited 2014-02-19 Tom Tromey * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default to_has_exited. * target.h (struct target_ops) : Use TARGET_DEFAULT_RETURN.. --- gdb/ChangeLog | 8 ++++++++ gdb/target-delegates.c | 16 ++++++++++++++++ gdb/target.c | 5 +---- gdb/target.h | 3 ++- 4 files changed, 27 insertions(+), 5 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8896259c056..feb60138074 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,11 @@ +2014-02-19 Tom Tromey + + * target-delegates.c: Rebuild. + * target.c (update_current_target): Don't inherit or default + to_has_exited. + * target.h (struct target_ops) : Use + TARGET_DEFAULT_RETURN.. + 2014-02-19 Tom Tromey * target-delegates.c: Rebuild. diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c index 7bbc02d1546..9a6120c13b1 100644 --- a/gdb/target-delegates.c +++ b/gdb/target-delegates.c @@ -413,6 +413,19 @@ tdefault_set_syscall_catchpoint (struct target_ops *self, int arg1, int arg2, in return 1; } +static int +delegate_has_exited (struct target_ops *self, int arg1, int arg2, int *arg3) +{ + self = self->beneath; + return self->to_has_exited (self, arg1, arg2, arg3); +} + +static int +tdefault_has_exited (struct target_ops *self, int arg1, int arg2, int *arg3) +{ + return 0; +} + static void delegate_rcmd (struct target_ops *self, char *arg1, struct ui_file *arg2) { @@ -546,6 +559,8 @@ install_delegators (struct target_ops *ops) ops->to_remove_exec_catchpoint = delegate_remove_exec_catchpoint; if (ops->to_set_syscall_catchpoint == NULL) ops->to_set_syscall_catchpoint = delegate_set_syscall_catchpoint; + if (ops->to_has_exited == NULL) + ops->to_has_exited = delegate_has_exited; if (ops->to_rcmd == NULL) ops->to_rcmd = delegate_rcmd; if (ops->to_can_async_p == NULL) @@ -598,6 +613,7 @@ install_dummy_methods (struct target_ops *ops) ops->to_insert_exec_catchpoint = tdefault_insert_exec_catchpoint; ops->to_remove_exec_catchpoint = tdefault_remove_exec_catchpoint; ops->to_set_syscall_catchpoint = tdefault_set_syscall_catchpoint; + ops->to_has_exited = tdefault_has_exited; ops->to_rcmd = default_rcmd; ops->to_can_async_p = find_default_can_async_p; ops->to_is_async_p = find_default_is_async_p; diff --git a/gdb/target.c b/gdb/target.c index f07522d619a..9c5f756d9fe 100644 --- a/gdb/target.c +++ b/gdb/target.c @@ -636,7 +636,7 @@ update_current_target (void) /* Do not inherit to_insert_exec_catchpoint. */ /* Do not inherit to_remove_exec_catchpoint. */ /* Do not inherit to_set_syscall_catchpoint. */ - INHERIT (to_has_exited, t); + /* Do not inherit to_has_exited. */ /* Do not inherit to_mourn_inferior. */ INHERIT (to_can_run, t); /* Do not inherit to_pass_signals. */ @@ -732,9 +732,6 @@ update_current_target (void) (int (*) (CORE_ADDR, gdb_byte *, int, int, struct mem_attrib *, struct target_ops *)) nomemory); - de_fault (to_has_exited, - (int (*) (struct target_ops *, int, int, int *)) - return_zero); de_fault (to_can_run, (int (*) (struct target_ops *)) return_zero); diff --git a/gdb/target.h b/gdb/target.h index 331050108ed..43b3733649f 100644 --- a/gdb/target.h +++ b/gdb/target.h @@ -535,7 +535,8 @@ struct target_ops int (*to_set_syscall_catchpoint) (struct target_ops *, int, int, int, int, int *) TARGET_DEFAULT_RETURN (1); - int (*to_has_exited) (struct target_ops *, int, int, int *); + int (*to_has_exited) (struct target_ops *, int, int, int *) + TARGET_DEFAULT_RETURN (0); void (*to_mourn_inferior) (struct target_ops *); int (*to_can_run) (struct target_ops *); -- 2.30.2