convert to_terminal_ours_for_output
[deliverable/binutils-gdb.git] / gdb / target.c
index 5bab9cf00f786c422e7e80605cacd1a1c8e6139e..d3d40853843f77e94fb80839a8ab48f020e86a22 100644 (file)
@@ -55,6 +55,8 @@ static int default_watchpoint_addr_within_range (struct target_ops *,
 static int default_region_ok_for_hw_watchpoint (struct target_ops *,
                                                CORE_ADDR, int);
 
+static void default_rcmd (struct target_ops *, char *, struct ui_file *);
+
 static void tcomplain (void) ATTRIBUTE_NORETURN;
 
 static int nomemory (CORE_ADDR, char *, int, int, struct target_ops *);
@@ -589,7 +591,7 @@ update_current_target (void)
       /* Do not inherit to_open.  */
       /* Do not inherit to_close.  */
       /* Do not inherit to_attach.  */
-      INHERIT (to_post_attach, t);
+      /* Do not inherit to_post_attach.  */
       INHERIT (to_attach_no_wait, t);
       /* Do not inherit to_detach.  */
       /* Do not inherit to_disconnect.  */
@@ -597,30 +599,30 @@ update_current_target (void)
       /* Do not inherit to_wait.  */
       /* Do not inherit to_fetch_registers.  */
       /* Do not inherit to_store_registers.  */
-      INHERIT (to_prepare_to_store, t);
+      /* Do not inherit to_prepare_to_store.  */
       INHERIT (deprecated_xfer_memory, t);
-      INHERIT (to_files_info, t);
+      /* Do not inherit to_files_info.  */
       /* Do not inherit to_insert_breakpoint.  */
       /* Do not inherit to_remove_breakpoint.  */
-      INHERIT (to_can_use_hw_breakpoint, t);
-      INHERIT (to_insert_hw_breakpoint, t);
-      INHERIT (to_remove_hw_breakpoint, t);
+      /* Do not inherit to_can_use_hw_breakpoint.  */
+      /* Do not inherit to_insert_hw_breakpoint.  */
+      /* Do not inherit to_remove_hw_breakpoint.  */
       /* Do not inherit to_ranged_break_num_registers.  */
-      INHERIT (to_insert_watchpoint, t);
-      INHERIT (to_remove_watchpoint, t);
+      /* Do not inherit to_insert_watchpoint.  */
+      /* Do not inherit to_remove_watchpoint.  */
       /* Do not inherit to_insert_mask_watchpoint.  */
       /* Do not inherit to_remove_mask_watchpoint.  */
       /* Do not inherit to_stopped_data_address.  */
       INHERIT (to_have_steppable_watchpoint, t);
       INHERIT (to_have_continuable_watchpoint, t);
       /* Do not inherit to_stopped_by_watchpoint.  */
-      INHERIT (to_watchpoint_addr_within_range, t);
-      INHERIT (to_region_ok_for_hw_watchpoint, t);
-      INHERIT (to_can_accel_watchpoint_condition, t);
+      /* Do not inherit to_watchpoint_addr_within_range.  */
+      /* Do not inherit to_region_ok_for_hw_watchpoint.  */
+      /* Do not inherit to_can_accel_watchpoint_condition.  */
       /* Do not inherit to_masked_watch_num_registers.  */
-      INHERIT (to_terminal_init, t);
-      INHERIT (to_terminal_inferior, t);
-      INHERIT (to_terminal_ours_for_output, t);
+      /* Do not inherit to_terminal_init.  */
+      /* Do not inherit to_terminal_inferior.  */
+      /* Do not inherit to_terminal_ours_for_output.  */
       INHERIT (to_terminal_ours, t);
       INHERIT (to_terminal_save_ours, t);
       INHERIT (to_terminal_info, t);
@@ -648,7 +650,7 @@ update_current_target (void)
       INHERIT (to_thread_name, t);
       INHERIT (to_stop, t);
       /* Do not inherit to_xfer_partial.  */
-      INHERIT (to_rcmd, t);
+      /* Do not inherit to_rcmd.  */
       INHERIT (to_pid_to_exec_file, t);
       INHERIT (to_log_command, t);
       INHERIT (to_stratum, t);
@@ -728,55 +730,10 @@ update_current_target (void)
   de_fault (to_close,
            (void (*) (struct target_ops *))
            target_ignore);
-  de_fault (to_post_attach,
-           (void (*) (struct target_ops *, int))
-           target_ignore);
-  de_fault (to_prepare_to_store,
-           (void (*) (struct target_ops *, struct regcache *))
-           noprocess);
   de_fault (deprecated_xfer_memory,
            (int (*) (CORE_ADDR, gdb_byte *, int, int,
                      struct mem_attrib *, struct target_ops *))
            nomemory);
-  de_fault (to_files_info,
-           (void (*) (struct target_ops *))
-           target_ignore);
-  de_fault (to_can_use_hw_breakpoint,
-           (int (*) (struct target_ops *, int, int, int))
-           return_zero);
-  de_fault (to_insert_hw_breakpoint,
-           (int (*) (struct target_ops *, struct gdbarch *,
-                     struct bp_target_info *))
-           return_minus_one);
-  de_fault (to_remove_hw_breakpoint,
-           (int (*) (struct target_ops *, struct gdbarch *,
-                     struct bp_target_info *))
-           return_minus_one);
-  de_fault (to_insert_watchpoint,
-           (int (*) (struct target_ops *, CORE_ADDR, int, int,
-                     struct expression *))
-           return_minus_one);
-  de_fault (to_remove_watchpoint,
-           (int (*) (struct target_ops *, CORE_ADDR, int, int,
-                     struct expression *))
-           return_minus_one);
-  de_fault (to_watchpoint_addr_within_range,
-           default_watchpoint_addr_within_range);
-  de_fault (to_region_ok_for_hw_watchpoint,
-           default_region_ok_for_hw_watchpoint);
-  de_fault (to_can_accel_watchpoint_condition,
-            (int (*) (struct target_ops *, CORE_ADDR, int, int,
-                     struct expression *))
-            return_zero);
-  de_fault (to_terminal_init,
-           (void (*) (struct target_ops *))
-           target_ignore);
-  de_fault (to_terminal_inferior,
-           (void (*) (struct target_ops *))
-           target_ignore);
-  de_fault (to_terminal_ours_for_output,
-           (void (*) (struct target_ops *))
-           target_ignore);
   de_fault (to_terminal_ours,
            (void (*) (struct target_ops *))
            target_ignore);
@@ -827,9 +784,6 @@ update_current_target (void)
   de_fault (to_stop,
            (void (*) (struct target_ops *, ptid_t))
            target_ignore);
-  de_fault (to_rcmd,
-           (void (*) (struct target_ops *, char *, struct ui_file *))
-           tcomplain);
   de_fault (to_pid_to_exec_file,
            (char *(*) (struct target_ops *, int))
            return_null);
@@ -3806,7 +3760,6 @@ init_dummy_target (void)
   dummy_target.to_shortname = "None";
   dummy_target.to_longname = "None";
   dummy_target.to_doc = "";
-  dummy_target.to_attach = find_default_attach;
   dummy_target.to_create_inferior = find_default_create_inferior;
   dummy_target.to_supports_non_stop = find_default_supports_non_stop;
   dummy_target.to_supports_disable_randomization
@@ -3853,22 +3806,10 @@ target_close (struct target_ops *targ)
 void
 target_attach (char *args, int from_tty)
 {
-  struct target_ops *t;
-
-  for (t = current_target.beneath; t != NULL; t = t->beneath)
-    {
-      if (t->to_attach != NULL)        
-       {
-         t->to_attach (t, args, from_tty);
-         if (targetdebug)
-           fprintf_unfiltered (gdb_stdlog, "target_attach (%s, %d)\n",
-                               args, from_tty);
-         return;
-       }
-    }
-
-  internal_error (__FILE__, __LINE__,
-                 _("could not find a target to attach"));
+  current_target.to_attach (&current_target, args, from_tty);
+  if (targetdebug)
+    fprintf_unfiltered (gdb_stdlog, "target_attach (%s, %d)\n",
+                       args, from_tty);
 }
 
 int
@@ -5066,17 +5007,16 @@ static char targ_desc[] =
 stack of targets currently in use (including the exec-file,\n\
 core-file, and process, if any), as well as the symbol file name.";
 
+static void
+default_rcmd (struct target_ops *self, char *command, struct ui_file *output)
+{
+  error (_("\"monitor\" command not supported by this target."));
+}
+
 static void
 do_monitor_command (char *cmd,
                 int from_tty)
 {
-  if ((current_target.to_rcmd
-       == (void (*) (struct target_ops *, char *, struct ui_file *)) tcomplain)
-      || (current_target.to_rcmd == debug_to_rcmd
-         && (debug_target.to_rcmd
-             == (void (*) (struct target_ops *,
-                           char *, struct ui_file *)) tcomplain)))
-    error (_("\"monitor\" command not supported by this target."));
   target_rcmd (cmd, gdb_stdtarg);
 }
 
This page took 0.027961 seconds and 4 git commands to generate.