aboutsummaryrefslogtreecommitdiff
path: root/gdb/compile
diff options
context:
space:
mode:
authorTom Tromey <tromey@adacore.com>2019-10-15 10:57:40 -0600
committerTom Tromey <tromey@adacore.com>2019-10-15 11:03:57 -0600
commit953cff563058831ab0bf863c7655d23b5e6a5989 (patch)
treeb7c925518139ea7492e4ffdee4ef3ae6f11667ad /gdb/compile
parent81e6b8eb208c427028d919afb2b5cabbc355fc88 (diff)
downloadgdb-953cff563058831ab0bf863c7655d23b5e6a5989.zip
gdb-953cff563058831ab0bf863c7655d23b5e6a5989.tar.gz
gdb-953cff563058831ab0bf863c7655d23b5e6a5989.tar.bz2
Change gcc_target_options to return std::string
This patch was inspired by a recent review that recommended using std::string in a new implementation of the gcc_target_options gdbarch function. It changes this function to return std::string rather than an ordinary xmalloc'd string. I believe this caught a latent memory leak in compile.c:get_args. Tested on x86-64 Fedora 29. gdb/ChangeLog 2019-10-15 Tom Tromey <tromey@adacore.com> * gdbarch.h, gdbarch.c: Rebuild. * gdbarch.sh (gcc_target_options): Change return type to std::string. * compile/compile.c (get_args): Update. * nios2-tdep.c (nios2_gcc_target_options): Return std::string. * arm-linux-tdep.c (arm_linux_gcc_target_options): Return std::string. * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): Return std::string. * arch-utils.c (default_gcc_target_options): Return std::string. * arch-utils.h (default_gcc_target_options): Return std::string. * s390-tdep.c (s390_gcc_target_options): Return std::string. Change-Id: I51f61703426a323089e646da8f22320a2cafbc1f
Diffstat (limited to 'gdb/compile')
-rw-r--r--gdb/compile/compile.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gdb/compile/compile.c b/gdb/compile/compile.c
index 5c3400f..94942db 100644
--- a/gdb/compile/compile.c
+++ b/gdb/compile/compile.c
@@ -635,7 +635,7 @@ get_args (const compile_instance *compiler, struct gdbarch *gdbarch,
int argc_compiler;
char **argv_compiler;
- build_argc_argv (gdbarch_gcc_target_options (gdbarch),
+ build_argc_argv (gdbarch_gcc_target_options (gdbarch).c_str (),
argcp, argvp);
cs_producer_options = get_selected_pc_producer_options ();