aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2022-04-26 14:08:03 -0600
committerTom Tromey <tromey@adacore.com>2022-05-13 08:21:16 -0600
commit0e90c441629bcf1f53ba484f7d855ed8eb68f138 (patch)
tree32543d4e42dfa1873b0fca3e3a81c0e33cd67702
parentf1025b233f6dad43981f5ad35c81481f8d3658bf (diff)
downloadgdb-0e90c441629bcf1f53ba484f7d855ed8eb68f138.zip
gdb-0e90c441629bcf1f53ba484f7d855ed8eb68f138.tar.gz
gdb-0e90c441629bcf1f53ba484f7d855ed8eb68f138.tar.bz2
Constify target_pid_to_exec_file
This changes target_pid_to_exec_file and target_ops::pid_to_exec_file to return a "const char *". I couldn't build many of these targets, but did examine the code by hand -- also, as this only affects the return type, it's normally pretty safe. This brings gdb and gdbserver a bit closer, and allows for the removal of a const_cast as well.
-rw-r--r--gdb/darwin-nat.c2
-rw-r--r--gdb/darwin-nat.h2
-rw-r--r--gdb/exec.c2
-rw-r--r--gdb/fbsd-nat.c2
-rw-r--r--gdb/fbsd-nat.h2
-rw-r--r--gdb/inf-child.c2
-rw-r--r--gdb/inf-child.h2
-rw-r--r--gdb/linux-nat.c2
-rw-r--r--gdb/linux-nat.h2
-rw-r--r--gdb/nat/linux-procfs.c2
-rw-r--r--gdb/nat/linux-procfs.h2
-rw-r--r--gdb/netbsd-nat.c4
-rw-r--r--gdb/netbsd-nat.h2
-rw-r--r--gdb/nto-procfs.c4
-rw-r--r--gdb/procfs.c4
-rw-r--r--gdb/remote.c4
-rw-r--r--gdb/target-delegates.c14
-rw-r--r--gdb/target.c2
-rw-r--r--gdb/target.h4
-rw-r--r--gdb/windows-nat.c4
20 files changed, 32 insertions, 32 deletions
diff --git a/gdb/darwin-nat.c b/gdb/darwin-nat.c
index 1772365..eca97c9 100644
--- a/gdb/darwin-nat.c
+++ b/gdb/darwin-nat.c
@@ -2373,7 +2373,7 @@ set_enable_mach_exceptions (const char *args, int from_tty,
}
}
-char *
+const char *
darwin_nat_target::pid_to_exec_file (int pid)
{
static char path[PATH_MAX];
diff --git a/gdb/darwin-nat.h b/gdb/darwin-nat.h
index 733ac7c..e3dcd96 100644
--- a/gdb/darwin-nat.h
+++ b/gdb/darwin-nat.h
@@ -100,7 +100,7 @@ class darwin_nat_target : public inf_child_target
std::string pid_to_str (ptid_t) override;
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
enum target_xfer_status xfer_partial (enum target_object object,
const char *annex,
diff --git a/gdb/exec.c b/gdb/exec.c
index 38540c0..40c89d5 100644
--- a/gdb/exec.c
+++ b/gdb/exec.c
@@ -314,7 +314,7 @@ validate_exec_file (int from_tty)
void
exec_file_locate_attach (int pid, int defer_bp_reset, int from_tty)
{
- char *exec_file_target;
+ const char *exec_file_target;
symfile_add_flags add_flags = 0;
/* Do nothing if we already have an executable filename. */
diff --git a/gdb/fbsd-nat.c b/gdb/fbsd-nat.c
index a501d92..281b034 100644
--- a/gdb/fbsd-nat.c
+++ b/gdb/fbsd-nat.c
@@ -57,7 +57,7 @@
/* Return the name of a file that can be opened to get the symbols for
the child process identified by PID. */
-char *
+const char *
fbsd_nat_target::pid_to_exec_file (int pid)
{
static char buf[PATH_MAX];
diff --git a/gdb/fbsd-nat.h b/gdb/fbsd-nat.h
index ba359c6..3a13bc8 100644
--- a/gdb/fbsd-nat.h
+++ b/gdb/fbsd-nat.h
@@ -44,7 +44,7 @@
class fbsd_nat_target : public inf_ptrace_target
{
public:
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
int find_memory_regions (find_memory_region_ftype func, void *data) override;
diff --git a/gdb/inf-child.c b/gdb/inf-child.c
index cc00867..56ebd2a 100644
--- a/gdb/inf-child.c
+++ b/gdb/inf-child.c
@@ -220,7 +220,7 @@ inf_child_target::can_attach ()
return true;
}
-char *
+const char *
inf_child_target::pid_to_exec_file (int pid)
{
/* This target doesn't support translation of a process ID to the
diff --git a/gdb/inf-child.h b/gdb/inf-child.h
index a017032..ae5ace4 100644
--- a/gdb/inf-child.h
+++ b/gdb/inf-child.h
@@ -71,7 +71,7 @@ public:
void post_attach (int) override;
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
int fileio_open (struct inferior *inf, const char *filename,
int flags, int mode, int warn_if_slow,
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c
index 740cc0d..3b54008 100644
--- a/gdb/linux-nat.c
+++ b/gdb/linux-nat.c
@@ -3764,7 +3764,7 @@ linux_nat_target::thread_name (struct thread_info *thr)
/* Accepts an integer PID; Returns a string representing a file that
can be opened to get the symbols for the child process. */
-char *
+const char *
linux_nat_target::pid_to_exec_file (int pid)
{
return linux_proc_pid_to_exec_file (pid);
diff --git a/gdb/linux-nat.h b/gdb/linux-nat.h
index 12a90ec..11043c4 100644
--- a/gdb/linux-nat.h
+++ b/gdb/linux-nat.h
@@ -123,7 +123,7 @@ public:
int set_syscall_catchpoint (int pid, bool needed, int any_count,
gdb::array_view<const int> syscall_counts) override;
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
void post_attach (int) override;
diff --git a/gdb/nat/linux-procfs.c b/gdb/nat/linux-procfs.c
index 2618c99..99e6457 100644
--- a/gdb/nat/linux-procfs.c
+++ b/gdb/nat/linux-procfs.c
@@ -341,7 +341,7 @@ linux_proc_task_list_dir_exists (pid_t pid)
/* See linux-procfs.h. */
-char *
+const char *
linux_proc_pid_to_exec_file (int pid)
{
static char buf[PATH_MAX];
diff --git a/gdb/nat/linux-procfs.h b/gdb/nat/linux-procfs.h
index fa1280a..fcc8280 100644
--- a/gdb/nat/linux-procfs.h
+++ b/gdb/nat/linux-procfs.h
@@ -78,7 +78,7 @@ extern int linux_proc_task_list_dir_exists (pid_t pid);
to create the process PID. The returned value persists until this
function is next called. */
-extern char *linux_proc_pid_to_exec_file (int pid);
+extern const char *linux_proc_pid_to_exec_file (int pid);
/* Display possible problems on this system. Display them only once
per GDB execution. */
diff --git a/gdb/netbsd-nat.c b/gdb/netbsd-nat.c
index f2eeb3f..2ccd0e0 100644
--- a/gdb/netbsd-nat.c
+++ b/gdb/netbsd-nat.c
@@ -34,10 +34,10 @@
/* Return the name of a file that can be opened to get the symbols for
the child process identified by PID. */
-char *
+const char *
nbsd_nat_target::pid_to_exec_file (int pid)
{
- return const_cast<char *> (netbsd_nat::pid_to_exec_file (pid));
+ return netbsd_nat::pid_to_exec_file (pid);
}
/* Return the current directory for the process identified by PID. */
diff --git a/gdb/netbsd-nat.h b/gdb/netbsd-nat.h
index ef190c4..ff46845 100644
--- a/gdb/netbsd-nat.h
+++ b/gdb/netbsd-nat.h
@@ -28,7 +28,7 @@ struct thread_info;
struct nbsd_nat_target : public inf_ptrace_target
{
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
bool thread_alive (ptid_t ptid) override;
const char *thread_name (struct thread_info *thr) override;
diff --git a/gdb/nto-procfs.c b/gdb/nto-procfs.c
index 61374c9..ef9e0f0 100644
--- a/gdb/nto-procfs.c
+++ b/gdb/nto-procfs.c
@@ -121,7 +121,7 @@ struct nto_procfs_target : public inf_child_target
const char *extra_thread_info (struct thread_info *) override;
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
};
/* For "target native". */
@@ -664,7 +664,7 @@ nto_procfs_target::files_info ()
/* Target to_pid_to_exec_file implementation. */
-char *
+const char *
nto_procfs_target::pid_to_exec_file (const int pid)
{
int proc_fd;
diff --git a/gdb/procfs.c b/gdb/procfs.c
index f6ca134..d290505 100644
--- a/gdb/procfs.c
+++ b/gdb/procfs.c
@@ -127,7 +127,7 @@ public:
std::string pid_to_str (ptid_t) override;
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
thread_control_capabilities get_thread_control_capabilities () override
{ return tc_schedlock; }
@@ -2927,7 +2927,7 @@ procfs_target::pid_to_str (ptid_t ptid)
/* Accepts an integer PID; Returns a string representing a file that
can be opened to get the symbols for the child process. */
-char *
+const char *
procfs_target::pid_to_exec_file (int pid)
{
static char buf[PATH_MAX];
diff --git a/gdb/remote.c b/gdb/remote.c
index b8df332..f41e6ce 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -508,7 +508,7 @@ public:
void rcmd (const char *command, struct ui_file *output) override;
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
void log_command (const char *cmd) override
{
@@ -14353,7 +14353,7 @@ remote_target::load (const char *name, int from_tty)
can be opened on the remote side to get the symbols for the child
process. Returns NULL if the operation is not supported. */
-char *
+const char *
remote_target::pid_to_exec_file (int pid)
{
static gdb::optional<gdb::char_vector> filename;
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index 4e653e8..8a99864 100644
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -94,7 +94,7 @@ struct dummy_target : public target_ops
void interrupt () override;
void pass_ctrlc () override;
void rcmd (const char *arg0, struct ui_file *arg1) override;
- char *pid_to_exec_file (int arg0) override;
+ const char *pid_to_exec_file (int arg0) override;
void log_command (const char *arg0) override;
const target_section_table *get_section_table () override;
thread_control_capabilities get_thread_control_capabilities () override;
@@ -268,7 +268,7 @@ struct debug_target : public target_ops
void interrupt () override;
void pass_ctrlc () override;
void rcmd (const char *arg0, struct ui_file *arg1) override;
- char *pid_to_exec_file (int arg0) override;
+ const char *pid_to_exec_file (int arg0) override;
void log_command (const char *arg0) override;
const target_section_table *get_section_table () override;
thread_control_capabilities get_thread_control_capabilities () override;
@@ -1983,28 +1983,28 @@ debug_target::rcmd (const char *arg0, struct ui_file *arg1)
gdb_puts (")\n", gdb_stdlog);
}
-char *
+const char *
target_ops::pid_to_exec_file (int arg0)
{
return this->beneath ()->pid_to_exec_file (arg0);
}
-char *
+const char *
dummy_target::pid_to_exec_file (int arg0)
{
return NULL;
}
-char *
+const char *
debug_target::pid_to_exec_file (int arg0)
{
- char * result;
+ const char * result;
gdb_printf (gdb_stdlog, "-> %s->pid_to_exec_file (...)\n", this->beneath ()->shortname ());
result = this->beneath ()->pid_to_exec_file (arg0);
gdb_printf (gdb_stdlog, "<- %s->pid_to_exec_file (", this->beneath ()->shortname ());
target_debug_print_int (arg0);
gdb_puts (") = ", gdb_stdlog);
- target_debug_print_char_p (result);
+ target_debug_print_const_char_p (result);
gdb_puts ("\n", gdb_stdlog);
return result;
}
diff --git a/gdb/target.c b/gdb/target.c
index 1063f80..18e53aa 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -423,7 +423,7 @@ target_extra_thread_info (thread_info *tp)
/* See target.h. */
-char *
+const char *
target_pid_to_exec_file (int pid)
{
return current_inferior ()->top_target ()->pid_to_exec_file (pid);
diff --git a/gdb/target.h b/gdb/target.h
index f77dbf0..18559fe 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -688,7 +688,7 @@ struct target_ops
TARGET_DEFAULT_FUNC (default_target_pass_ctrlc);
virtual void rcmd (const char *command, struct ui_file *output)
TARGET_DEFAULT_FUNC (default_rcmd);
- virtual char *pid_to_exec_file (int pid)
+ virtual const char *pid_to_exec_file (int pid)
TARGET_DEFAULT_RETURN (NULL);
virtual void log_command (const char *)
TARGET_DEFAULT_IGNORE ();
@@ -1951,7 +1951,7 @@ extern gdb::byte_vector target_thread_info_to_thread_handle
the client if the string will not be immediately used, or if
it must persist. */
-extern char *target_pid_to_exec_file (int pid);
+extern const char *target_pid_to_exec_file (int pid);
/* See the to_thread_architecture description in struct target_ops. */
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c
index 1068558..cd43409 100644
--- a/gdb/windows-nat.c
+++ b/gdb/windows-nat.c
@@ -276,7 +276,7 @@ struct windows_nat_target final : public x86_nat_target<inf_child_target>
void interrupt () override;
- char *pid_to_exec_file (int pid) override;
+ const char *pid_to_exec_file (int pid) override;
ptid_t get_ada_task_ptid (long lwp, ULONGEST thread) override;
@@ -2005,7 +2005,7 @@ windows_get_exec_module_filename (char *exe_name_ret, size_t exe_name_max_len)
/* The pid_to_exec_file target_ops method for this platform. */
-char *
+const char *
windows_nat_target::pid_to_exec_file (int pid)
{
static char path[__PMAX];