aboutsummaryrefslogtreecommitdiff
path: root/gdb/macroscope.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2018-02-06 01:02:00 +0100
committerTom Tromey <tom@tromey.com>2018-02-08 11:46:55 -0700
commitf6c2623eb8ac7296b6d7a76657394272a71f5aee (patch)
tree7a83749c7e88dc681929f784c2896dc369aa2d1a /gdb/macroscope.c
parent8ce47547b34fddec16d1ccd801f025a56976af95 (diff)
downloadgdb-f6c2623eb8ac7296b6d7a76657394272a71f5aee.zip
gdb-f6c2623eb8ac7296b6d7a76657394272a71f5aee.tar.gz
gdb-f6c2623eb8ac7296b6d7a76657394272a71f5aee.tar.bz2
Return unique_xmalloc_ptr from macro scope functions
This changes the macro scope functions (sal_macro_scope, user_macro_scope, and default_macro_scope) to return a unique_xmalloc_ptr, then fixes up the users. This allowed for the removal of several cleanups. 2018-02-08 Tom Tromey <tom@tromey.com> * symtab.c (default_collect_symbol_completion_matches_break_on): Use unique_xmalloc_ptr. * macroscope.h: (sal_macro_scope, user_macro_scope) (default_macro_scope): Return unique_xmalloc_ptr. * macroscope.c (sal_macro_scope, user_macro_scope) (default_macro_scope): Return unique_xmalloc_ptr. * macroexp.h (macro_expand, macro_expand_once): Return unique_xmalloc_ptr. * macroexp.c (macro_expand, macro_expand_once): Return unique_xmalloc_ptr. * macrocmd.c (macro_expand_command, macro_expand_once_command) (info_macro_command, info_macros_command): Use unique_xmalloc_ptr. * compile/compile-c-support.c (write_macro_definitions): Use unique_xmalloc_ptr. * c-exp.y (c_parse): Use unique_xmalloc_ptr.
Diffstat (limited to 'gdb/macroscope.c')
-rw-r--r--gdb/macroscope.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/gdb/macroscope.c b/gdb/macroscope.c
index a944920..23d2e50 100644
--- a/gdb/macroscope.c
+++ b/gdb/macroscope.c
@@ -35,11 +35,10 @@
struct macro_table *macro_user_macros;
-struct macro_scope *
+gdb::unique_xmalloc_ptr<struct macro_scope>
sal_macro_scope (struct symtab_and_line sal)
{
struct macro_source_file *main_file, *inclusion;
- struct macro_scope *ms;
struct compunit_symtab *cust;
if (sal.symtab == NULL)
@@ -48,7 +47,7 @@ sal_macro_scope (struct symtab_and_line sal)
if (COMPUNIT_MACRO_TABLE (cust) == NULL)
return NULL;
- ms = XNEW (struct macro_scope);
+ gdb::unique_xmalloc_ptr<struct macro_scope> ms (XNEW (struct macro_scope));
main_file = macro_main (COMPUNIT_MACRO_TABLE (cust));
inclusion = macro_lookup_inclusion (main_file, sal.symtab->filename);
@@ -87,22 +86,20 @@ sal_macro_scope (struct symtab_and_line sal)
}
-struct macro_scope *
+gdb::unique_xmalloc_ptr<struct macro_scope>
user_macro_scope (void)
{
- struct macro_scope *ms;
-
- ms = XNEW (struct macro_scope);
+ gdb::unique_xmalloc_ptr<struct macro_scope> ms (XNEW (struct macro_scope));
ms->file = macro_main (macro_user_macros);
ms->line = -1;
return ms;
}
-struct macro_scope *
+gdb::unique_xmalloc_ptr<struct macro_scope>
default_macro_scope (void)
{
struct symtab_and_line sal;
- struct macro_scope *ms;
+ gdb::unique_xmalloc_ptr<struct macro_scope> ms;
struct frame_info *frame;
CORE_ADDR pc;