From 692d6f9760bc67b68a5c96baac47067fd7dfa711 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Tue, 13 Feb 2018 13:34:45 -0700 Subject: [PATCH] Constify target_so_ops::bfd_open This constifies the bfd_open method of struct target_so_ops. gdb/ChangeLog 2018-02-14 Tom Tromey * solist.h (struct target_so_ops) : Make pathname const. (solib_bfd_open): Make pathname const. * solib.c (solib_bfd_open): Make pathname const. * solib-spu.c (spu_bfd_fopen): Make name const. (spu_bfd_open): Make pathname const. * solib-darwin.c (darwin_bfd_open): Make pathname const. * solib-aix.c (solib_aix_bfd_open): Make pathname const. --- gdb/ChangeLog | 11 +++++++++++ gdb/solib-aix.c | 4 ++-- gdb/solib-darwin.c | 2 +- gdb/solib-spu.c | 6 +++--- gdb/solib.c | 2 +- gdb/solist.h | 4 ++-- 6 files changed, 20 insertions(+), 9 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 76c160acabd..7b4c5b436bb 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,14 @@ +2018-02-14 Tom Tromey + + * solist.h (struct target_so_ops) : Make pathname + const. + (solib_bfd_open): Make pathname const. + * solib.c (solib_bfd_open): Make pathname const. + * solib-spu.c (spu_bfd_fopen): Make name const. + (spu_bfd_open): Make pathname const. + * solib-darwin.c (darwin_bfd_open): Make pathname const. + * solib-aix.c (solib_aix_bfd_open): Make pathname const. + 2018-02-14 Tom Tromey * symfile.c (symfile_bfd_open): Update. diff --git a/gdb/solib-aix.c b/gdb/solib-aix.c index aa0e0d2dfbd..f11cbcd2434 100644 --- a/gdb/solib-aix.c +++ b/gdb/solib-aix.c @@ -602,7 +602,7 @@ solib_aix_in_dynsym_resolve_code (CORE_ADDR pc) /* Implement the "bfd_open" target_so_ops method. */ static gdb_bfd_ref_ptr -solib_aix_bfd_open (char *pathname) +solib_aix_bfd_open (const char *pathname) { /* The pathname is actually a synthetic filename with the following form: "/path/to/sharedlib(member.o)" (double-quotes excluded). @@ -611,7 +611,7 @@ solib_aix_bfd_open (char *pathname) FIXME: This is a little hacky. Perhaps we should provide access to the solib's lm_info here? */ const int path_len = strlen (pathname); - char *sep; + const char *sep; int filename_len; int found_file; diff --git a/gdb/solib-darwin.c b/gdb/solib-darwin.c index ed8f9da2573..cf15148c36b 100644 --- a/gdb/solib-darwin.c +++ b/gdb/solib-darwin.c @@ -617,7 +617,7 @@ darwin_lookup_lib_symbol (struct objfile *objfile, } static gdb_bfd_ref_ptr -darwin_bfd_open (char *pathname) +darwin_bfd_open (const char *pathname) { int found_file; diff --git a/gdb/solib-spu.c b/gdb/solib-spu.c index d0d63b5ef5c..943ebf5ee36 100644 --- a/gdb/solib-spu.c +++ b/gdb/solib-spu.c @@ -320,7 +320,7 @@ spu_bfd_iovec_stat (bfd *abfd, void *stream, struct stat *sb) } static gdb_bfd_ref_ptr -spu_bfd_fopen (char *name, CORE_ADDR addr) +spu_bfd_fopen (const char *name, CORE_ADDR addr) { CORE_ADDR *open_closure = XNEW (CORE_ADDR); @@ -342,9 +342,9 @@ spu_bfd_fopen (char *name, CORE_ADDR addr) /* Open shared library BFD. */ static gdb_bfd_ref_ptr -spu_bfd_open (char *pathname) +spu_bfd_open (const char *pathname) { - char *original_name = strrchr (pathname, '@'); + const char *original_name = strrchr (pathname, '@'); asection *spu_name; unsigned long long addr; int fd; diff --git a/gdb/solib.c b/gdb/solib.c index 41fba902f83..f3eea399e0e 100644 --- a/gdb/solib.c +++ b/gdb/solib.c @@ -478,7 +478,7 @@ solib_bfd_fopen (const char *pathname, int fd) /* Find shared library PATHNAME and open a BFD for it. */ gdb_bfd_ref_ptr -solib_bfd_open (char *pathname) +solib_bfd_open (const char *pathname) { int found_file; const struct bfd_arch_info *b; diff --git a/gdb/solist.h b/gdb/solist.h index 1df45e4d932..6875d1be123 100644 --- a/gdb/solist.h +++ b/gdb/solist.h @@ -129,7 +129,7 @@ struct target_so_ops int (*in_dynsym_resolve_code) (CORE_ADDR pc); /* Find and open shared library binary file. */ - gdb_bfd_ref_ptr (*bfd_open) (char *pathname); + gdb_bfd_ref_ptr (*bfd_open) (const char *pathname); /* Optional extra hook for finding and opening a solib. If TEMP_PATHNAME is non-NULL: If the file is successfully opened a @@ -204,7 +204,7 @@ extern gdb::unique_xmalloc_ptr solib_find (const char *in_pathname, extern gdb_bfd_ref_ptr solib_bfd_fopen (const char *pathname, int fd); /* Find solib binary file and open it. */ -extern gdb_bfd_ref_ptr solib_bfd_open (char *in_pathname); +extern gdb_bfd_ref_ptr solib_bfd_open (const char *in_pathname); /* FIXME: gdbarch needs to control this variable. */ extern struct target_so_ops *current_target_so_ops; -- 2.30.2