Use unique_xmalloc_ptr in c_type_print_base
This changes c_type_print_base to use unique_xmalloc_ptr, removing a cleanup. gdb/ChangeLog 2017-11-04 Tom Tromey <tom@tromey.com> * c-typeprint.c (c_type_print_base): Use gdb::unique_xmalloc_ptr.
This commit is contained in:
parent
9f584b37e3
commit
331b71e5ee
@ -1,3 +1,7 @@
|
||||
2017-11-04 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* c-typeprint.c (c_type_print_base): Use gdb::unique_xmalloc_ptr.
|
||||
|
||||
2017-11-04 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* linux-tdep.c (linux_core_info_proc_mappings): Use
|
||||
|
@ -1218,8 +1218,8 @@ c_type_print_base (struct type *type, struct ui_file *stream,
|
||||
for (j = 0; j < len2; j++)
|
||||
{
|
||||
const char *mangled_name;
|
||||
gdb::unique_xmalloc_ptr<char> mangled_name_holder;
|
||||
char *demangled_name;
|
||||
struct cleanup *inner_cleanup;
|
||||
const char *physname = TYPE_FN_FIELD_PHYSNAME (f, j);
|
||||
int is_full_physname_constructor =
|
||||
TYPE_FN_FIELD_CONSTRUCTOR (f, j)
|
||||
@ -1231,8 +1231,6 @@ c_type_print_base (struct type *type, struct ui_file *stream,
|
||||
if (TYPE_FN_FIELD_ARTIFICIAL (f, j))
|
||||
continue;
|
||||
|
||||
inner_cleanup = make_cleanup (null_cleanup, NULL);
|
||||
|
||||
QUIT;
|
||||
section_type = output_access_specifier
|
||||
(stream, section_type, level,
|
||||
@ -1265,12 +1263,9 @@ c_type_print_base (struct type *type, struct ui_file *stream,
|
||||
}
|
||||
if (TYPE_FN_FIELD_STUB (f, j))
|
||||
{
|
||||
char *tem;
|
||||
|
||||
/* Build something we can demangle. */
|
||||
tem = gdb_mangle_name (type, i, j);
|
||||
make_cleanup (xfree, tem);
|
||||
mangled_name = tem;
|
||||
mangled_name_holder.reset (gdb_mangle_name (type, i, j));
|
||||
mangled_name = mangled_name_holder.get ();
|
||||
}
|
||||
else
|
||||
mangled_name = TYPE_FN_FIELD_PHYSNAME (f, j);
|
||||
@ -1328,8 +1323,6 @@ c_type_print_base (struct type *type, struct ui_file *stream,
|
||||
xfree (demangled_name);
|
||||
}
|
||||
|
||||
do_cleanups (inner_cleanup);
|
||||
|
||||
fprintf_filtered (stream, ";\n");
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user