constify to_load
authorTom Tromey <tromey@redhat.com>
Wed, 27 Mar 2013 20:14:26 +0000 (14:14 -0600)
committerTom Tromey <tromey@redhat.com>
Thu, 26 Jun 2014 15:14:14 +0000 (09:14 -0600)
This makes the argument to the target_ops to_load method "const", and
fixes up the fallout.  Tested by rebuilding all the affected files.

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

* defs.h (generic_load): Update.
* m32r-rom.c (m32r_load_gen): Make "filename" const.
* monitor.c (monitor_load): Make "args" const.
* remote-m32r-sdi.c (m32r_load): Make "args" const.
* remote-mips.c (mips_load_srec, pmon_load_fast): Make "args"
const.
(mips_load): Make "file" const.
* remote-sim.c (gdbsim_load): Make "args" const.
* remote.c (remote_load): Make "name" const.
* symfile.c (generic_load): Make "args" const.
* target-delegates.c: Rebuild.
* target.c (target_load): Make "arg" const.
(debug_to_load): Make "args" const.
* target.h (struct target_ops) <to_load>: Make parameter const.
(target_load): Update.

12 files changed:
gdb/ChangeLog
gdb/defs.h
gdb/m32r-rom.c
gdb/monitor.c
gdb/remote-m32r-sdi.c
gdb/remote-mips.c
gdb/remote-sim.c
gdb/remote.c
gdb/symfile.c
gdb/target-delegates.c
gdb/target.c
gdb/target.h

index 115b440d7ab01a2f73a3eba90a2a02a484ce4a73..5ebae5e9c2db2efd099bd1b1e2a527ec0d0fadbb 100644 (file)
@@ -1,3 +1,21 @@
+2014-06-26  Tom Tromey  <tromey@redhat.com>
+
+       * defs.h (generic_load): Update.
+       * m32r-rom.c (m32r_load_gen): Make "filename" const.
+       * monitor.c (monitor_load): Make "args" const.
+       * remote-m32r-sdi.c (m32r_load): Make "args" const.
+       * remote-mips.c (mips_load_srec, pmon_load_fast): Make "args"
+       const.
+       (mips_load): Make "file" const.
+       * remote-sim.c (gdbsim_load): Make "args" const.
+       * remote.c (remote_load): Make "name" const.
+       * symfile.c (generic_load): Make "args" const.
+       * target-delegates.c: Rebuild.
+       * target.c (target_load): Make "arg" const.
+       (debug_to_load): Make "args" const.
+       * target.h (struct target_ops) <to_load>: Make parameter const.
+       (target_load): Update.
+
 2014-06-26  Tom Tromey  <tromey@redhat.com>
 
        PR symtab/16902:
index b7e9ff46b17ae6e1c1efa10205b3fc16af3a86e4..511279af0d7f939b23ac86c4f009ee9212991653 100644 (file)
@@ -291,7 +291,7 @@ extern char *re_comp (const char *);
 extern void symbol_file_command (char *, int);
 
 /* * Remote targets may wish to use this as their load function.  */
-extern void generic_load (char *name, int from_tty);
+extern void generic_load (const char *name, int from_tty);
 
 /* * Report on STREAM the performance of memory transfer operation,
    such as 'load'.
index 2ca23ae247cefd78b718437d256fddba38d65a15..0ab252a1fd191d1794cb0ac878b89cc42996903e 100644 (file)
@@ -196,7 +196,7 @@ m32r_load (char *filename, int from_tty)
 }
 
 static void
-m32r_load_gen (struct target_ops *self, char *filename, int from_tty)
+m32r_load_gen (struct target_ops *self, const char *filename, int from_tty)
 {
   generic_load (filename, from_tty);
 }
index 4a57d5e6e401efa06c89b11bec327964ed83275d..61f0dffe66d198b9507f398aaee5834a79006ddd 100644 (file)
@@ -2200,7 +2200,7 @@ monitor_wait_srec_ack (void)
 /* monitor_load -- download a file.  */
 
 static void
-monitor_load (struct target_ops *self, char *args, int from_tty)
+monitor_load (struct target_ops *self, const char *args, int from_tty)
 {
   CORE_ADDR load_offset = 0;
   char **argv;
index 9c57171d0e92ca4d3fab06b89c44598403eed1bf..37efaec6b5fe30c5fdeb7affabc096e6d0d9f32c 100644 (file)
@@ -1238,9 +1238,9 @@ m32r_remove_breakpoint (struct target_ops *ops,
 }
 
 static void
-m32r_load (struct target_ops *self, char *args, int from_tty)
+m32r_load (struct target_ops *self, const char *args, int from_tty)
 {
-  struct cleanup *old_chain;
+  struct cleanup *old_chain = make_cleanup (null_cleanup, NULL);
   asection *section;
   bfd *pbfd;
   bfd_vma entry;
@@ -1258,17 +1258,11 @@ m32r_load (struct target_ops *self, char *args, int from_tty)
 
   while (*args != '\000')
     {
-      char *arg;
+      char *arg = extract_arg_const (&args);
 
-      args = skip_spaces (args);
-
-      arg = args;
-
-      while ((*args != '\000') && !isspace (*args))
-       args++;
-
-      if (*args != '\000')
-       *args++ = '\000';
+      if (arg == NULL)
+       break;
+      make_cleanup (xfree, arg);
 
       if (*arg != '-')
        filename = arg;
@@ -1285,11 +1279,8 @@ m32r_load (struct target_ops *self, char *args, int from_tty)
 
   pbfd = gdb_bfd_open (filename, gnutarget, -1);
   if (pbfd == NULL)
-    {
-      perror_with_name (filename);
-      return;
-    }
-  old_chain = make_cleanup_bfd_unref (pbfd);
+    perror_with_name (filename);
+  make_cleanup_bfd_unref (pbfd);
 
   if (!bfd_check_format (pbfd, bfd_object))
     error (_("\"%s\" is not an object file: %s"), filename,
index 7f0d957471cdbc588aa8053e3a11fa6605679c70..277621ddc45ba9ebd5b72040cd1210acdf5a42bc 100644 (file)
@@ -128,9 +128,7 @@ static void pmon_end_download (int final, int bintotal);
 
 static void pmon_download (char *buffer, int length);
 
-static void pmon_load_fast (char *file);
-
-static void mips_load (struct target_ops *self, char *file, int from_tty);
+static void mips_load (struct target_ops *self, const char *file, int from_tty);
 
 static int mips_make_srec (char *buffer, int type, CORE_ADDR memaddr,
                           unsigned char *myaddr, int len);
@@ -2804,7 +2802,7 @@ send_srec (char *srec, int len, CORE_ADDR addr)
 /*  Download a binary file by converting it to S records.  */
 
 static void
-mips_load_srec (char *args)
+mips_load_srec (const char *args)
 {
   bfd *abfd;
   asection *s;
@@ -3389,7 +3387,7 @@ pmon_download (char *buffer, int length)
    using the FastLoad format.  */
 
 static void
-pmon_load_fast (char *file)
+pmon_load_fast (const char *file)
 {
   bfd *abfd;
   asection *s;
@@ -3548,7 +3546,7 @@ pmon_load_fast (char *file)
 /* mips_load -- download a file.  */
 
 static void
-mips_load (struct target_ops *self, char *file, int from_tty)
+mips_load (struct target_ops *self, const char *file, int from_tty)
 {
   struct regcache *regcache;
 
index 2e7db4badac71c360e971392ad0138b9e9bbe712..4097372489be2e72a719bef5463324ed068fcae3 100644 (file)
@@ -73,7 +73,8 @@ static void gdb_os_error (host_callback *, const char *, ...)
 
 static void gdbsim_kill (struct target_ops *);
 
-static void gdbsim_load (struct target_ops *self, char *prog, int fromtty);
+static void gdbsim_load (struct target_ops *self, const char *prog,
+                        int fromtty);
 
 static void gdbsim_open (char *args, int from_tty);
 
@@ -562,7 +563,7 @@ gdbsim_kill (struct target_ops *ops)
    GDB's symbol tables to match.  */
 
 static void
-gdbsim_load (struct target_ops *self, char *args, int fromtty)
+gdbsim_load (struct target_ops *self, const char *args, int fromtty)
 {
   char **argv;
   const char *prog;
index b5318f1d07bda8e1aa2173b69f48d5353f58807e..b6f3ddb54dd9357525bb1e0c3cc031967df9e73a 100644 (file)
@@ -11378,7 +11378,7 @@ remote_augmented_libraries_svr4_read (struct target_ops *self)
 /* Implementation of to_load.  */
 
 static void
-remote_load (struct target_ops *self, char *name, int from_tty)
+remote_load (struct target_ops *self, const char *name, int from_tty)
 {
   generic_load (name, from_tty);
 }
index 84858dcf07b21fe865ee9c34f8104943b36ac545..42707ac82168a1b6e7f0026ec96f63061a7e44cc 100644 (file)
@@ -2090,7 +2090,7 @@ clear_memory_write_data (void *arg)
 }
 
 void
-generic_load (char *args, int from_tty)
+generic_load (const char *args, int from_tty)
 {
   bfd *loadfile_bfd;
   struct timeval start_time, end_time;
index eaab916f7d55758fd3765c876069c8191eb4206a..38ca2b44c468eebdd7d6886b64efa13639ed44d4 100644 (file)
@@ -381,14 +381,14 @@ tdefault_kill (struct target_ops *self)
 }
 
 static void
-delegate_load (struct target_ops *self, char *arg1, int arg2)
+delegate_load (struct target_ops *self, const char *arg1, int arg2)
 {
   self = self->beneath;
   self->to_load (self, arg1, arg2);
 }
 
 static void
-tdefault_load (struct target_ops *self, char *arg1, int arg2)
+tdefault_load (struct target_ops *self, const char *arg1, int arg2)
 {
   tcomplain ();
 }
index f384ed0b24d2028b4a213f84c62b92632876476b..ece59e617cf3b961e9466f1d97f3f861483531ef 100644 (file)
@@ -169,7 +169,7 @@ static void debug_to_terminal_save_ours (struct target_ops *self);
 
 static void debug_to_terminal_ours (struct target_ops *self);
 
-static void debug_to_load (struct target_ops *self, char *, int);
+static void debug_to_load (struct target_ops *self, const char *, int);
 
 static int debug_to_can_run (struct target_ops *self);
 
@@ -476,7 +476,7 @@ target_kill (void)
 }
 
 void
-target_load (char *arg, int from_tty)
+target_load (const char *arg, int from_tty)
 {
   target_dcache_invalidate ();
   (*current_target.to_load) (&current_target, arg, from_tty);
@@ -3876,7 +3876,7 @@ debug_to_terminal_info (struct target_ops *self,
 }
 
 static void
-debug_to_load (struct target_ops *self, char *args, int from_tty)
+debug_to_load (struct target_ops *self, const char *args, int from_tty)
 {
   debug_target.to_load (&debug_target, args, from_tty);
 
index 96d5cb1f865a798881737d6c359f9f5395e44b38..a0a0d30c67f6aa8f580a45f6821f05da91207eeb 100644 (file)
@@ -499,7 +499,7 @@ struct target_ops
       TARGET_DEFAULT_FUNC (default_terminal_info);
     void (*to_kill) (struct target_ops *)
       TARGET_DEFAULT_NORETURN (noprocess ());
-    void (*to_load) (struct target_ops *, char *, int)
+    void (*to_load) (struct target_ops *, const char *, int)
       TARGET_DEFAULT_NORETURN (tcomplain ());
     /* Start an inferior process and set inferior_ptid to its pid.
        EXEC_FILE is the file to run.
@@ -1423,7 +1423,7 @@ extern void target_kill (void);
    sections.  The target may define switches, or other non-switch
    arguments, as it pleases.  */
 
-extern void target_load (char *arg, int from_tty);
+extern void target_load (const char *arg, int from_tty);
 
 /* Some targets (such as ttrace-based HPUX) don't allow us to request
    notification of inferior events such as fork and vork immediately