diff options
author | Pedro Alves <palves@redhat.com> | 2017-04-05 19:21:33 +0100 |
---|---|---|
committer | Pedro Alves <palves@redhat.com> | 2017-04-05 19:21:33 +0100 |
commit | bde6261aed330cd8d108c387bfe659a6171525dd (patch) | |
tree | 48d29babc116b1f69d5ec97969b87288f581efef /gdb | |
parent | b38ef47f47bda5509babd768092ceb09ab98828d (diff) | |
download | binutils-bde6261aed330cd8d108c387bfe659a6171525dd.zip binutils-bde6261aed330cd8d108c387bfe659a6171525dd.tar.gz binutils-bde6261aed330cd8d108c387bfe659a6171525dd.tar.bz2 |
-Wwrite-strings: Don't initialize string command variables to empty string
-Wwrite-strings flags these initializations as requiring a cast.
However, these variables are command variables, and as such point to
heap-allocated memory. The initial allocation is always done when the
corresponding command is registered. E.g.,:
dprintf_function = xstrdup ("printf");
add_setshow_string_cmd ("dprintf-function", class_support,
&dprintf_function, _("\
Set the function to use for dynamic printf"), _("\
Show the function to use for dynamic printf"), NULL,
update_dprintf_commands, NULL,
&setlist, &showlist);
That's why we never reach a bogus attempt to free these string
literals.
So, just drop the incorrect initializations.
gdb/ChangeLog:
2017-04-05 Pedro Alves <palves@redhat.com>
* breakpoint.c (dprintf_function, dprintf_channel): Don't initialize.
* tracepoint.c (default_collect): Don't initialize.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/breakpoint.c | 4 | ||||
-rw-r--r-- | gdb/tracepoint.c | 2 |
3 files changed, 8 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 4b00247..925cb94 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2017-04-05 Pedro Alves <palves@redhat.com> + * breakpoint.c (dprintf_function, dprintf_channel): Don't initialize. + * tracepoint.c (default_collect): Don't initialize. + +2017-04-05 Pedro Alves <palves@redhat.com> + * macroexp.c (macro_buffer::shared): Now a bool. (init_buffer): Update. (init_shared_buffer): Constify 'addr' parameter. diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index ab6e9c8..f0db3e4 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -345,7 +345,7 @@ static const char *dprintf_style = dprintf_style_gdb; copied into the command, so it can be anything that GDB can evaluate to a callable address, not necessarily a function name. */ -static char *dprintf_function = ""; +static char *dprintf_function; /* The channel to use for dynamic printf if the preferred style is to call into the inferior; if a nonempty string, it will be passed to @@ -355,7 +355,7 @@ static char *dprintf_function = ""; "stderr", this could be an app-specific expression like "mystreams[curlogger]". */ -static char *dprintf_channel = ""; +static char *dprintf_channel; /* True if dprintf commands should continue to operate even if GDB has disconnected. */ diff --git a/gdb/tracepoint.c b/gdb/tracepoint.c index 2da6fdd..87ef141 100644 --- a/gdb/tracepoint.c +++ b/gdb/tracepoint.c @@ -139,7 +139,7 @@ static struct traceframe_info *traceframe_info; static struct cmd_list_element *tfindlist; /* List of expressions to collect by default at each tracepoint hit. */ -char *default_collect = ""; +char *default_collect; static int disconnected_tracing; |