constify to_attach
authorTom Tromey <tromey@redhat.com>
Mon, 15 Apr 2013 15:40:57 +0000 (09:40 -0600)
committerTom Tromey <tromey@redhat.com>
Wed, 4 Jun 2014 17:11:43 +0000 (11:11 -0600)
This constifies the "args" argument to the target_ops to_attach
method.

I updated all instances of the method.  I could not compile all of
them but I hand-inspected them.  In all cases either the argument is
ignored, or it is passed to parse_pid_to_attach.  (linux-nat does some
extra stuff, but that one I built...)

If you want to try it on your host of choice, please do so.

The code in parse_pid_to_attach seems a little bogus to me.  If there
is a platform with a broken strtoul, we have better methods for fixing
the issue now.  However, I left the code as is since it is clearly ok
to do so.

Built and regtested on x86-64 Fedora 20.

2014-06-04  Tom Tromey  <tromey@redhat.com>

* procfs.c (procfs_attach): Make "args" const.
* windows-nat.c (windows_attach): Make "args" const.
* nto-procfs.c (procfs_attach): Make "args" const.
* inf-ttrace.c (inf_ttrace_attach): Make "args" const.
* go32-nat.c (go32_attach): Make "args" const.
* gnu-nat.c (gnu_attach): Make "args" const.
* darwin-nat.c (darwin_attach): Make "args" const.
* inf-ptrace.c (inf_ptrace_attach): Make "args" const.
* linux-nat.c (linux_nat_attach): Make "args" const.
* remote.c (extended_remote_attach_1, extended_remote_attach):
Make "args" const.
* target.h (struct target_ops) <to_attach>: Make "args" const.
(find_default_attach): Likewise.
* utils.c (parse_pid_to_attach): Make "args" const.
* utils.h (parse_pid_to_attach): Update.

14 files changed:
gdb/ChangeLog
gdb/darwin-nat.c
gdb/gnu-nat.c
gdb/go32-nat.c
gdb/inf-ptrace.c
gdb/inf-ttrace.c
gdb/linux-nat.c
gdb/nto-procfs.c
gdb/procfs.c
gdb/remote.c
gdb/target.h
gdb/utils.c
gdb/utils.h
gdb/windows-nat.c

index 8698393c808bf235b9c14528fd134f709f5e65f4..8e48f1f2c233febde36f87feea0e6f87629acaaf 100644 (file)
@@ -1,3 +1,21 @@
+2014-06-04  Tom Tromey  <tromey@redhat.com>
+
+       * procfs.c (procfs_attach): Make "args" const.
+       * windows-nat.c (windows_attach): Make "args" const.
+       * nto-procfs.c (procfs_attach): Make "args" const.
+       * inf-ttrace.c (inf_ttrace_attach): Make "args" const.
+       * go32-nat.c (go32_attach): Make "args" const.
+       * gnu-nat.c (gnu_attach): Make "args" const.
+       * darwin-nat.c (darwin_attach): Make "args" const.
+       * inf-ptrace.c (inf_ptrace_attach): Make "args" const.
+       * linux-nat.c (linux_nat_attach): Make "args" const.
+       * remote.c (extended_remote_attach_1, extended_remote_attach):
+       Make "args" const.
+       * target.h (struct target_ops) <to_attach>: Make "args" const.
+       (find_default_attach): Likewise.
+       * utils.c (parse_pid_to_attach): Make "args" const.
+       * utils.h (parse_pid_to_attach): Update.
+
 2014-06-04  Tom Tromey  <tromey@redhat.com>
 
        * target-delegates.c: Rebuild.
index 160329b89ea09f1bbf1eb49a25ba12111d93ebaf..57142889ac24c6d8a2d68ac320b201f4848aca0d 100644 (file)
@@ -1672,7 +1672,7 @@ darwin_setup_fake_stop_event (struct inferior *inf)
 /* Attach to process PID, then initialize for debugging it
    and wait for the trace-trap that results from attaching.  */
 static void
-darwin_attach (struct target_ops *ops, char *args, int from_tty)
+darwin_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   pid_t pid;
   pid_t pid2;
index 516e83d96a71db189cfcc9a5c64fe2d914dd57fe..176f4a1fcc3863991122d9dd04549354e1d86f53 100644 (file)
@@ -2165,7 +2165,7 @@ gnu_create_inferior (struct target_ops *ops,
 /* Attach to process PID, then initialize for debugging it
    and wait for the trace-trap that results from attaching.  */
 static void
-gnu_attach (struct target_ops *ops, char *args, int from_tty)
+gnu_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   int pid;
   char *exec_file;
index d614911a6a2fb5983a94ee55cce05d0425f64879..89157d3f44cb8b7b4be9560be1346d65260c7056 100644 (file)
@@ -340,7 +340,7 @@ static struct {
 };
 
 static void
-go32_attach (struct target_ops *ops, char *args, int from_tty)
+go32_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   error (_("\
 You cannot attach to a running program on this platform.\n\
index 4736fbd816969f81792cb5790564b3b083f143ce..e1d64f8cd7eec08e7e88a40bd2535acc0076ab91 100644 (file)
@@ -181,7 +181,7 @@ inf_ptrace_mourn_inferior (struct target_ops *ops)
    be chatty about it.  */
 
 static void
-inf_ptrace_attach (struct target_ops *ops, char *args, int from_tty)
+inf_ptrace_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   char *exec_file;
   pid_t pid;
index ee555159bf3c5d7ec56626ba2d50835b76c8a7ed..a7c3481daf75e6aeddb2bb8bfc318f450a768995 100644 (file)
@@ -747,7 +747,7 @@ inf_ttrace_create_threads_after_attach (int pid)
 }
 
 static void
-inf_ttrace_attach (struct target_ops *ops, char *args, int from_tty)
+inf_ttrace_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   char *exec_file;
   pid_t pid;
index 3f6e5ea73195c9c96635cc974e17f298cc8f2de9..6ca5c7e3fe8cebe91b12f78321cd25b7c3d15ee0 100644 (file)
@@ -1301,7 +1301,7 @@ linux_nat_create_inferior (struct target_ops *ops,
 }
 
 static void
-linux_nat_attach (struct target_ops *ops, char *args, int from_tty)
+linux_nat_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   struct lwp_info *lp;
   int status;
index 2ce956385dcb5e5ec74f0d285ab90a34e4d75c80..728d6f3a76d9f0b8e81b58ad63749a9a383f8839 100644 (file)
@@ -602,7 +602,7 @@ procfs_files_info (struct target_ops *ignore)
 
 /* Attach to process PID, then initialize for debugging it.  */
 static void
-procfs_attach (struct target_ops *ops, char *args, int from_tty)
+procfs_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   char *exec_file;
   int pid;
index cd3301af92e0979ef6eb700ec1507fa5962b0778..6a2aef88a12810f6e7dc4cafad13b5d1a6f10351 100644 (file)
 
 /* This module defines the GDB target vector and its methods.  */
 
-static void procfs_attach (struct target_ops *, char *, int);
+static void procfs_attach (struct target_ops *, const char *, int);
 static void procfs_detach (struct target_ops *, const char *, int);
 static void procfs_resume (struct target_ops *,
                           ptid_t, int, enum gdb_signal);
@@ -3039,7 +3039,7 @@ procfs_debug_inferior (procinfo *pi)
 }
 
 static void
-procfs_attach (struct target_ops *ops, char *args, int from_tty)
+procfs_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   char *exec_file;
   int   pid;
index 6774d84d50e7e8aa5389b3813f16524449f1ab34..8f9478cc547184a7cf19493c68320f7075380bb6 100644 (file)
@@ -4365,7 +4365,8 @@ remote_disconnect (struct target_ops *target, char *args, int from_tty)
    be chatty about it.  */
 
 static void
-extended_remote_attach_1 (struct target_ops *target, char *args, int from_tty)
+extended_remote_attach_1 (struct target_ops *target, const char *args,
+                         int from_tty)
 {
   struct remote_state *rs = get_remote_state ();
   int pid;
@@ -4478,7 +4479,7 @@ extended_remote_attach_1 (struct target_ops *target, char *args, int from_tty)
 }
 
 static void
-extended_remote_attach (struct target_ops *ops, char *args, int from_tty)
+extended_remote_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   extended_remote_attach_1 (ops, args, from_tty);
 }
index b0b9e89eda2229b480de9be81c705645af83010b..cd5a79962d468b16fbfb2c0e647558aa7f30031a 100644 (file)
@@ -409,7 +409,7 @@ struct target_ops
        for normal operations, and should be ready to deliver the
        status of the process immediately (without waiting) to an
        upcoming target_wait call.  */
-    void (*to_attach) (struct target_ops *ops, char *, int);
+    void (*to_attach) (struct target_ops *ops, const char *, int);
     void (*to_post_attach) (struct target_ops *, int)
       TARGET_DEFAULT_IGNORE ();
     void (*to_detach) (struct target_ops *ops, const char *, int)
@@ -2140,7 +2140,7 @@ extern void noprocess (void) ATTRIBUTE_NORETURN;
 
 extern void target_require_runnable (void);
 
-extern void find_default_attach (struct target_ops *, char *, int);
+extern void find_default_attach (struct target_ops *, const char *, int);
 
 extern void find_default_create_inferior (struct target_ops *,
                                          char *, char *, char **, int);
index 86df1c7f6a4db6366e644ed667894866b71d0cb9..6e8f3849bf16d73b0d0162429e44e36b70955790 100644 (file)
@@ -3255,7 +3255,7 @@ gdb_bfd_errmsg (bfd_error_type error_tag, char **matching)
 /* Return ARGS parsed as a valid pid, or throw an error.  */
 
 int
-parse_pid_to_attach (char *args)
+parse_pid_to_attach (const char *args)
 {
   unsigned long pid;
   char *dummy;
@@ -3263,7 +3263,7 @@ parse_pid_to_attach (char *args)
   if (!args)
     error_no_arg (_("process-id to attach"));
 
-  dummy = args;
+  dummy = (char *) args;
   pid = strtoul (args, &dummy, 0);
   /* Some targets don't set errno on errors, grrr!  */
   if ((pid == 0 && dummy == args) || dummy != &args[strlen (args)])
index 33371acbbeb829eacabfae5cb03326f9fc1ee739..0eba8aeb11439fe55e7f724204c20c0ac7f6bc74 100644 (file)
@@ -63,7 +63,7 @@ struct timeval get_prompt_for_continue_wait_time (void);
 \f
 /* Parsing utilites.  */
 
-extern int parse_pid_to_attach (char *args);
+extern int parse_pid_to_attach (const char *args);
 
 extern int parse_escape (struct gdbarch *, const char **);
 
index 16f4efb65770f9f1a91c64671b57c488f15deab6..e912fa465bbbd6c68463c51fb0ad9d2b36537e2c 100644 (file)
@@ -1834,7 +1834,7 @@ out:
 
 /* Attach to process PID, then initialize for debugging it.  */
 static void
-windows_attach (struct target_ops *ops, char *args, int from_tty)
+windows_attach (struct target_ops *ops, const char *args, int from_tty)
 {
   BOOL ok;
   DWORD pid;