Remove uses of fprintf_symbol_filtered
I believe that many calls to fprintf_symbol_filtered are incorrect. In particular, there are some that pass a symbol's print name, like: fprintf_symbol_filtered (gdb_stdout, sym->print_name (), current_language->la_language, DMGL_ANSI); fprintf_symbol_filtered uses the "demangle" global to decide whether or not to demangle -- but print_name does this as well. This can lead to double-demangling. Normally this could be innocuous, except I also plan to change Ada demangling in a way that causes this to fail.
This commit is contained in:
parent
ba8694b650
commit
9698f71410
3 changed files with 7 additions and 17 deletions
|
@ -348,16 +348,12 @@ py_print_single_arg (struct ui_out *out,
|
|||
{
|
||||
string_file stb;
|
||||
|
||||
fprintf_symbol_filtered (&stb, fa->sym->print_name (),
|
||||
fa->sym->language (),
|
||||
DMGL_PARAMS | DMGL_ANSI);
|
||||
fputs_filtered (fa->sym->print_name (), &stb);
|
||||
if (fa->entry_kind == print_entry_values_compact)
|
||||
{
|
||||
stb.puts ("=");
|
||||
|
||||
fprintf_symbol_filtered (&stb, fa->sym->print_name (),
|
||||
fa->sym->language (),
|
||||
DMGL_PARAMS | DMGL_ANSI);
|
||||
fputs_filtered (fa->sym->print_name (), &stb);
|
||||
}
|
||||
if (fa->entry_kind == print_entry_values_only
|
||||
|| fa->entry_kind == print_entry_values_compact)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue