aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2013-12-18 10:52:58 -0700
committerTom Tromey <tromey@redhat.com>2014-02-19 07:47:30 -0700
commitd9cb019581e7934faa292b5f9d0caa62be0ceef0 (patch)
treebb4bc4e036b5d5d321798ecabf5c47ad9fc0d68b
parent830ca33050cbad40e2d57ac9843033048e0160ca (diff)
downloadgdb-d9cb019581e7934faa292b5f9d0caa62be0ceef0.zip
gdb-d9cb019581e7934faa292b5f9d0caa62be0ceef0.tar.gz
gdb-d9cb019581e7934faa292b5f9d0caa62be0ceef0.tar.bz2
convert to_log_command
2014-02-19 Tom Tromey <tromey@redhat.com> * target-delegates.c: Rebuild. * target.c (update_current_target): Don't inherit or default to_log_command. * target.h (struct target_ops) <to_log_command>: Use TARGET_DEFAULT_IGNORE. (target_log_command): Unconditionally delegate.
-rw-r--r--gdb/ChangeLog9
-rw-r--r--gdb/target-delegates.c15
-rw-r--r--gdb/target.c2
-rw-r--r--gdb/target.h11
4 files changed, 29 insertions, 8 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 626ec0c..e3ec9ac 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -2,6 +2,15 @@
* target-delegates.c: Rebuild.
* target.c (update_current_target): Don't inherit or default
+ to_log_command.
+ * target.h (struct target_ops) <to_log_command>: Use
+ TARGET_DEFAULT_IGNORE.
+ (target_log_command): Unconditionally delegate.
+
+2014-02-19 Tom Tromey <tromey@redhat.com>
+
+ * target-delegates.c: Rebuild.
+ * target.c (update_current_target): Don't inherit or default
to_pid_to_exec_file.
* target.h (struct target_ops) <to_pid_to_exec_file>: Use
TARGET_DEFAULT_RETURN.
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index 871e417..600e64e 100644
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -472,6 +472,18 @@ tdefault_pid_to_exec_file (struct target_ops *self, int arg1)
return 0;
}
+static void
+delegate_log_command (struct target_ops *self, const char *arg1)
+{
+ self = self->beneath;
+ self->to_log_command (self, arg1);
+}
+
+static void
+tdefault_log_command (struct target_ops *self, const char *arg1)
+{
+}
+
static int
delegate_can_async_p (struct target_ops *self)
{
@@ -608,6 +620,8 @@ install_delegators (struct target_ops *ops)
ops->to_rcmd = delegate_rcmd;
if (ops->to_pid_to_exec_file == NULL)
ops->to_pid_to_exec_file = delegate_pid_to_exec_file;
+ if (ops->to_log_command == NULL)
+ ops->to_log_command = delegate_log_command;
if (ops->to_can_async_p == NULL)
ops->to_can_async_p = delegate_can_async_p;
if (ops->to_is_async_p == NULL)
@@ -663,6 +677,7 @@ install_dummy_methods (struct target_ops *ops)
ops->to_thread_name = tdefault_thread_name;
ops->to_rcmd = default_rcmd;
ops->to_pid_to_exec_file = tdefault_pid_to_exec_file;
+ ops->to_log_command = tdefault_log_command;
ops->to_can_async_p = find_default_can_async_p;
ops->to_is_async_p = find_default_is_async_p;
ops->to_async = tdefault_async;
diff --git a/gdb/target.c b/gdb/target.c
index a357cba..db6771e 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -650,7 +650,7 @@ update_current_target (void)
/* Do not inherit to_xfer_partial. */
/* Do not inherit to_rcmd. */
/* Do not inherit to_pid_to_exec_file. */
- INHERIT (to_log_command, t);
+ /* Do not inherit to_log_command. */
INHERIT (to_stratum, t);
/* Do not inherit to_has_all_memory. */
/* Do not inherit to_has_memory. */
diff --git a/gdb/target.h b/gdb/target.h
index e4cd63d..a1259c8 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -561,7 +561,8 @@ struct target_ops
TARGET_DEFAULT_FUNC (default_rcmd);
char *(*to_pid_to_exec_file) (struct target_ops *, int pid)
TARGET_DEFAULT_RETURN (0);
- void (*to_log_command) (struct target_ops *, const char *);
+ void (*to_log_command) (struct target_ops *, const char *)
+ TARGET_DEFAULT_IGNORE ();
struct target_section_table *(*to_get_section_table) (struct target_ops *);
enum strata to_stratum;
int (*to_has_all_memory) (struct target_ops *);
@@ -1930,12 +1931,8 @@ extern char *target_fileio_read_stralloc (const char *filename);
/* Command logging facility. */
-#define target_log_command(p) \
- do \
- if (current_target.to_log_command) \
- (*current_target.to_log_command) (&current_target, \
- p); \
- while (0)
+#define target_log_command(p) \
+ (*current_target.to_log_command) (&current_target, p)
extern int target_core_of_thread (ptid_t ptid);