+2014-02-19 Tom Tromey <tromey@redhat.com>
+
+ * target-delegates.c: Rebuild.
+ * target.c (update_current_target): Don't inherit or default
+ to_trace_init.
+ * target.h (struct target_ops) <to_trace_init>: Use
+ TARGET_DEFAULT_RETURN.
+
2014-02-19 Tom Tromey <tromey@redhat.com>
* target-delegates.c: Rebuild.
return self->to_thread_architecture (self, arg1);
}
+static void
+delegate_trace_init (struct target_ops *self)
+{
+ self = self->beneath;
+ self->to_trace_init (self);
+}
+
+static void
+tdefault_trace_init (struct target_ops *self)
+{
+ tcomplain ();
+}
+
static int
delegate_supports_btrace (struct target_ops *self)
{
ops->to_supports_string_tracing = delegate_supports_string_tracing;
if (ops->to_thread_architecture == NULL)
ops->to_thread_architecture = delegate_thread_architecture;
+ if (ops->to_trace_init == NULL)
+ ops->to_trace_init = delegate_trace_init;
if (ops->to_supports_btrace == NULL)
ops->to_supports_btrace = delegate_supports_btrace;
}
ops->to_supports_enable_disable_tracepoint = tdefault_supports_enable_disable_tracepoint;
ops->to_supports_string_tracing = tdefault_supports_string_tracing;
ops->to_thread_architecture = default_thread_architecture;
+ ops->to_trace_init = tdefault_trace_init;
ops->to_supports_btrace = tdefault_supports_btrace;
}
/* Do not inherit to_supports_multi_process. */
/* Do not inherit to_supports_enable_disable_tracepoint. */
/* Do not inherit to_supports_string_tracing. */
- INHERIT (to_trace_init, t);
+ /* Do not inherit to_trace_init. */
INHERIT (to_download_tracepoint, t);
INHERIT (to_can_download_tracepoint, t);
INHERIT (to_download_trace_state_variable, t);
(void (*) (struct target_ops *, ptid_t))
target_ignore);
current_target.to_read_description = NULL;
- de_fault (to_trace_init,
- (void (*) (struct target_ops *))
- tcomplain);
de_fault (to_download_tracepoint,
(void (*) (struct target_ops *, struct bp_location *))
tcomplain);
/* Tracepoint-related operations. */
/* Prepare the target for a tracing run. */
- void (*to_trace_init) (struct target_ops *);
+ void (*to_trace_init) (struct target_ops *)
+ TARGET_DEFAULT_NORETURN (tcomplain ());
/* Send full details of a tracepoint location to the target. */
void (*to_download_tracepoint) (struct target_ops *,