From f6c2623eb8ac7296b6d7a76657394272a71f5aee Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Tue, 6 Feb 2018 01:02:00 +0100 Subject: 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 * 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. --- gdb/macroscope.c | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) (limited to 'gdb/macroscope.c') 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 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 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 user_macro_scope (void) { - struct macro_scope *ms; - - ms = XNEW (struct macro_scope); + gdb::unique_xmalloc_ptr ms (XNEW (struct macro_scope)); ms->file = macro_main (macro_user_macros); ms->line = -1; return ms; } -struct macro_scope * +gdb::unique_xmalloc_ptr default_macro_scope (void) { struct symtab_and_line sal; - struct macro_scope *ms; + gdb::unique_xmalloc_ptr ms; struct frame_info *frame; CORE_ADDR pc; -- cgit v1.1