aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-12-18 10:47:22 -0700
committerTom Tromey <tromey@redhat.com>2014-02-19 07:47:27 -0700
commit0db88c1ddcd5524c2839650474b9750018b272f4 (patch)
treeb18147e355824cbbd18fe0d5733fd19032ce962c
parent6a9fa05147d8d42c57efc441641a3e3c2fd96057 (diff)
downloadgdb-0db88c1ddcd5524c2839650474b9750018b272f4.zip
gdb-0db88c1ddcd5524c2839650474b9750018b272f4.tar.gz
gdb-0db88c1ddcd5524c2839650474b9750018b272f4.tar.bz2
convert to_has_exited
2014-02-19 Tom Tromey <tromey@redhat.com> * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default to_has_exited. * target.h (struct target_ops) <to_has_exited>: Use TARGET_DEFAULT_RETURN..
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/target-delegates.c16
-rw-r--r--gdb/target.c5
-rw-r--r--gdb/target.h3
4 files changed, 27 insertions, 5 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 8896259..feb6013 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -2,6 +2,14 @@
* target-delegates.c: Rebuild.
* target.c (update_current_target): Don't inherit or default
+ to_has_exited.
+ * target.h (struct target_ops) <to_has_exited>: Use
+ TARGET_DEFAULT_RETURN..
+
+2014-02-19 Tom Tromey <tromey@redhat.com>
+
+ * target-delegates.c: Rebuild.
+ * target.c (update_current_target): Don't inherit or default
to_set_syscall_catchpoint.
(return_one): Remove.
* target.h (struct target_ops) <to_set_syscall_catchpoint>: Use
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index 7bbc02d..9a6120c 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 f07522d..9c5f756 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 3310501..43b3733 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 *);