This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH 3/3] constify to_open


This makes target_ops::to_open take a const string and then fixes the
fallout.

There were a few of these I could not build.  However I eyeballed it
and in any case the fixes should generally be trivial.

this is based on the patch to fix up the target debugging for to_open,
because that changes gdb to not directly install to_open as the target
command

2014-07-22  Tom Tromey  <tromey@redhat.com>

	* bsd-kvm.c (bsd_kvm_open): Constify.
	* corelow.c (core_open): Constify.
	* ctf.c (ctf_open): Constify.
	* dbug-rom.c (dbug_open): Constify.
	* exec.c (exec_open): Constify.
	* inf-child.c (inf_child_open): Constify.
	* m32r-rom.c (m32r_open, mon2000_open): Constify.
	* microblaze-rom.c (picobug_open): Constify.
	* nto-procfs.c (procfs_open_1, procfs_open, procfs_native_open):
	Constify.
	* ppcbug-rom.c (ppcbug_open0, ppcbug_open1): Constify.
	* record-btrace.c (record_btrace_open): Constify.
	* record-full.c (record_full_core_open_1, record_full_open_1)
	(record_full_open): Constify.
	* remote-m32r-sdi.c (m32r_open): Constify.
	* remote-mips.c (common_open, mips_open, pmon_open, ddb_open)
	(rockhopper_open, lsi_open): Constify.
	* remote-sim.c (gdbsim_open): Constify.
	* remote.c (remote_open, extended_remote_open, remote_open_1):
	Constify.
	* target.h (struct target_ops) <to_open>: Make "arg" const.
	* tracefile-tfile.c (tfile_open): Constify.
---
 gdb/ChangeLog         | 25 +++++++++++++++++++++++++
 gdb/bsd-kvm.c         |  7 ++++---
 gdb/corelow.c         |  9 ++++-----
 gdb/ctf.c             |  4 ++--
 gdb/dbug-rom.c        |  4 +---
 gdb/dink32-rom.c      |  4 +---
 gdb/exec.c            |  2 +-
 gdb/inf-child.c       |  4 ++--
 gdb/inf-child.h       |  2 +-
 gdb/m32r-rom.c        |  7 ++-----
 gdb/microblaze-rom.c  |  2 +-
 gdb/monitor.c         |  2 +-
 gdb/monitor.h         |  3 ++-
 gdb/nto-procfs.c      |  6 +++---
 gdb/ppcbug-rom.c      |  4 ++--
 gdb/record-btrace.c   |  2 +-
 gdb/record-full.c     |  6 +++---
 gdb/remote-m32r-sdi.c |  2 +-
 gdb/remote-mips.c     | 20 ++++++--------------
 gdb/remote-sim.c      |  2 +-
 gdb/remote.c          | 15 ++++++---------
 gdb/target.h          |  2 +-
 gdb/tracefile-tfile.c |  7 ++++---
 23 files changed, 75 insertions(+), 66 deletions(-)

diff --git a/gdb/bsd-kvm.c b/gdb/bsd-kvm.c
index 35ecebb..6705035 100644
--- a/gdb/bsd-kvm.c
+++ b/gdb/bsd-kvm.c
@@ -63,19 +63,20 @@ static struct target_ops bsd_kvm_ops;
 static ptid_t bsd_kvm_ptid;
 
 static void
-bsd_kvm_open (char *filename, int from_tty)
+bsd_kvm_open (const char *arg, int from_tty)
 {
   char errbuf[_POSIX2_LINE_MAX];
   char *execfile = NULL;
   kvm_t *temp_kd;
+  char *filename = NULL;
 
   target_preopen (from_tty);
 
-  if (filename)
+  if (arg)
     {
       char *temp;
 
-      filename = tilde_expand (filename);
+      filename = tilde_expand (arg);
       if (filename[0] != '/')
 	{
 	  temp = concat (current_directory, "/", filename, (char *)NULL);
diff --git a/gdb/corelow.c b/gdb/corelow.c
index 1775a66..9290f18 100644
--- a/gdb/corelow.c
+++ b/gdb/corelow.c
@@ -84,8 +84,6 @@ static struct core_fns *sniff_core_bfd (bfd *);
 
 static int gdb_check_format (bfd *);
 
-static void core_open (char *, int);
-
 static void core_close (struct target_ops *self);
 
 static void core_close_cleanup (void *ignore);
@@ -275,7 +273,7 @@ add_to_thread_list (bfd *abfd, asection *asect, void *reg_sect_arg)
 /* This routine opens and sets up the core file bfd.  */
 
 static void
-core_open (char *filename, int from_tty)
+core_open (const char *arg, int from_tty)
 {
   const char *p;
   int siggy;
@@ -285,9 +283,10 @@ core_open (char *filename, int from_tty)
   int scratch_chan;
   int flags;
   volatile struct gdb_exception except;
+  char *filename;
 
   target_preopen (from_tty);
-  if (!filename)
+  if (!arg)
     {
       if (core_bfd)
 	error (_("No core file specified.  (Use `detach' "
@@ -296,7 +295,7 @@ core_open (char *filename, int from_tty)
 	error (_("No core file specified."));
     }
 
-  filename = tilde_expand (filename);
+  filename = tilde_expand (arg);
   if (!IS_ABSOLUTE_PATH (filename))
     {
       temp = concat (current_directory, "/",
diff --git a/gdb/ctf.c b/gdb/ctf.c
index 84d0a48..df645c0 100644
--- a/gdb/ctf.c
+++ b/gdb/ctf.c
@@ -904,7 +904,7 @@ ctf_destroy (void)
 /* Open CTF trace data in DIRNAME.  */
 
 static void
-ctf_open_dir (char *dirname)
+ctf_open_dir (const char *dirname)
 {
   struct bt_iter_pos begin_pos;
   struct bt_iter_pos *pos;
@@ -1127,7 +1127,7 @@ ctf_read_tp (struct uploaded_tp **uploaded_tps)
    second packet which contains events on trace blocks.  */
 
 static void
-ctf_open (char *dirname, int from_tty)
+ctf_open (const char *dirname, int from_tty)
 {
   struct bt_ctf_event *event;
   uint32_t event_id;
diff --git a/gdb/dbug-rom.c b/gdb/dbug-rom.c
index 4157f27..c775543 100644
--- a/gdb/dbug-rom.c
+++ b/gdb/dbug-rom.c
@@ -32,8 +32,6 @@
 
 #include "m68k-tdep.h"
 
-static void dbug_open (char *args, int from_tty);
-
 static void
 dbug_supply_register (struct regcache *regcache, char *regname,
 		      int regnamelen, char *val, int vallen)
@@ -155,7 +153,7 @@ init_dbug_cmds (void)
 }				/* init_debug_ops */
 
 static void
-dbug_open (char *args, int from_tty)
+dbug_open (const char *args, int from_tty)
 {
   monitor_open (args, &dbug_cmds, from_tty);
 }
diff --git a/gdb/dink32-rom.c b/gdb/dink32-rom.c
index 52d428d..9ab81ae 100644
--- a/gdb/dink32-rom.c
+++ b/gdb/dink32-rom.c
@@ -26,8 +26,6 @@
 #include "inferior.h"
 #include "regcache.h"
 
-static void dink32_open (char *args, int from_tty);
-
 static void
 dink32_supply_register (struct regcache *regcache, char *regname,
 			int regnamelen, char *val, int vallen)
@@ -123,7 +121,7 @@ static char *dink32_inits[] =
 static struct monitor_ops dink32_cmds;
 
 static void
-dink32_open (char *args, int from_tty)
+dink32_open (const char *args, int from_tty)
 {
   monitor_open (args, &dink32_cmds, from_tty);
 }
diff --git a/gdb/exec.c b/gdb/exec.c
index e42ef20..98defbc 100644
--- a/gdb/exec.c
+++ b/gdb/exec.c
@@ -79,7 +79,7 @@ show_write_files (struct ui_file *file, int from_tty,
 
 
 static void
-exec_open (char *args, int from_tty)
+exec_open (const char *args, int from_tty)
 {
   target_preopen (from_tty);
   exec_file_attach (args, from_tty);
diff --git a/gdb/inf-child.c b/gdb/inf-child.c
index 897e635..82a2781 100644
--- a/gdb/inf-child.c
+++ b/gdb/inf-child.c
@@ -122,7 +122,7 @@ static int inf_child_explicitly_opened;
 /* See inf-child.h.  */
 
 void
-inf_child_open_target (struct target_ops *target, char *arg, int from_tty)
+inf_child_open_target (struct target_ops *target, const char *arg, int from_tty)
 {
   target_preopen (from_tty);
   push_target (target);
@@ -132,7 +132,7 @@ inf_child_open_target (struct target_ops *target, char *arg, int from_tty)
 }
 
 static void
-inf_child_open (char *arg, int from_tty)
+inf_child_open (const char *arg, int from_tty)
 {
   inf_child_open_target (inf_child_ops, arg, from_tty);
 }
diff --git a/gdb/inf-child.h b/gdb/inf-child.h
index b2692ca..163cab6 100644
--- a/gdb/inf-child.h
+++ b/gdb/inf-child.h
@@ -34,7 +34,7 @@ extern void store_waitstatus (struct target_waitstatus *, int);
    the target, in case it need to override to_open.  */
 
 extern void inf_child_open_target (struct target_ops *target,
-				   char *arg, int from_tty);
+				   const char *arg, int from_tty);
 
 /* To be called by the native target's to_mourn_inferior routine.  */
 
diff --git a/gdb/m32r-rom.c b/gdb/m32r-rom.c
index 0ab252a..6b20cd1 100644
--- a/gdb/m32r-rom.c
+++ b/gdb/m32r-rom.c
@@ -201,9 +201,6 @@ m32r_load_gen (struct target_ops *self, const char *filename, int from_tty)
   generic_load (filename, from_tty);
 }
 
-static void m32r_open (char *args, int from_tty);
-static void mon2000_open (char *args, int from_tty);
-
 /* This array of registers needs to match the indexes used by GDB.  The
    whole reason this exists is because the various ROM monitors use
    different names than GDB does, and don't support all the registers
@@ -362,7 +359,7 @@ init_m32r_cmds (void)
 }				/* init_m32r_cmds */
 
 static void
-m32r_open (char *args, int from_tty)
+m32r_open (const char *args, int from_tty)
 {
   monitor_open (args, &m32r_cmds, from_tty);
 }
@@ -422,7 +419,7 @@ init_mon2000_cmds (void)
 }				/* init_mon2000_cmds */
 
 static void
-mon2000_open (char *args, int from_tty)
+mon2000_open (const char *args, int from_tty)
 {
   monitor_open (args, &mon2000_cmds, from_tty);
 }
diff --git a/gdb/microblaze-rom.c b/gdb/microblaze-rom.c
index 936865c..a64217d 100644
--- a/gdb/microblaze-rom.c
+++ b/gdb/microblaze-rom.c
@@ -49,7 +49,7 @@ static char *picobug_regnames[] = {
 
 
 static void
-picobug_open (char *args, int from_tty)
+picobug_open (const char *args, int from_tty)
 {
   monitor_open (args, &picobug_cmds, from_tty);
 }
diff --git a/gdb/monitor.c b/gdb/monitor.c
index 61f0dff..788bca0 100644
--- a/gdb/monitor.c
+++ b/gdb/monitor.c
@@ -713,7 +713,7 @@ compile_pattern (char *pattern, struct re_pattern_buffer *compiled_pattern,
    for communication.  */
 
 void
-monitor_open (char *args, struct monitor_ops *mon_ops, int from_tty)
+monitor_open (const char *args, struct monitor_ops *mon_ops, int from_tty)
 {
   char *name;
   char **p;
diff --git a/gdb/monitor.h b/gdb/monitor.h
index 07caf97..52521c8 100644
--- a/gdb/monitor.h
+++ b/gdb/monitor.h
@@ -239,7 +239,8 @@ struct monitor_ops
 
 #define SREC_SIZE 160
 
-extern void monitor_open (char *args, struct monitor_ops *ops, int from_tty);
+extern void monitor_open (const char *args, struct monitor_ops *ops,
+			  int from_tty);
 extern void monitor_close (struct target_ops *self);
 extern char *monitor_supply_register (struct regcache *regcache,
 				      int regno, char *valstr);
diff --git a/gdb/nto-procfs.c b/gdb/nto-procfs.c
index 728d6f3..ff8f2af 100644
--- a/gdb/nto-procfs.c
+++ b/gdb/nto-procfs.c
@@ -106,7 +106,7 @@ procfs_is_nto_target (bfd *abfd)
    will be a QNX node string, eg: "/net/some_node".  If arg is not a
    valid QNX node, we will default to local.  */
 static void
-procfs_open_1 (struct target_ops *ops, char *arg, int from_tty)
+procfs_open_1 (struct target_ops *ops, const char *arg, int from_tty)
 {
   char *nodestr;
   char *endstr;
@@ -1395,7 +1395,7 @@ static struct target_ops *nto_native_ops;
 /* to_open implementation for "target procfs".  */
 
 static void
-procfs_open (char *arg, int from_tty)
+procfs_open (const char *arg, int from_tty)
 {
   procfs_open_1 (&nto_procfs_ops, arg, from_tty);
 }
@@ -1403,7 +1403,7 @@ procfs_open (char *arg, int from_tty)
 /* to_open implementation for "target native".  */
 
 static void
-procfs_native_open (char *arg, int from_tty)
+procfs_native_open (const char *arg, int from_tty)
 {
   procfs_open_1 (nto_native_ops, arg, from_tty);
 }
diff --git a/gdb/ppcbug-rom.c b/gdb/ppcbug-rom.c
index 3038713..f1740d1 100644
--- a/gdb/ppcbug-rom.c
+++ b/gdb/ppcbug-rom.c
@@ -184,13 +184,13 @@ static struct monitor_ops ppcbug_cmds0;
 static struct monitor_ops ppcbug_cmds1;
 
 static void
-ppcbug_open0 (char *args, int from_tty)
+ppcbug_open0 (const char *args, int from_tty)
 {
   monitor_open (args, &ppcbug_cmds0, from_tty);
 }
 
 static void
-ppcbug_open1 (char *args, int from_tty)
+ppcbug_open1 (const char *args, int from_tty)
 {
   monitor_open (args, &ppcbug_cmds1, from_tty);
 }
diff --git a/gdb/record-btrace.c b/gdb/record-btrace.c
index 5ba4e06..3601e13 100644
--- a/gdb/record-btrace.c
+++ b/gdb/record-btrace.c
@@ -188,7 +188,7 @@ record_btrace_handle_async_inferior_event (gdb_client_data data)
 /* The to_open method of target record-btrace.  */
 
 static void
-record_btrace_open (char *args, int from_tty)
+record_btrace_open (const char *args, int from_tty)
 {
   struct cleanup *disable_chain;
   struct thread_info *tp;
diff --git a/gdb/record-full.c b/gdb/record-full.c
index fcd7790..119361f 100644
--- a/gdb/record-full.c
+++ b/gdb/record-full.c
@@ -792,7 +792,7 @@ record_full_async_inferior_event_handler (gdb_client_data data)
 /* Open the process record target.  */
 
 static void
-record_full_core_open_1 (char *name, int from_tty)
+record_full_core_open_1 (const char *name, int from_tty)
 {
   struct regcache *regcache = get_current_regcache ();
   int regnum = gdbarch_num_regs (get_regcache_arch (regcache));
@@ -822,7 +822,7 @@ record_full_core_open_1 (char *name, int from_tty)
 /* "to_open" target method for 'live' processes.  */
 
 static void
-record_full_open_1 (char *name, int from_tty)
+record_full_open_1 (const char *name, int from_tty)
 {
   if (record_debug)
     fprintf_unfiltered (gdb_stdlog, "Process record: record_full_open\n");
@@ -846,7 +846,7 @@ static void record_full_init_record_breakpoints (void);
 /* "to_open" target method.  Open the process record target.  */
 
 static void
-record_full_open (char *name, int from_tty)
+record_full_open (const char *name, int from_tty)
 {
   struct target_ops *t;
 
diff --git a/gdb/remote-m32r-sdi.c b/gdb/remote-m32r-sdi.c
index 37efaec..f3d5879 100644
--- a/gdb/remote-m32r-sdi.c
+++ b/gdb/remote-m32r-sdi.c
@@ -359,7 +359,7 @@ m32r_create_inferior (struct target_ops *ops, char *execfile,
    NAME is the filename used for communication.  */
 
 static void
-m32r_open (char *args, int from_tty)
+m32r_open (const char *args, int from_tty)
 {
   struct hostent *host_ent;
   struct sockaddr_in server_addr;
diff --git a/gdb/remote-mips.c b/gdb/remote-mips.c
index 277621d..236f3cd 100644
--- a/gdb/remote-mips.c
+++ b/gdb/remote-mips.c
@@ -77,14 +77,6 @@ static ULONGEST mips_request (int cmd, ULONGEST addr, ULONGEST data,
 
 static void mips_initialize (void);
 
-static void mips_open (char *name, int from_tty);
-
-static void pmon_open (char *name, int from_tty);
-
-static void ddb_open (char *name, int from_tty);
-
-static void lsi_open (char *name, int from_tty);
-
 static void mips_close (struct target_ops *self);
 
 static int mips_map_regno (struct gdbarch *, int);
@@ -1541,7 +1533,7 @@ mips_initialize (void)
 /* Open a connection to the remote board.  */
 
 static void
-common_open (struct target_ops *ops, char *name, int from_tty,
+common_open (struct target_ops *ops, const char *name, int from_tty,
 	     enum mips_monitor_type new_monitor,
 	     const char *new_monitor_prompt)
 {
@@ -1669,7 +1661,7 @@ seen from the board via TFTP, specify that name as the third parameter.\n"));
 /* Open a connection to an IDT board.  */
 
 static void
-mips_open (char *name, int from_tty)
+mips_open (const char *name, int from_tty)
 {
   const char *monitor_prompt = NULL;
   if (gdbarch_bfd_arch_info (target_gdbarch ()) != NULL
@@ -1694,7 +1686,7 @@ mips_open (char *name, int from_tty)
 /* Open a connection to a PMON board.  */
 
 static void
-pmon_open (char *name, int from_tty)
+pmon_open (const char *name, int from_tty)
 {
   common_open (&pmon_ops, name, from_tty, MON_PMON, "PMON> ");
 }
@@ -1702,7 +1694,7 @@ pmon_open (char *name, int from_tty)
 /* Open a connection to a DDB board.  */
 
 static void
-ddb_open (char *name, int from_tty)
+ddb_open (const char *name, int from_tty)
 {
   common_open (&ddb_ops, name, from_tty, MON_DDB, "NEC010>");
 }
@@ -1710,7 +1702,7 @@ ddb_open (char *name, int from_tty)
 /* Open a connection to a rockhopper board.  */
 
 static void
-rockhopper_open (char *name, int from_tty)
+rockhopper_open (const char *name, int from_tty)
 {
   common_open (&rockhopper_ops, name, from_tty, MON_ROCKHOPPER, "NEC01>");
 }
@@ -1718,7 +1710,7 @@ rockhopper_open (char *name, int from_tty)
 /* Open a connection to an LSI board.  */
 
 static void
-lsi_open (char *name, int from_tty)
+lsi_open (const char *name, int from_tty)
 {
   int i;
 
diff --git a/gdb/remote-sim.c b/gdb/remote-sim.c
index 4097372..ff7bf3a 100644
--- a/gdb/remote-sim.c
+++ b/gdb/remote-sim.c
@@ -667,7 +667,7 @@ gdbsim_create_inferior (struct target_ops *target, char *exec_file, char *args,
 /* Called when selecting the simulator.  E.g. (gdb) target sim name.  */
 
 static void
-gdbsim_open (char *args, int from_tty)
+gdbsim_open (const char *args, int from_tty)
 {
   int len;
   char *arg_buf;
diff --git a/gdb/remote.c b/gdb/remote.c
index 76efefa..e3e56f3 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -102,11 +102,8 @@ static void remote_files_info (struct target_ops *ignore);
 static void remote_prepare_to_store (struct target_ops *self,
 				     struct regcache *regcache);
 
-static void remote_open (char *name, int from_tty);
-
-static void extended_remote_open (char *name, int from_tty);
-
-static void remote_open_1 (char *, int, struct target_ops *, int extended_p);
+static void remote_open_1 (const char *, int, struct target_ops *,
+			   int extended_p);
 
 static void remote_close (struct target_ops *self);
 
@@ -3619,7 +3616,7 @@ remote_start_remote (int from_tty, struct target_ops *target, int extended_p)
    NAME is the filename used for communication.  */
 
 static void
-remote_open (char *name, int from_tty)
+remote_open (const char *name, int from_tty)
 {
   remote_open_1 (name, from_tty, &remote_ops, 0);
 }
@@ -3628,7 +3625,7 @@ remote_open (char *name, int from_tty)
    remote gdb protocol.  NAME is the filename used for communication.  */
 
 static void
-extended_remote_open (char *name, int from_tty)
+extended_remote_open (const char *name, int from_tty)
 {
   remote_open_1 (name, from_tty, &extended_remote_ops, 1 /*extended_p */);
 }
@@ -3727,7 +3724,7 @@ remote_check_symbols (void)
 }
 
 static struct serial *
-remote_serial_open (char *name)
+remote_serial_open (const char *name)
 {
   static int udp_warning = 0;
 
@@ -4128,7 +4125,7 @@ remote_unpush_target (void)
 }
 
 static void
-remote_open_1 (char *name, int from_tty,
+remote_open_1 (const char *name, int from_tty,
 	       struct target_ops *target, int extended_p)
 {
   struct remote_state *rs = get_remote_state ();
diff --git a/gdb/target.h b/gdb/target.h
index 92572ff..8ff358e 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -405,7 +405,7 @@ struct target_ops
        command, and (if successful) pushes a new target onto the
        stack.  Targets should supply this routine, if only to provide
        an error message.  */
-    void (*to_open) (char *, int);
+    void (*to_open) (const char *, int);
     /* Old targets with a static target vector provide "to_close".
        New re-entrant targets provide "to_xclose" and that is expected
        to xfree everything (including the "struct target_ops").  */
diff --git a/gdb/tracefile-tfile.c b/gdb/tracefile-tfile.c
index 37dc691..5ba1b15 100644
--- a/gdb/tracefile-tfile.c
+++ b/gdb/tracefile-tfile.c
@@ -376,7 +376,7 @@ tfile_read (gdb_byte *readbuf, int size)
 }
 
 static void
-tfile_open (char *filename, int from_tty)
+tfile_open (const char *arg, int from_tty)
 {
   volatile struct gdb_exception ex;
   char *temp;
@@ -390,12 +390,13 @@ tfile_open (char *filename, int from_tty)
   struct trace_status *ts;
   struct uploaded_tp *uploaded_tps = NULL;
   struct uploaded_tsv *uploaded_tsvs = NULL;
+  char *filename;
 
   target_preopen (from_tty);
-  if (!filename)
+  if (!arg)
     error (_("No trace file specified."));
 
-  filename = tilde_expand (filename);
+  filename = tilde_expand (arg);
   if (!IS_ABSOLUTE_PATH(filename))
     {
       temp = concat (current_directory, "/", filename, (char *) NULL);
-- 
1.9.3


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]