Run a few more binutils tests non-native
[deliverable/binutils-gdb.git] / gdb / break-catch-syscall.c
index a8312f2542beca3a70956836aef5c3b40a7991ee..2fb5e6157bd24fcc6d34cb620ad104c4e717adf4 100644 (file)
@@ -1,6 +1,6 @@
 /* Everything about syscall catchpoints, for GDB.
 
-   Copyright (C) 2009-2017 Free Software Foundation, Inc.
+   Copyright (C) 2009-2018 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -27,7 +27,7 @@
 #include "mi/mi-common.h"
 #include "valprint.h"
 #include "arch-utils.h"
-#include "observer.h"
+#include "observable.h"
 #include "xml-syscall.h"
 
 /* An instance of this type is used to represent a syscall catchpoint.
@@ -113,8 +113,7 @@ insert_catch_syscall (struct bp_location *bl)
   return target_set_syscall_catchpoint (ptid_get_pid (inferior_ptid),
                                        inf_data->total_syscalls_count != 0,
                                        inf_data->any_syscall_count,
-                                       inf_data->syscalls_counts.size (),
-                                       inf_data->syscalls_counts.data ());
+                                       inf_data->syscalls_counts);
 }
 
 /* Implement the "remove" breakpoint_ops method for syscall
@@ -145,8 +144,7 @@ remove_catch_syscall (struct bp_location *bl, enum remove_bp_reason reason)
   return target_set_syscall_catchpoint (ptid_get_pid (inferior_ptid),
                                        inf_data->total_syscalls_count != 0,
                                        inf_data->any_syscall_count,
-                                       inf_data->syscalls_counts.size (),
-                                       inf_data->syscalls_counts.data ());
+                                       inf_data->syscalls_counts);
 }
 
 /* Implement the "breakpoint_hit" breakpoint_ops method for syscall
@@ -559,7 +557,6 @@ catch_syscall_completer (struct cmd_list_element *cmd,
   struct gdbarch *gdbarch = get_current_arch ();
   gdb::unique_xmalloc_ptr<const char *> group_list;
   const char *prefix;
-  int i;
 
   /* Completion considers ':' to be a word separator, so we use this to
      verify whether the previous word was a group prefix.  If so, we
@@ -587,14 +584,11 @@ catch_syscall_completer (struct cmd_list_element *cmd,
       std::vector<std::string> holders;
 
       /* Append "group:" prefix to syscall groups.  */
-      for (i = 0; group_ptr[i] != NULL; i++)
-       {
-         std::string prefixed_group = string_printf ("group:%s",
-                                                     group_ptr[i]);
+      for (int i = 0; group_ptr[i] != NULL; i++)
+       holders.push_back (string_printf ("group:%s", group_ptr[i]));
 
-         group_ptr[i] = prefixed_group.c_str ();
-         holders.push_back (std::move (prefixed_group));
-       }
+      for (int i = 0; group_ptr[i] != NULL; i++)
+       group_ptr[i] = holders[i].c_str ();
 
       if (syscall_list != NULL)
        complete_on_enum (tracker, syscall_list.get (), word, word);
@@ -638,7 +632,7 @@ _initialize_break_catch_syscall (void)
 {
   initialize_syscall_catchpoint_ops ();
 
-  observer_attach_inferior_exit (clear_syscall_counts);
+  gdb::observers::inferior_exit.attach (clear_syscall_counts);
   catch_syscall_inferior_data
     = register_inferior_data_with_cleanup (NULL,
                                           catch_syscall_inferior_data_cleanup);
This page took 0.024075 seconds and 4 git commands to generate.