From d9fa87f4f6e732f5feb41f2fa7dc6faddb1fb627 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Fri, 13 Dec 2019 15:09:37 -0700 Subject: [PATCH] Constify get_exec_file I noticed that get_exec_file could return a "const char *". This patch implements this change. I couldn't build all the code -- but I did build Linux native and a mingw cross. Consequently, the NTO code has a hack, where it casts away const. I think this can be removed, but that required more work there, and since I couldn't compile it, I felt it best not to try. Let me know what you think. gdb/ChangeLog 2019-12-16 Tom Tromey * windows-nat.c (windows_nat_target::attach): Update. * remote.c (extended_remote_target::attach): Update. * procfs.c (procfs_target::attach): Update. * nto-procfs.c (nto_procfs_target::attach): Update. (nto_procfs_target::create_inferior): Update. * inf-ptrace.c (inf_ptrace_target::attach): Update. * gnu-nat.c (gnu_nat_target::attach): Update. (gnu_nat_target::detach): Update. * darwin-nat.c (darwin_nat_target::attach): Update. * corefile.c (get_exec_file): Constify result. Remove extraneous return. * bsd-kvm.c (bsd_kvm_target_open): Update. * gdbsupport/common-inferior.h (get_exec_file): Constify result. gdb/gdbserver/ChangeLog 2019-12-16 Tom Tromey * server.c (get_exec_file): Constify result. Change-Id: I29c60f7313a7def0dcb290ff0c2a4c1dea4f981f --- gdb/ChangeLog | 16 ++++++++++++++++ gdb/bsd-kvm.c | 2 +- gdb/corefile.c | 3 +-- gdb/darwin-nat.c | 2 +- gdb/gdbserver/ChangeLog | 4 ++++ gdb/gdbserver/server.c | 2 +- gdb/gdbsupport/common-inferior.h | 2 +- gdb/gnu-nat.c | 5 ++--- gdb/inf-ptrace.c | 3 +-- gdb/nto-procfs.c | 5 ++--- gdb/procfs.c | 3 +-- gdb/remote.c | 2 +- gdb/windows-nat.c | 2 +- 13 files changed, 33 insertions(+), 18 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2ecc2aae470..d2660cc7112 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,19 @@ +2019-12-16 Tom Tromey + + * windows-nat.c (windows_nat_target::attach): Update. + * remote.c (extended_remote_target::attach): Update. + * procfs.c (procfs_target::attach): Update. + * nto-procfs.c (nto_procfs_target::attach): Update. + (nto_procfs_target::create_inferior): Update. + * inf-ptrace.c (inf_ptrace_target::attach): Update. + * gnu-nat.c (gnu_nat_target::attach): Update. + (gnu_nat_target::detach): Update. + * darwin-nat.c (darwin_nat_target::attach): Update. + * corefile.c (get_exec_file): Constify result. Remove extraneous + return. + * bsd-kvm.c (bsd_kvm_target_open): Update. + * gdbsupport/common-inferior.h (get_exec_file): Constify result. + 2019-12-16 Christian Biesinger * gdbsupport/common-defs.h: Remove workaround for a gnulib bug diff --git a/gdb/bsd-kvm.c b/gdb/bsd-kvm.c index 895686ef628..74c044f6c73 100644 --- a/gdb/bsd-kvm.c +++ b/gdb/bsd-kvm.c @@ -106,7 +106,7 @@ static void bsd_kvm_target_open (const char *arg, int from_tty) { char errbuf[_POSIX2_LINE_MAX]; - char *execfile = NULL; + const char *execfile = NULL; kvm_t *temp_kd; char *filename = NULL; diff --git a/gdb/corefile.c b/gdb/corefile.c index f22c1540cb1..c4735ada00a 100644 --- a/gdb/corefile.c +++ b/gdb/corefile.c @@ -141,7 +141,7 @@ validate_files (void) /* See gdbsupport/common-inferior.h. */ -char * +const char * get_exec_file (int err) { if (exec_filename) @@ -151,7 +151,6 @@ get_exec_file (int err) error (_("No executable file specified.\n\ Use the \"file\" or \"exec-file\" command.")); - return NULL; } diff --git a/gdb/darwin-nat.c b/gdb/darwin-nat.c index ecc7fc07f69..c3905d1a30e 100644 --- a/gdb/darwin-nat.c +++ b/gdb/darwin-nat.c @@ -2045,7 +2045,7 @@ darwin_nat_target::attach (const char *args, int from_tty) if (from_tty) { - char *exec_file = get_exec_file (0); + const char *exec_file = get_exec_file (0); if (exec_file) printf_unfiltered (_("Attaching to program: %s, %s\n"), exec_file, diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog index 36dece61723..ecc3db53ebb 100644 --- a/gdb/gdbserver/ChangeLog +++ b/gdb/gdbserver/ChangeLog @@ -1,3 +1,7 @@ +2019-12-16 Tom Tromey + + * server.c (get_exec_file): Constify result. + 2019-12-10 Christian Biesinger * Makefile.in: Add safe-strerror.c to gdbreplay and IPA, and change diff --git a/gdb/gdbserver/server.c b/gdb/gdbserver/server.c index c5f7176cff8..a425fbaa013 100644 --- a/gdb/gdbserver/server.c +++ b/gdb/gdbserver/server.c @@ -265,7 +265,7 @@ get_exec_wrapper () /* See gdbsupport/common-inferior.h. */ -char * +const char * get_exec_file (int err) { if (err && program_path.get () == NULL) diff --git a/gdb/gdbsupport/common-inferior.h b/gdb/gdbsupport/common-inferior.h index 77d4ad93d35..0ee554e7ad0 100644 --- a/gdb/gdbsupport/common-inferior.h +++ b/gdb/gdbsupport/common-inferior.h @@ -28,7 +28,7 @@ extern const char *get_exec_wrapper (); /* Return the name of the executable file as a string. ERR nonzero means get error if there is none specified; otherwise return 0 in that case. */ -extern char *get_exec_file (int err); +extern const char *get_exec_file (int err); /* Return the inferior's current working directory. If nothing has been set, then return NULL. */ diff --git a/gdb/gnu-nat.c b/gdb/gnu-nat.c index 93a50becceb..cf42af43673 100644 --- a/gdb/gnu-nat.c +++ b/gdb/gnu-nat.c @@ -2195,7 +2195,6 @@ void gnu_nat_target::attach (const char *args, int from_tty) { int pid; - char *exec_file; struct inf *inf = cur_inf (); struct inferior *inferior; @@ -2206,7 +2205,7 @@ gnu_nat_target::attach (const char *args, int from_tty) if (from_tty) { - exec_file = (char *) get_exec_file (0); + const char *exec_file = get_exec_file (0); if (exec_file) printf_unfiltered ("Attaching to program `%s', pid %d\n", @@ -2260,7 +2259,7 @@ gnu_nat_target::detach (inferior *inf, int from_tty) if (from_tty) { - char *exec_file = get_exec_file (0); + const char *exec_file = get_exec_file (0); if (exec_file) printf_unfiltered ("Detaching from program `%s' pid %d\n", diff --git a/gdb/inf-ptrace.c b/gdb/inf-ptrace.c index 4a8e7323736..fd18146efe1 100644 --- a/gdb/inf-ptrace.c +++ b/gdb/inf-ptrace.c @@ -186,7 +186,6 @@ inf_ptrace_target::mourn_inferior () void inf_ptrace_target::attach (const char *args, int from_tty) { - char *exec_file; pid_t pid; struct inferior *inf; @@ -210,7 +209,7 @@ inf_ptrace_target::attach (const char *args, int from_tty) if (from_tty) { - exec_file = get_exec_file (0); + const char *exec_file = get_exec_file (0); if (exec_file) printf_unfiltered (_("Attaching to program: %s, %s\n"), exec_file, diff --git a/gdb/nto-procfs.c b/gdb/nto-procfs.c index dcb0494e9c9..42b23484511 100644 --- a/gdb/nto-procfs.c +++ b/gdb/nto-procfs.c @@ -693,7 +693,6 @@ nto_procfs_target::pid_to_exec_file (const int pid) void nto_procfs_target::attach (const char *args, int from_tty) { - char *exec_file; int pid; struct inferior *inf; @@ -704,7 +703,7 @@ nto_procfs_target::attach (const char *args, int from_tty) if (from_tty) { - exec_file = (char *) get_exec_file (0); + const char *exec_file = get_exec_file (0); if (exec_file) printf_unfiltered ("Attaching to program `%s', %s\n", exec_file, @@ -1215,7 +1214,7 @@ nto_procfs_target::create_inferior (const char *exec_file, argv = xmalloc ((allargs.size () / (unsigned) 2 + 2) * sizeof (*argv)); - argv[0] = get_exec_file (1); + argv[0] = const_cast (get_exec_file (1)); if (!argv[0]) { if (exec_file) diff --git a/gdb/procfs.c b/gdb/procfs.c index 57d4b8f0bfb..ccc5e26064b 100644 --- a/gdb/procfs.c +++ b/gdb/procfs.c @@ -1870,7 +1870,6 @@ procfs_debug_inferior (procinfo *pi) void procfs_target::attach (const char *args, int from_tty) { - char *exec_file; int pid; pid = parse_pid_to_attach (args); @@ -1880,7 +1879,7 @@ procfs_target::attach (const char *args, int from_tty) if (from_tty) { - exec_file = get_exec_file (0); + const char *exec_file = get_exec_file (0); if (exec_file) printf_filtered (_("Attaching to program `%s', %s\n"), diff --git a/gdb/remote.c b/gdb/remote.c index e7a8bb61860..3c544502a85 100644 --- a/gdb/remote.c +++ b/gdb/remote.c @@ -5792,7 +5792,7 @@ extended_remote_target::attach (const char *args, int from_tty) if (from_tty) { - char *exec_file = get_exec_file (0); + const char *exec_file = get_exec_file (0); if (exec_file) printf_unfiltered (_("Attaching to program: %s, %s\n"), exec_file, diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c index d77828291c5..10d5c95d091 100644 --- a/gdb/windows-nat.c +++ b/gdb/windows-nat.c @@ -1990,7 +1990,7 @@ windows_nat_target::attach (const char *args, int from_tty) if (from_tty) { - char *exec_file = (char *) get_exec_file (0); + const char *exec_file = get_exec_file (0); if (exec_file) printf_unfiltered ("Attaching to program `%s', %s\n", exec_file, -- 2.30.2