2018-05-23 Tom Tromey <tom@tromey.com>
+ * complaints.c (symfile_complaints): Remove.
+ (complaint_internal): Remove "complaints" parameter.
+ (clear_complaints, vcomplaint): Remove "c" parameter.
+ (get_complaints): Remove.
+ * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
+ (dwarf2_debug_line_missing_file_complaint)
+ (dwarf2_debug_line_missing_end_sequence_complaint)
+ (dwarf2_complex_location_expr_complaint)
+ (dwarf2_const_value_length_mismatch_complaint)
+ (dwarf2_section_buffer_overflow_complaint)
+ (dwarf2_macro_malformed_definition_complaint)
+ (dwarf2_invalid_attrib_class_complaint)
+ (create_addrmap_from_index, dw2_symtab_iter_next)
+ (dw2_expand_marked_cus)
+ (dw2_debug_names_iterator::find_vec_in_debug_names)
+ (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
+ (create_debug_type_hash_table, init_cutu_and_read_dies)
+ (partial_die_parent_scope, add_partial_enumeration)
+ (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
+ (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
+ (read_import_statement, read_file_scope, create_dwo_cu_reader)
+ (create_cus_hash_table, create_dwp_hash_table)
+ (inherit_abstract_dies, read_func_scope, read_call_site_scope)
+ (dwarf2_rnglists_process, dwarf2_ranges_process)
+ (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
+ (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
+ (handle_struct_member_die, process_structure_scope)
+ (read_array_type, read_common_block, read_module_type)
+ (read_tag_pointer_type, read_typedef, read_base_type)
+ (read_subrange_type, load_partial_dies, partial_die_info::read)
+ (partial_die_info::read, partial_die_info::read)
+ (partial_die_info::read, read_checked_initial_length_and_offset)
+ (dwarf2_string_attr, read_formatted_entries)
+ (dwarf_decode_line_header)
+ (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
+ (new_symbol, dwarf2_const_value_attr, lookup_die_type)
+ (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
+ (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
+ (get_signatured_type, get_DW_AT_signature_type)
+ (decode_locdesc, file_file_name, consume_improper_spaces)
+ (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
+ (dwarf_decode_macro_bytes, dwarf_decode_macros)
+ (dwarf2_symbol_mark_computed, set_die_type)
+ (read_attribute_value): Update.
+ * stap-probe.c (handle_stap_probe, get_stap_base_address):
+ Update.
+ * dbxread.c (unknown_symtype_complaint)
+ (lbrac_mismatch_complaint, repeated_header_complaint)
+ (set_namestring, function_outside_compilation_unit_complaint)
+ (read_dbx_symtab, process_one_symbol): Update.
+ * gdbtypes.c (stub_noname_complaint): Update.
+ * windows-nat.c (handle_unload_dll): Update.
+ * coffread.c (coff_symtab_read, enter_linenos, decode_type)
+ (decode_base_type): Update.
+ * xcoffread.c (bf_notfound_complaint, ef_complaint)
+ (eb_complaint, record_include_begin, record_include_end)
+ (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
+ (process_xcoff_symbol, read_symbol)
+ (function_outside_compilation_unit_complaint)
+ (scan_xcoff_symtab): Update.
+ * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
+ * buildsym.c (finish_block_internal, make_blockvector)
+ (end_symtab_get_static_block, augment_type_symtab): Update.
+ * dtrace-probe.c (dtrace_process_dof)
+ (dtrace_static_probe_ops::get_probes): Update.
+ * complaints.h (struct complaint): Don't declare.
+ (symfile_complaints): Remove.
+ (complaint_internal): Remove "complaints" parameter.
+ (complaint): Likewise.
+ (clear_complaints): Likewise.
+ * symfile.c (syms_from_objfile_1, finish_new_objfile)
+ (reread_symbols): Update.
+ * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
+ (dwarf2_frame_cache, decode_frame_entry): Update.
+ * dwarf2loc.c (dwarf_reg_to_regnum): Update.
+ * objc-lang.c (lookup_objc_class, lookup_child_selector)
+ (info_selectors_command): Update.
+ * macrotab.c (macro_include, check_for_redefinition)
+ (macro_undef): Update.
+ * objfiles.c (filter_overlapping_sections): Update.
+ * stabsread.c (invalid_cpp_abbrev_complaint)
+ (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
+ (define_symbol, error_type, read_type, rs6000_builtin_type)
+ (stabs_method_name_from_physname, read_member_functions)
+ (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
+ (attach_fields_to_type, complain_about_struct_wipeout)
+ (read_range_type, read_args, common_block_start)
+ (common_block_end, cleanup_undefined_types_1, scan_file_globals):
+ Update.
+ * mdebugread.c (index_complaint, unknown_ext_complaint)
+ (basic_type_complaint, bad_tag_guess_complaint)
+ (bad_rfd_entry_complaint, unexpected_type_code_complaint)
+ (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
+ (parse_procedure, parse_lines)
+ (function_outside_compilation_unit_complaint)
+ (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
+ (bad_tag_guess_complaint, reg_value_complaint): Update.
+ * cp-support.c (demangled_name_complaint): Update.
+ * macroscope.c (sal_macro_scope): Update.
+ * dwarf-index-write.c (class debug_names): Update.
+
+2018-05-23 Tom Tromey <tom@tromey.com>
+
* complaints.c (clear_complaints): Remove "noisy" parameter.
* complaints.h (clear_complaints): Update.
* symfile.c (syms_from_objfile_1, finish_new_objfile)
{
if (symbol)
{
- complaint (&symfile_complaints,
- _("block end address less than block "
+ complaint (_("block end address less than block "
"start address in %s (patched it)"),
SYMBOL_PRINT_NAME (symbol));
}
else
{
- complaint (&symfile_complaints,
- _("block end address %s less than block "
+ complaint (_("block end address %s less than block "
"start address %s (patched it)"),
paddress (gdbarch, BLOCK_END (block)),
paddress (gdbarch, BLOCK_START (block)));
{
if (symbol)
{
- complaint (&symfile_complaints,
- _("inner block not inside outer block in %s"),
+ complaint (_("inner block not inside outer block in %s"),
SYMBOL_PRINT_NAME (symbol));
}
else
{
- complaint (&symfile_complaints,
- _("inner block (%s-%s) not "
+ complaint (_("inner block (%s-%s) not "
"inside outer block (%s-%s)"),
paddress (gdbarch, BLOCK_START (pblock->block)),
paddress (gdbarch, BLOCK_END (pblock->block)),
CORE_ADDR start
= BLOCK_START (BLOCKVECTOR_BLOCK (blockvector, i));
- complaint (&symfile_complaints, _("block at %s out of order"),
+ complaint (_("block at %s out of order"),
hex_string ((LONGEST) start));
}
}
same. FIXME: Find out why it is happening. This is not
believed to happen in most cases (even for coffread.c);
it used to be an abort(). */
- complaint (&symfile_complaints,
- _("Context stack not empty in end_symtab"));
+ complaint (_("Context stack not empty in end_symtab"));
context_stack_depth = 0;
}
}
if (context_stack_depth > 0)
{
- complaint (&symfile_complaints,
- _("Context stack not empty in augment_type_symtab"));
+ complaint (_("Context stack not empty in augment_type_symtab"));
context_stack_depth = 0;
}
if (pending_blocks != NULL)
- complaint (&symfile_complaints, _("Blocks in a type symtab"));
+ complaint (_("Blocks in a type symtab"));
if (pending_macros != NULL)
- complaint (&symfile_complaints, _("Macro in a type symtab"));
+ complaint (_("Macro in a type symtab"));
if (have_line_numbers)
- complaint (&symfile_complaints,
- _("Line numbers recorded in a type symtab"));
+ complaint (_("Line numbers recorded in a type symtab"));
if (file_symbols != NULL)
{
case C_LINE:
case C_ALIAS:
case C_HIDDEN:
- complaint (&symfile_complaints,
- _("Bad n_sclass for symbol %s"),
+ complaint (_("Bad n_sclass for symbol %s"),
cs->c_name);
break;
/* main_aux.x_sym.x_misc.x_lnsz.x_lnno
contains line number of '{' }. */
if (cs->c_naux != 1)
- complaint (&symfile_complaints,
- _("`.bf' symbol %d has no aux entry"),
+ complaint (_("`.bf' symbol %d has no aux entry"),
cs->c_symnum);
fcn_first_line = main_aux.x_sym.x_misc.x_lnsz.x_lnno;
fcn_first_line_addr = cs->c_value;
if (context_stack_depth <= 0)
{ /* We attempted to pop an empty context stack. */
- complaint (&symfile_complaints,
- _("`.ef' symbol without matching `.bf' "
+ complaint (_("`.ef' symbol without matching `.bf' "
"symbol ignored starting at symnum %d"),
cs->c_symnum);
within_function = 0;
/* Stack must be empty now. */
if (context_stack_depth > 0 || newobj == NULL)
{
- complaint (&symfile_complaints,
- _("Unmatched .ef symbol(s) ignored "
+ complaint (_("Unmatched .ef symbol(s) ignored "
"starting at symnum %d"),
cs->c_symnum);
within_function = 0;
}
if (cs->c_naux != 1)
{
- complaint (&symfile_complaints,
- _("`.ef' symbol %d has no aux entry"),
+ complaint (_("`.ef' symbol %d has no aux entry"),
cs->c_symnum);
fcn_last_line = 0x7FFFFFFF;
}
{
if (context_stack_depth <= 0)
{ /* We attempted to pop an empty context stack. */
- complaint (&symfile_complaints,
- _("`.eb' symbol without matching `.bb' "
+ complaint (_("`.eb' symbol without matching `.bb' "
"symbol ignored starting at symnum %d"),
cs->c_symnum);
break;
newobj = pop_context ();
if (depth-- != newobj->depth)
{
- complaint (&symfile_complaints,
- _("Mismatched .eb symbol ignored "
+ complaint (_("Mismatched .eb symbol ignored "
"starting at symnum %d"),
symnum);
break;
return;
if (file_offset < linetab_offset)
{
- complaint (&symfile_complaints,
- _("Line number pointer %ld lower than start of line numbers"),
+ complaint (_("Line number pointer %ld lower than start of line numbers"),
file_offset);
if (file_offset > linetab_size) /* Too big to be an offset? */
return;
}
else
{
- complaint (&symfile_complaints,
- _("Symbol table entry for %s has bad tagndx value"),
+ complaint (_("Symbol table entry for %s has bad tagndx value"),
cs->c_name);
/* And fall through to decode_base_type... */
}
else
return objfile_type (objfile)->builtin_unsigned_long;
}
- complaint (&symfile_complaints,
- _("Unexpected type for symbol %s"), cs->c_name);
+ complaint (_("Unexpected type for symbol %s"), cs->c_name);
return objfile_type (objfile)->builtin_void;
}
\f
ISOLATED_MESSAGE,
symfile_explanations
};
-struct complaints *symfile_complaints = &symfile_complaint_book;
-
-/* Wrapper function to, on-demand, fill in a complaints object. */
-
-static struct complaints *
-get_complaints (struct complaints **c)
-{
- if ((*c) != NULL)
- return (*c);
- (*c) = XNEW (struct complaints);
- (*c)->root = &complaint_sentinel;
- (*c)->series = ISOLATED_MESSAGE;
- (*c)->explanation = NULL;
- return (*c);
-}
static struct complain * ATTRIBUTE_PRINTF (4, 0)
find_complaint (struct complaints *complaints, const char *file,
/* Print a complaint, and link the complaint block into a chain for
later handling. */
-static void ATTRIBUTE_PRINTF (4, 0)
-vcomplaint (struct complaints **c, const char *file,
+static void ATTRIBUTE_PRINTF (3, 0)
+vcomplaint (const char *file,
int line, const char *fmt,
va_list args)
{
- struct complaints *complaints = get_complaints (c);
- struct complain *complaint = find_complaint (complaints, file,
+ struct complain *complaint = find_complaint (&symfile_complaint_book, file,
line, fmt);
enum complaint_series series;
- gdb_assert (complaints != NULL);
-
complaint->counter++;
if (complaint->counter > stop_whining)
return;
- series = complaints->series;
+ series = symfile_complaint_book.series;
/* Pass 'fmt' instead of 'complaint->fmt' to printf-like callees
from here on, to avoid "format string is not a string literal"
(*deprecated_warning_hook) (fmt, args);
else
{
- if (complaints->explanation == NULL)
+ if (symfile_complaint_book.explanation == NULL)
/* A [v]warning() call always appends a newline. */
vwarning (fmt, args);
else
begin_line ();
/* XXX: i18n */
fprintf_filtered (gdb_stderr, "%s%s%s",
- complaints->explanation[series].prefix,
+ symfile_complaint_book.explanation[series].prefix,
msg.c_str (),
- complaints->explanation[series].postfix);
+ symfile_complaint_book.explanation[series].postfix);
/* Force a line-break after any isolated message. */
if (series == ISOLATED_MESSAGE)
/* It would be really nice to use begin_line() here.
}
void
-complaint_internal (struct complaints **complaints, const char *fmt, ...)
+complaint_internal (const char *fmt, ...)
{
va_list args;
va_start (args, fmt);
- vcomplaint (complaints, NULL/*file*/, 0/*line*/, fmt, args);
+ vcomplaint (NULL/*file*/, 0/*line*/, fmt, args);
va_end (args);
}
complaints (rather than being interleaved with other messages). */
void
-clear_complaints (struct complaints **c, int less_verbose)
+clear_complaints (int less_verbose)
{
- struct complaints *complaints = get_complaints (c);
struct complain *p;
- for (p = complaints->root; p != NULL; p = p->next)
+ for (p = symfile_complaint_book.root; p != NULL; p = p->next)
{
p->counter = 0;
}
if (!less_verbose)
- complaints->series = ISOLATED_MESSAGE;
+ symfile_complaint_book.series = ISOLATED_MESSAGE;
else
- complaints->series = SHORT_FIRST_MESSAGE;
+ symfile_complaint_book.series = SHORT_FIRST_MESSAGE;
}
static void
particular category. */
struct complaints;
-/* Predefined categories. */
-extern struct complaints *symfile_complaints;
-
/* Helper for complaint. */
-extern void complaint_internal (struct complaints **complaints,
- const char *fmt, ...)
- ATTRIBUTE_PRINTF (2, 3);
+extern void complaint_internal (const char *fmt, ...)
+ ATTRIBUTE_PRINTF (1, 2);
/* Register a complaint. This is a macro around complaint_internal to
avoid computing complaint's arguments when complaints are disabled.
Running FMT via gettext [i.e., _(FMT)] can be quite expensive, for
example. */
-#define complaint(COMPLAINTS, FMT, ...) \
+#define complaint(FMT, ...) \
do \
{ \
extern int stop_whining; \
\
if (stop_whining > 0) \
- complaint_internal (COMPLAINTS, FMT, ##__VA_ARGS__); \
+ complaint_internal (FMT, ##__VA_ARGS__); \
} \
while (0)
noisy is 1, we are in a noisy command, and our caller will print
enough context for the user to figure it out. */
-extern void clear_complaints (struct complaints **complaints,
- int less_verbose);
+extern void clear_complaints (int less_verbose);
#endif /* !defined (COMPLAINTS_H) */
static void
demangled_name_complaint (const char *name)
{
- complaint (&symfile_complaints,
- "unexpected demangled name '%s'", name);
+ complaint ("unexpected demangled name '%s'", name);
}
/* If NAME is the fully-qualified name of a C++
static void
unknown_symtype_complaint (const char *arg1)
{
- complaint (&symfile_complaints, _("unknown symbol type %s"), arg1);
+ complaint (_("unknown symbol type %s"), arg1);
}
static void
lbrac_mismatch_complaint (int arg1)
{
- complaint (&symfile_complaints,
- _("N_LBRAC/N_RBRAC symbol mismatch at symtab pos %d"), arg1);
+ complaint (_("N_LBRAC/N_RBRAC symbol mismatch at symtab pos %d"), arg1);
}
static void
repeated_header_complaint (const char *arg1, int arg2)
{
- complaint (&symfile_complaints,
- _("\"repeated\" header file %s not "
+ complaint (_("\"repeated\" header file %s not "
"previously seen, at symtab pos %d"),
arg1, arg2);
}
>= DBX_STRINGTAB_SIZE (objfile)
|| nlist->n_strx + file_string_table_offset < nlist->n_strx)
{
- complaint (&symfile_complaints,
- _("bad string table offset in symbol %d"),
+ complaint (_("bad string table offset in symbol %d"),
symnum);
namestring = "<bad string table offset>";
}
static void
function_outside_compilation_unit_complaint (const char *arg1)
{
- complaint (&symfile_complaints,
- _("function `%s' appears to be defined "
+ complaint (_("function `%s' appears to be defined "
"outside of all compilation units"),
arg1);
}
{
/* FIXME: we should not get here without a PST to work on.
Attempt to recover. */
- complaint (&symfile_complaints,
- _("N_BINCL %s not in entries for "
+ complaint (_("N_BINCL %s not in entries for "
"any file, at symtab pos %d"),
namestring, symnum);
continue;
time searching to the end of every string looking for
a backslash. */
- complaint (&symfile_complaints,
- _("unknown symbol descriptor `%c'"),
+ complaint (_("unknown symbol descriptor `%c'"),
p[1]);
/* Ignore it; perhaps it is an extension that we don't
2000 would output N_LSYM entries after N_LBRAC
entries. As a consequence, these symbols are simply
discarded. Complain if this is the case. */
- complaint (&symfile_complaints,
- _("misplaced N_LBRAC entry; discarding local "
+ complaint (_("misplaced N_LBRAC entry; discarding local "
"symbols which have no enclosing block"));
}
local_symbols = newobj->locals;
??? Which compilers? Is this ever harmful?. */
if (newobj->start_addr > valu)
{
- complaint (&symfile_complaints,
- _("block start larger than block end"));
+ complaint (_("block start larger than block end"));
newobj->start_addr = valu;
}
/* Make a block for the local symbols within. */
if (context_stack_depth > 1)
{
- complaint (&symfile_complaints,
- _("unmatched N_LBRAC before symtab pos %d"),
+ complaint (_("unmatched N_LBRAC before symtab pos %d"),
symnum);
break;
}
return;
invalid_dof_data:
- complaint (&symfile_complaints,
- _("skipping section '%s' which does not contain valid DOF data."),
+ complaint (_("skipping section '%s' which does not contain valid DOF data."),
sect->name);
}
/* Read the contents of the DOF section and then process it to
extract the information of any probe defined into it. */
if (!bfd_malloc_and_get_section (abfd, sect, &dof))
- complaint (&symfile_complaints,
- _("could not obtain the contents of"
+ complaint (_("could not obtain the contents of"
"section '%s' in objfile `%s'."),
sect->name, abfd->filename);
= m_str_table.emplace (c_str_view (s),
data - dwarf2_per_objfile->str.buffer);
if (!insertpair.second)
- complaint (&symfile_complaints,
- _("Duplicate string \"%s\" in "
+ complaint (_("Duplicate string \"%s\" in "
".debug_str section [in module %s]"),
s, bfd_get_filename (m_abfd));
data += strlen (s) + 1;
{
int regnum = dwarf_reg_to_regnum (gdbarch, reg);
- complaint (&symfile_complaints, _("\
+ complaint (_("\
incomplete CFI data; DW_CFA_restore unspecified\n\
register %s (#%d) at %s"),
gdbarch_register_name (gdbarch, regnum), regnum,
if (old_rs == NULL)
{
- complaint (&symfile_complaints, _("\
+ complaint (_("\
bad CFI data; mismatched DW_CFA_restore_state at %s"),
paddress (gdbarch, fs->pc));
}
if (fs.regs.reg[column].how == DWARF2_FRAME_REG_UNSPECIFIED)
{
if (cache->reg[regnum].how == DWARF2_FRAME_REG_UNSPECIFIED)
- complaint (&symfile_complaints, _("\
+ complaint (_("\
incomplete CFI data; unspecified registers (e.g., %s) at %s"),
gdbarch_register_name (gdbarch, regnum),
paddress (gdbarch, fs.pc));
break;
case ALIGN4:
- complaint (&symfile_complaints, _("\
+ complaint (_("\
Corrupt data in %s:%s; align 4 workaround apparently succeeded"),
unit->dwarf_frame_section->owner->filename,
unit->dwarf_frame_section->name);
break;
case ALIGN8:
- complaint (&symfile_complaints, _("\
+ complaint (_("\
Corrupt data in %s:%s; align 8 workaround apparently succeeded"),
unit->dwarf_frame_section->owner->filename,
unit->dwarf_frame_section->name);
break;
default:
- complaint (&symfile_complaints,
- _("Corrupt data in %s:%s"),
+ complaint (_("Corrupt data in %s:%s"),
unit->dwarf_frame_section->owner->filename,
unit->dwarf_frame_section->name);
break;
if (reg == -1)
{
- complaint (&symfile_complaints,
- _("bad DWARF register number %d"), dwarf_reg);
+ complaint (_("bad DWARF register number %d"), dwarf_reg);
}
return reg;
}
static void
dwarf2_statement_list_fits_in_line_number_section_complaint (void)
{
- complaint (&symfile_complaints,
- _("statement list doesn't fit in .debug_line section"));
+ complaint (_("statement list doesn't fit in .debug_line section"));
}
static void
dwarf2_debug_line_missing_file_complaint (void)
{
- complaint (&symfile_complaints,
- _(".debug_line section has line data without a file"));
+ complaint (_(".debug_line section has line data without a file"));
}
static void
dwarf2_debug_line_missing_end_sequence_complaint (void)
{
- complaint (&symfile_complaints,
- _(".debug_line section has line "
+ complaint (_(".debug_line section has line "
"program sequence without an end"));
}
static void
dwarf2_complex_location_expr_complaint (void)
{
- complaint (&symfile_complaints, _("location expression too complex"));
+ complaint (_("location expression too complex"));
}
static void
dwarf2_const_value_length_mismatch_complaint (const char *arg1, int arg2,
int arg3)
{
- complaint (&symfile_complaints,
- _("const value length mismatch for '%s', got %d, expected %d"),
+ complaint (_("const value length mismatch for '%s', got %d, expected %d"),
arg1, arg2, arg3);
}
static void
dwarf2_section_buffer_overflow_complaint (struct dwarf2_section_info *section)
{
- complaint (&symfile_complaints,
- _("debug info runs off end of %s section"
+ complaint (_("debug info runs off end of %s section"
" [in module %s]"),
get_section_name (section),
get_section_file_name (section));
static void
dwarf2_macro_malformed_definition_complaint (const char *arg1)
{
- complaint (&symfile_complaints,
- _("macro debug info contains a "
+ complaint (_("macro debug info contains a "
"malformed macro definition:\n`%s'"),
arg1);
}
static void
dwarf2_invalid_attrib_class_complaint (const char *arg1, const char *arg2)
{
- complaint (&symfile_complaints,
- _("invalid attribute class or form for '%s' in '%s'"),
+ complaint (_("invalid attribute class or form for '%s' in '%s'"),
arg1, arg2);
}
if (lo > hi)
{
- complaint (&symfile_complaints,
- _(".gdb_index address table has invalid range (%s - %s)"),
+ complaint (_(".gdb_index address table has invalid range (%s - %s)"),
hex_string (lo), hex_string (hi));
continue;
}
if (cu_index >= dwarf2_per_objfile->all_comp_units.size ())
{
- complaint (&symfile_complaints,
- _(".gdb_index address table has invalid CU number %u"),
+ complaint (_(".gdb_index address table has invalid CU number %u"),
(unsigned) cu_index);
continue;
}
if (cu_index >= (dwarf2_per_objfile->all_comp_units.size ()
+ dwarf2_per_objfile->all_type_units.size ()))
{
- complaint (&symfile_complaints,
- _(".gdb_index entry has bad CU index"
+ complaint (_(".gdb_index entry has bad CU index"
" [in module %s]"),
objfile_name (dwarf2_per_objfile->objfile));
continue;
if (cu_index >= (dwarf2_per_objfile->all_comp_units.size ()
+ dwarf2_per_objfile->all_type_units.size ()))
{
- complaint (&symfile_complaints,
- _(".gdb_index entry has bad CU index"
+ complaint (_(".gdb_index entry has bad CU index"
" [in module %s]"),
objfile_name (dwarf2_per_objfile->objfile));
continue;
--namei;
if (namei >= map.name_count)
{
- complaint (&symfile_complaints,
- _("Wrong .debug_names with name index %u but name_count=%u "
+ complaint (_("Wrong .debug_names with name index %u but name_count=%u "
"[in module %s]"),
namei, map.name_count,
objfile_name (map.dwarf2_per_objfile->objfile));
#if 0 /* An expensive sanity check. */
if (namei_full_hash != dwarf5_djb_hash (namei_string))
{
- complaint (&symfile_complaints,
- _("Wrong .debug_names hash for string at index %u "
+ complaint (_("Wrong .debug_names hash for string at index %u "
"[in module %s]"),
namei, objfile_name (dwarf2_per_objfile->objfile));
return NULL;
{
if (namei >= map.name_count)
{
- complaint (&symfile_complaints,
- _("Wrong .debug_names with name index %u but name_count=%u "
+ complaint (_("Wrong .debug_names with name index %u but name_count=%u "
"[in module %s]"),
namei, map.name_count,
objfile_name (map.dwarf2_per_objfile->objfile));
const auto indexval_it = m_map.abbrev_map.find (abbrev);
if (indexval_it == m_map.abbrev_map.cend ())
{
- complaint (&symfile_complaints,
- _("Wrong .debug_names undefined abbrev code %s "
+ complaint (_("Wrong .debug_names undefined abbrev code %s "
"[in module %s]"),
pulongest (abbrev), objfile_name (objfile));
return NULL;
m_addr += bytes_read;
break;
default:
- complaint (&symfile_complaints,
- _("Unsupported .debug_names form %s [in module %s]"),
+ complaint (_("Unsupported .debug_names form %s [in module %s]"),
dwarf_form_name (attr.form),
objfile_name (objfile));
return NULL;
/* Don't crash on bad data. */
if (ull >= dwarf2_per_objfile->all_comp_units.size ())
{
- complaint (&symfile_complaints,
- _(".debug_names entry has bad CU index %s"
+ complaint (_(".debug_names entry has bad CU index %s"
" [in module %s]"),
pulongest (ull),
objfile_name (dwarf2_per_objfile->objfile));
/* Don't crash on bad data. */
if (ull >= dwarf2_per_objfile->all_type_units.size ())
{
- complaint (&symfile_complaints,
- _(".debug_names entry has bad TU index %s"
+ complaint (_(".debug_names entry has bad TU index %s"
" [in module %s]"),
pulongest (ull),
objfile_name (dwarf2_per_objfile->objfile));
dup_sect_off = dup_tu->per_cu.sect_off;
}
- complaint (&symfile_complaints,
- _("debug type entry at offset %s is duplicate to"
+ complaint (_("debug type entry at offset %s is duplicate to"
" the entry at offset %s, signature %s"),
sect_offset_str (sect_off), sect_offset_str (dup_sect_off),
hex_string (header.signature));
if (has_children)
{
- complaint (&symfile_complaints,
- _("compilation unit with DW_AT_GNU_dwo_name"
+ complaint (_("compilation unit with DW_AT_GNU_dwo_name"
" has children (offset %s) [in module %s]"),
sect_offset_str (this_cu->sect_off),
bfd_get_filename (abfd));
/* FIXME drow/2004-04-01: What should we be doing with
function-local names? For partial symbols, we should probably be
ignoring them. */
- complaint (&symfile_complaints,
- _("unhandled containing DIE tag %d for DIE at %s"),
+ complaint (_("unhandled containing DIE tag %d for DIE at %s"),
parent->tag, sect_offset_str (pdi->sect_off));
parent->scope = grandparent_scope;
}
while (pdi)
{
if (pdi->tag != DW_TAG_enumerator || pdi->name == NULL)
- complaint (&symfile_complaints, _("malformed enumerator DIE ignored"));
+ complaint (_("malformed enumerator DIE ignored"));
else
add_partial_symbol (pdi, cu);
pdi = pdi->die_sibling;
{
read_attribute (reader, &attr, &abbrev->attrs[i], info_ptr);
if (attr.form == DW_FORM_ref_addr)
- complaint (&symfile_complaints,
- _("ignoring absolute DW_AT_sibling"));
+ complaint (_("ignoring absolute DW_AT_sibling"));
else
{
sect_offset off = dwarf2_get_ref_die_offset (&attr);
const gdb_byte *sibling_ptr = buffer + to_underlying (off);
if (sibling_ptr < info_ptr)
- complaint (&symfile_complaints,
- _("DW_AT_sibling points backwards"));
+ complaint (_("DW_AT_sibling points backwards"));
else if (sibling_ptr > reader->buffer_end)
dwarf2_section_buffer_overflow_complaint (reader->die_section);
else
struct objfile *objfile
= cu->per_cu->dwarf2_per_objfile->objfile;
if (strcmp (package_name, this_package_name) != 0)
- complaint (&symfile_complaints,
- _("Symtab %s has objects from two different Go packages: %s and %s"),
+ complaint (_("Symtab %s has objects from two different Go packages: %s and %s"),
(symbol_symtab (sym) != NULL
? symtab_to_filename_for_display
(symbol_symtab (sym))
|| (TYPE_FIELD_LOC_KIND (field_type, index)
!= FIELD_LOC_KIND_BITPOS))
{
- complaint (&symfile_complaints,
- _("Could not parse Rust enum encoding string \"%s\""
+ complaint (_("Could not parse Rust enum encoding string \"%s\""
"[in module %s]"),
TYPE_FIELD_NAME (type, 0),
objfile_name (objfile));
cu->processing_has_namespace_info = 1;
if (die->child != NULL && (die->tag == DW_TAG_imported_declaration
|| cu->language != language_fortran))
- complaint (&symfile_complaints, _("Tag '%s' has unexpected children"),
+ complaint (_("Tag '%s' has unexpected children"),
dwarf_tag_name (die->tag));
read_import_statement (die, cu);
break;
attr = dwarf2_attr (child, DW_AT_type, cu);
if (attr == NULL)
{
- complaint (&symfile_complaints,
- _("template parameter missing DW_AT_type"));
+ complaint (_("template parameter missing DW_AT_type"));
buf.puts ("UNKNOWN_TYPE");
continue;
}
attr = dwarf2_attr (child, DW_AT_const_value, cu);
if (attr == NULL)
{
- complaint (&symfile_complaints,
- _("template parameter missing "
+ complaint (_("template parameter missing "
"DW_AT_const_value"));
buf.puts ("UNKNOWN_VALUE");
continue;
compute DW_AT_linkage_name incorrectly. But in such case
GDB would need to be bug-to-bug compatible. */
- complaint (&symfile_complaints,
- _("Computed physname <%s> does not match demangled <%s> "
+ complaint (_("Computed physname <%s> does not match demangled <%s> "
"(from linkage <%s>) - DIE at %s [in module %s]"),
physname, canon, mangled, sect_offset_str (die->sect_off),
objfile_name (objfile));
if (num == MAX_NESTED_IMPORTED_DECLARATIONS)
{
- complaint (&symfile_complaints,
- _("DIE at %s has too many recursively imported "
+ complaint (_("DIE at %s has too many recursively imported "
"declarations"), sect_offset_str (d->sect_off));
return 0;
}
import_attr = dwarf2_attr (die, DW_AT_import, cu);
if (import_attr == NULL)
{
- complaint (&symfile_complaints, _("Tag '%s' has no DW_AT_import"),
+ complaint (_("Tag '%s' has no DW_AT_import"),
dwarf_tag_name (die->tag));
return;
}
if (child_die->tag != DW_TAG_imported_declaration)
{
- complaint (&symfile_complaints,
- _("child DW_TAG_imported_declaration expected "
+ complaint (_("child DW_TAG_imported_declaration expected "
"- DIE at %s [in module %s]"),
sect_offset_str (child_die->sect_off),
objfile_name (objfile));
import_attr = dwarf2_attr (child_die, DW_AT_import, cu);
if (import_attr == NULL)
{
- complaint (&symfile_complaints, _("Tag '%s' has no DW_AT_import"),
+ complaint (_("Tag '%s' has no DW_AT_import"),
dwarf_tag_name (child_die->tag));
continue;
}
imported_name = dwarf2_name (imported_die, imported_cu);
if (imported_name == NULL)
{
- complaint (&symfile_complaints,
- _("child DW_TAG_imported_declaration has unknown "
+ complaint (_("child DW_TAG_imported_declaration has unknown "
"imported name - DIE at %s [in module %s]"),
sect_offset_str (child_die->sect_off),
objfile_name (objfile));
if (attr && cu->line_header)
{
if (dwarf2_attr (die, DW_AT_macro_info, cu))
- complaint (&symfile_complaints,
- _("CU refers to both DW_AT_macros and DW_AT_macro_info"));
+ complaint (_("CU refers to both DW_AT_macros and DW_AT_macro_info"));
dwarf_decode_macros (cu, DW_UNSND (attr), 1);
}
attr = dwarf2_attr (comp_unit_die, DW_AT_GNU_dwo_id, cu);
if (attr == NULL)
{
- complaint (&symfile_complaints,
- _("Dwarf Error: debug entry at offset %s is missing"
+ complaint (_("Dwarf Error: debug entry at offset %s is missing"
" its dwo_id [in module %s]"),
sect_offset_str (sect_off), dwo_file->dwo_name);
return;
const struct dwo_unit *dup_cu = (const struct dwo_unit *)*slot;
sect_offset dup_sect_off = dup_cu->sect_off;
- complaint (&symfile_complaints,
- _("debug cu entry at offset %s is duplicate to"
+ complaint (_("debug cu entry at offset %s is duplicate to"
" the entry at offset %s, signature %s"),
sect_offset_str (sect_off), sect_offset_str (dup_sect_off),
hex_string (dwo_unit->signature));
if (nr_slots != 0 || nr_units != 0
|| (version == 2 && nr_columns != 0))
{
- complaint (&symfile_complaints,
- _("Empty DWP but nr_slots,nr_units,nr_columns not"
+ complaint (_("Empty DWP but nr_slots,nr_units,nr_columns not"
" all zero [in modules %s]"),
dwp_file->name);
}
if (die->tag != origin_die->tag
&& !(die->tag == DW_TAG_inlined_subroutine
&& origin_die->tag == DW_TAG_subprogram))
- complaint (&symfile_complaints,
- _("DIE %s and its abstract origin %s have different tags"),
+ complaint (_("DIE %s and its abstract origin %s have different tags"),
sect_offset_str (die->sect_off),
sect_offset_str (origin_die->sect_off));
if (child_die->tag != child_origin_die->tag
&& !(child_die->tag == DW_TAG_inlined_subroutine
&& child_origin_die->tag == DW_TAG_subprogram))
- complaint (&symfile_complaints,
- _("Child DIE %s and its abstract origin %s have "
+ complaint (_("Child DIE %s and its abstract origin %s have "
"different tags"),
sect_offset_str (child_die->sect_off),
sect_offset_str (child_origin_die->sect_off));
if (child_origin_die->parent != origin_die)
- complaint (&symfile_complaints,
- _("Child DIE %s and its abstract origin %s have "
+ complaint (_("Child DIE %s and its abstract origin %s have "
"different parents"),
sect_offset_str (child_die->sect_off),
sect_offset_str (child_origin_die->sect_off));
sect_offset *offsets_end = offsets.data () + offsets.size ();
for (offsetp = offsets.data () + 1; offsetp < offsets_end; offsetp++)
if (offsetp[-1] == *offsetp)
- complaint (&symfile_complaints,
- _("Multiple children of DIE %s refer "
+ complaint (_("Multiple children of DIE %s refer "
"to DIE %s as their abstract origin"),
sect_offset_str (die->sect_off), sect_offset_str (*offsetp));
illegal according to the DWARF standard. */
if (name == NULL)
{
- complaint (&symfile_complaints,
- _("missing name for subprogram DIE at %s"),
+ complaint (_("missing name for subprogram DIE at %s"),
sect_offset_str (die->sect_off));
return;
}
{
attr = dwarf2_attr (die, DW_AT_external, cu);
if (!attr || !DW_UNSND (attr))
- complaint (&symfile_complaints,
- _("cannot get low and high bounds "
+ complaint (_("cannot get low and high bounds "
"for subprogram DIE at %s"),
sect_offset_str (die->sect_off));
return;
}
if (!attr)
{
- complaint (&symfile_complaints,
- _("missing DW_AT_call_return_pc for DW_TAG_call_site "
+ complaint (_("missing DW_AT_call_return_pc for DW_TAG_call_site "
"DIE %s [in module %s]"),
sect_offset_str (die->sect_off), objfile_name (objfile));
return;
slot = htab_find_slot (cu->call_site_htab, &call_site_local, INSERT);
if (*slot != NULL)
{
- complaint (&symfile_complaints,
- _("Duplicate PC %s for DW_TAG_call_site "
+ complaint (_("Duplicate PC %s for DW_TAG_call_site "
"DIE %s [in module %s]"),
paddress (gdbarch, pc), sect_offset_str (die->sect_off),
objfile_name (objfile));
if (child_die->tag != DW_TAG_call_site_parameter
&& child_die->tag != DW_TAG_GNU_call_site_parameter)
{
- complaint (&symfile_complaints,
- _("Tag %d is not DW_TAG_call_site_parameter in "
+ complaint (_("Tag %d is not DW_TAG_call_site_parameter in "
"DW_TAG_call_site child DIE %s [in module %s]"),
child_die->tag, sect_offset_str (child_die->sect_off),
objfile_name (objfile));
TYPE_TAIL_CALL_LIST (func_type) = call_site;
}
else
- complaint (&symfile_complaints,
- _("Cannot find function owning DW_TAG_call_site "
+ complaint (_("Cannot find function owning DW_TAG_call_site "
"DIE %s [in module %s]"),
sect_offset_str (die->sect_off), objfile_name (objfile));
}
if (target_physname == NULL)
target_physname = dwarf2_physname (NULL, target_die, target_cu);
if (target_physname == NULL)
- complaint (&symfile_complaints,
- _("DW_AT_call_target target DIE has invalid "
+ complaint (_("DW_AT_call_target target DIE has invalid "
"physname, for referencing DIE %s [in module %s]"),
sect_offset_str (die->sect_off), objfile_name (objfile));
else
/* DW_AT_entry_pc should be preferred. */
if (dwarf2_get_pc_bounds (target_die, &lowpc, NULL, target_cu, NULL)
<= PC_BOUNDS_INVALID)
- complaint (&symfile_complaints,
- _("DW_AT_call_target target DIE has invalid "
+ complaint (_("DW_AT_call_target target DIE has invalid "
"low pc, for referencing DIE %s [in module %s]"),
sect_offset_str (die->sect_off), objfile_name (objfile));
else
}
}
else
- complaint (&symfile_complaints,
- _("DW_TAG_call_site DW_AT_call_target is neither "
+ complaint (_("DW_TAG_call_site DW_AT_call_target is neither "
"block nor reference, for DIE %s [in module %s]"),
sect_offset_str (die->sect_off), objfile_name (objfile));
/* As DW_OP_GNU_parameter_ref uses CU-relative offset this
binding can be done only inside one CU. Such referenced DIE
therefore cannot be even moved to DW_TAG_partial_unit. */
- complaint (&symfile_complaints,
- _("DW_AT_call_parameter offset is not in CU for "
+ complaint (_("DW_AT_call_parameter offset is not in CU for "
"DW_TAG_call_site child DIE %s [in module %s]"),
sect_offset_str (child_die->sect_off),
objfile_name (objfile));
}
else if (loc == NULL || origin != NULL || !attr_form_is_block (loc))
{
- complaint (&symfile_complaints,
- _("No DW_FORM_block* DW_AT_location for "
+ complaint (_("No DW_FORM_block* DW_AT_location for "
"DW_TAG_call_site child DIE %s [in module %s]"),
sect_offset_str (child_die->sect_off), objfile_name (objfile));
continue;
parameter->kind = CALL_SITE_PARAMETER_FB_OFFSET;
else
{
- complaint (&symfile_complaints,
- _("Only single DW_OP_reg or DW_OP_fbreg is supported "
+ complaint (_("Only single DW_OP_reg or DW_OP_fbreg is supported "
"for DW_FORM_block* DW_AT_location is supported for "
"DW_TAG_call_site child DIE %s "
"[in module %s]"),
attr = dwarf2_attr (child_die, DW_AT_GNU_call_site_value, cu);
if (!attr_form_is_block (attr))
{
- complaint (&symfile_complaints,
- _("No DW_FORM_block* DW_AT_call_value for "
+ complaint (_("No DW_FORM_block* DW_AT_call_value for "
"DW_TAG_call_site child DIE %s [in module %s]"),
sect_offset_str (child_die->sect_off),
objfile_name (objfile));
if (attr)
{
if (!attr_form_is_block (attr))
- complaint (&symfile_complaints,
- _("No DW_FORM_block* DW_AT_call_data_value for "
+ complaint (_("No DW_FORM_block* DW_AT_call_data_value for "
"DW_TAG_call_site child DIE %s [in module %s]"),
sect_offset_str (child_die->sect_off),
objfile_name (objfile));
dwarf2_read_section (objfile, &dwarf2_per_objfile->rnglists);
if (offset >= dwarf2_per_objfile->rnglists.size)
{
- complaint (&symfile_complaints,
- _("Offset %d out of bounds for DW_AT_ranges attribute"),
+ complaint (_("Offset %d out of bounds for DW_AT_ranges attribute"),
offset);
return false;
}
buffer += bytes_read;
break;
default:
- complaint (&symfile_complaints,
- _("Invalid .debug_rnglists data (no base address)"));
+ complaint (_("Invalid .debug_rnglists data (no base address)"));
return false;
}
if (rlet == DW_RLE_end_of_list || overflow)
{
/* We have no valid base address for the ranges
data. */
- complaint (&symfile_complaints,
- _("Invalid .debug_rnglists data (no base address)"));
+ complaint (_("Invalid .debug_rnglists data (no base address)"));
return false;
}
if (range_beginning > range_end)
{
/* Inverted range entries are invalid. */
- complaint (&symfile_complaints,
- _("Invalid .debug_rnglists data (inverted range)"));
+ complaint (_("Invalid .debug_rnglists data (inverted range)"));
return false;
}
if (range_beginning + baseaddr == 0
&& !dwarf2_per_objfile->has_section_at_zero)
{
- complaint (&symfile_complaints,
- _(".debug_rnglists entry has start address of zero"
+ complaint (_(".debug_rnglists entry has start address of zero"
" [in module %s]"), objfile_name (objfile));
continue;
}
if (overflow)
{
- complaint (&symfile_complaints,
- _("Offset %d is not terminated "
+ complaint (_("Offset %d is not terminated "
"for DW_AT_ranges attribute"),
offset);
return false;
dwarf2_read_section (objfile, &dwarf2_per_objfile->ranges);
if (offset >= dwarf2_per_objfile->ranges.size)
{
- complaint (&symfile_complaints,
- _("Offset %d out of bounds for DW_AT_ranges attribute"),
+ complaint (_("Offset %d out of bounds for DW_AT_ranges attribute"),
offset);
return 0;
}
{
/* We have no valid base address for the ranges
data. */
- complaint (&symfile_complaints,
- _("Invalid .debug_ranges data (no base address)"));
+ complaint (_("Invalid .debug_ranges data (no base address)"));
return 0;
}
if (range_beginning > range_end)
{
/* Inverted range entries are invalid. */
- complaint (&symfile_complaints,
- _("Invalid .debug_ranges data (inverted range)"));
+ complaint (_("Invalid .debug_ranges data (inverted range)"));
return 0;
}
if (range_beginning + baseaddr == 0
&& !dwarf2_per_objfile->has_section_at_zero)
{
- complaint (&symfile_complaints,
- _(".debug_ranges entry has start address of zero"
+ complaint (_(".debug_ranges entry has start address of zero"
" [in module %s]"), objfile_name (objfile));
continue;
}
fp.is_protected = 1;
break;
default:
- complaint (&symfile_complaints,
- _("Unhandled DW_AT_accessibility value (%x)"), accessibility);
+ complaint (_("Unhandled DW_AT_accessibility value (%x)"), accessibility);
}
if (die->tag == DW_TAG_typedef)
default:
/* Unknown accessibility. Complain and treat it as public. */
{
- complaint (&symfile_complaints, _("unsupported accessibility %d"),
+ complaint (_("unsupported accessibility %d"),
field.accessibility);
}
break;
fnp->voffset = VOFFSET_STATIC;
}
else
- complaint (&symfile_complaints, _("member function type missing for '%s'"),
+ complaint (_("member function type missing for '%s'"),
dwarf2_full_name (fieldname, die, cu));
/* Get fcontext from DW_AT_containing_type if present. */
if (TYPE_NFIELDS (this_type) == 0
|| !TYPE_FIELD_ARTIFICIAL (this_type, 0))
{
- complaint (&symfile_complaints,
- _("cannot determine context for virtual member "
+ complaint (_("cannot determine context for virtual member "
"function \"%s\" (offset %s)"),
fieldname, sect_offset_str (die->sect_off));
}
if (attr && DW_UNSND (attr))
{
/* GCC does this, as of 2008-08-25; PR debug/37237. */
- complaint (&symfile_complaints,
- _("Member function \"%s\" (offset %s) is virtual "
+ complaint (_("Member function \"%s\" (offset %s) is virtual "
"but the vtable offset is not specified"),
fieldname, sect_offset_str (die->sect_off));
ALLOCATE_CPLUS_STRUCT_TYPE (type);
if (!attr_form_is_constant (attr))
{
- complaint (&symfile_complaints,
- _("DW_AT_alignment must have constant form"
+ complaint (_("DW_AT_alignment must have constant form"
" - DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
LONGEST val = DW_SND (attr);
if (val < 0)
{
- complaint (&symfile_complaints,
- _("DW_AT_alignment value must not be negative"
+ complaint (_("DW_AT_alignment value must not be negative"
" - DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
if (align == 0)
{
- complaint (&symfile_complaints,
- _("DW_AT_alignment value must not be zero"
+ complaint (_("DW_AT_alignment value must not be zero"
" - DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
}
if ((align & (align - 1)) != 0)
{
- complaint (&symfile_complaints,
- _("DW_AT_alignment value must be a power of 2"
+ complaint (_("DW_AT_alignment value must be a power of 2"
" - DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
struct type *type)
{
if (!set_type_align (type, get_alignment (cu, die)))
- complaint (&symfile_complaints,
- _("DW_AT_alignment value too large"
+ complaint (_("DW_AT_alignment value too large"
" - DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
/* We don't handle this but we might as well report it if we see
it. */
if (dwarf2_attr (child_die, DW_AT_discr_list, cu) != nullptr)
- complaint (&symfile_complaints,
- _("DW_AT_discr_list is not supported yet"
+ complaint (_("DW_AT_discr_list is not supported yet"
" - DIE at %s [in module %s]"),
sect_offset_str (child_die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
}
else
{
- complaint (&symfile_complaints,
- _("DW_AT_discr does not have DIE reference form"
+ complaint (_("DW_AT_discr does not have DIE reference form"
" - DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
/* Complain if virtual function table field not found. */
if (i < TYPE_N_BASECLASSES (t))
- complaint (&symfile_complaints,
- _("virtual function table pointer "
+ complaint (_("virtual function table pointer "
"not found when defining class '%s'"),
TYPE_TAG_NAME (type) ? TYPE_TAG_NAME (type) :
"");
stride_ok = attr_to_dynamic_prop (attr, die, cu, byte_stride_prop);
if (!stride_ok)
{
- complaint (&symfile_complaints,
- _("unable to read array DW_AT_byte_stride "
+ complaint (_("unable to read array DW_AT_byte_stride "
" - DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
if (DW_UNSND (attr) >= TYPE_LENGTH (type))
TYPE_LENGTH (type) = DW_UNSND (attr);
else
- complaint (&symfile_complaints,
- _("DW_AT_byte_size for array type smaller "
+ complaint (_("DW_AT_byte_size for array type smaller "
"than the total size of elements"));
}
not specified by DWARF. It seems to have been
emitted by gfortran at least as recently as:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23057. */
- complaint (&symfile_complaints,
- _("Variable in common block has "
+ complaint (_("Variable in common block has "
"DW_AT_data_member_location "
"- DIE at %s [in module %s]"),
sect_offset_str (child_die->sect_off),
module_name = dwarf2_name (die, cu);
if (!module_name)
- complaint (&symfile_complaints,
- _("DW_TAG_module has no name, offset %s"),
+ complaint (_("DW_TAG_module has no name, offset %s"),
sect_offset_str (die->sect_off));
type = init_type (objfile, TYPE_CODE_MODULE, 0, module_name);
}
else if (TYPE_LENGTH (type) != byte_size)
{
- complaint (&symfile_complaints,
- _("invalid pointer size %d"), byte_size);
+ complaint (_("invalid pointer size %d"), byte_size);
}
else if (TYPE_RAW_ALIGN (type) != alignment)
{
- complaint (&symfile_complaints,
- _("Invalid DW_AT_alignment"
+ complaint (_("Invalid DW_AT_alignment"
" - DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
{
/* Self-referential typedefs are, it seems, not allowed by the DWARF
spec and cause infinite loops in GDB. */
- complaint (&symfile_complaints,
- _("Self-referential DW_TAG_typedef "
+ complaint (_("Self-referential DW_TAG_typedef "
"- DIE at %s [in module %s]"),
sect_offset_str (die->sect_off), objfile_name (objfile));
TYPE_TARGET_TYPE (this_type) = NULL;
name = dwarf2_name (die, cu);
if (!name)
{
- complaint (&symfile_complaints,
- _("DW_AT_name missing from DW_TAG_base_type"));
+ complaint (_("DW_AT_name missing from DW_TAG_base_type"));
}
switch (encoding)
type = builtin_type (arch)->builtin_char32;
else
{
- complaint (&symfile_complaints,
- _("unsupported DW_ATE_UTF bit size: '%d'"),
+ complaint (_("unsupported DW_ATE_UTF bit size: '%d'"),
bits);
type = init_integer_type (objfile, bits, 1, name);
}
break;
default:
- complaint (&symfile_complaints, _("unsupported DW_AT_encoding: '%s'"),
+ complaint (_("unsupported DW_AT_encoding: '%s'"),
dwarf_type_encoding_name (encoding));
type = init_type (objfile, TYPE_CODE_ERROR, bits, name);
break;
if (attr)
attr_to_dynamic_prop (attr, die, cu, &low);
else if (!low_default_is_valid)
- complaint (&symfile_complaints, _("Missing DW_AT_lower_bound "
+ complaint (_("Missing DW_AT_lower_bound "
"- DIE at %s [in module %s]"),
sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
above. In correct DWARF DW_TAG_typedef should have no children. */
if (pdi.tag == DW_TAG_typedef && pdi.has_children)
- complaint (&symfile_complaints,
- _("DW_TAG_typedef has childen - GCC PR debug/47510 bug "
+ complaint (_("DW_TAG_typedef has childen - GCC PR debug/47510 bug "
"- DIE at %s [in module %s]"),
sect_offset_str (pdi.sect_off), objfile_name (objfile));
&& parent_die->has_specification == 0)
{
if (pdi.name == NULL)
- complaint (&symfile_complaints,
- _("malformed enumerator DIE ignored"));
+ complaint (_("malformed enumerator DIE ignored"));
else if (building_psymtab)
add_psymbol_to_list (pdi.name, strlen (pdi.name), 0,
VAR_DOMAIN, LOC_CONST,
/* Ignore absolute siblings, they might point outside of
the current compile unit. */
if (attr.form == DW_FORM_ref_addr)
- complaint (&symfile_complaints,
- _("ignoring absolute DW_AT_sibling"));
+ complaint (_("ignoring absolute DW_AT_sibling"));
else
{
const gdb_byte *buffer = reader->buffer;
const gdb_byte *sibling_ptr = buffer + to_underlying (off);
if (sibling_ptr < info_ptr)
- complaint (&symfile_complaints,
- _("DW_AT_sibling points backwards"));
+ complaint (_("DW_AT_sibling points backwards"));
else if (sibling_ptr > reader->buffer_end)
dwarf2_section_buffer_overflow_complaint (reader->die_section);
else
struct objfile *objfile = dwarf2_per_objfile->objfile;
struct gdbarch *gdbarch = get_objfile_arch (objfile);
- complaint (&symfile_complaints,
- _("DW_AT_low_pc %s is zero "
+ complaint (_("DW_AT_low_pc %s is zero "
"for DIE at %s [in module %s]"),
paddress (gdbarch, lowpc),
sect_offset_str (sect_off),
struct objfile *objfile = dwarf2_per_objfile->objfile;
struct gdbarch *gdbarch = get_objfile_arch (objfile);
- complaint (&symfile_complaints,
- _("DW_AT_low_pc %s is not < DW_AT_high_pc %s "
+ complaint (_("DW_AT_low_pc %s is not < DW_AT_high_pc %s "
"for DIE at %s [in module %s]"),
paddress (gdbarch, lowpc),
paddress (gdbarch, highpc),
&& DW_UNSND (attr) >= 0xffffffff)
{
complaint
- (&symfile_complaints,
- _("Suspicious DW_AT_byte_size value treated as zero instead of %s"),
+ (_("Suspicious DW_AT_byte_size value treated as zero instead of %s"),
hex_string (DW_UNSND (attr)));
DW_UNSND (attr) = 0;
}
|| cu_header->initial_length_size == 12);
if (cu_header->initial_length_size != *bytes_read)
- complaint (&symfile_complaints,
- _("intermixed 32-bit and 64-bit DWARF sections"));
+ complaint (_("intermixed 32-bit and 64-bit DWARF sections"));
*offset_size = (*bytes_read == 4) ? 4 : 8;
return length;
|| attr->form == DW_FORM_GNU_strp_alt)
str = DW_STRING (attr);
else
- complaint (&symfile_complaints,
- _("string type expected for attribute %s for "
+ complaint (_("string type expected for attribute %s for "
"DIE at %s in module %s"),
dwarf_attr_name (name), sect_offset_str (die->sect_off),
objfile_name (cu->per_cu->dwarf2_per_objfile->objfile));
case DW_LNCT_MD5:
break;
default:
- complaint (&symfile_complaints,
- _("Unknown format content type %s"),
+ complaint (_("Unknown format content type %s"),
pulongest (content_type));
}
}
if (section->buffer == NULL)
{
if (cu->dwo_unit && cu->per_cu->is_debug_types)
- complaint (&symfile_complaints, _("missing .debug_line.dwo section"));
+ complaint (_("missing .debug_line.dwo section"));
else
- complaint (&symfile_complaints, _("missing .debug_line section"));
+ complaint (_("missing .debug_line section"));
return 0;
}
{
/* This is a version we don't understand. The format could have
changed in ways we don't handle properly so just punt. */
- complaint (&symfile_complaints,
- _("unsupported version in .debug_line section"));
+ complaint (_("unsupported version in .debug_line section"));
return NULL;
}
if (lh->version >= 5)
line_ptr += 1;
if (segment_selector_size != 0)
{
- complaint (&symfile_complaints,
- _("unsupported segment selector size %u "
+ complaint (_("unsupported segment selector size %u "
"in .debug_line section"),
segment_selector_size);
return NULL;
if (lh->maximum_ops_per_instruction == 0)
{
lh->maximum_ops_per_instruction = 1;
- complaint (&symfile_complaints,
- _("invalid maximum_ops_per_instruction "
+ complaint (_("invalid maximum_ops_per_instruction "
"in `.debug_line' section"));
}
lh->statement_program_start = line_ptr;
if (line_ptr > (section->buffer + section->size))
- complaint (&symfile_complaints,
- _("line number info header doesn't "
+ complaint (_("line number info header doesn't "
"fit in `.debug_line' section"));
return lh;
struct objfile *objfile = cu->per_cu->dwarf2_per_objfile->objfile;
long line_offset = line_ptr - get_debug_line_section (cu)->buffer;
- complaint (&symfile_complaints,
- _(".debug_line address at offset 0x%lx is 0 [in module %s]"),
+ complaint (_(".debug_line address at offset 0x%lx is 0 [in module %s]"),
line_offset, objfile_name (objfile));
m_record_line_callback = noop_record_line;
/* Note: record_line_callback is left as noop_record_line until
}
break;
default:
- complaint (&symfile_complaints,
- _("mangled .debug_line section"));
+ complaint (_("mangled .debug_line section"));
return;
}
/* Make sure that we parsed the extended op correctly. If e.g.
we may have read the wrong number of bytes. */
if (line_ptr != extended_end)
{
- complaint (&symfile_complaints,
- _("mangled .debug_line section"));
+ complaint (_("mangled .debug_line section"));
return;
}
break;
fe = NULL;
if (fe == NULL)
- complaint (&symfile_complaints,
- _("file index out of range"));
+ complaint (_("file index out of range"));
else
symbol_set_symtab (sym, fe->symtab);
}
trash data, but since we must specifically ignore things
we don't recognize, there is nothing else we should do at
this point. */
- complaint (&symfile_complaints, _("unsupported tag: '%s'"),
+ complaint (_("unsupported tag: '%s'"),
dwarf_tag_name (die->tag));
break;
}
break;
default:
- complaint (&symfile_complaints,
- _("unsupported const value attribute form: '%s'"),
+ complaint (_("unsupported const value attribute form: '%s'"),
dwarf_form_name (attr->form));
*value = 0;
break;
}
else
{
- complaint (&symfile_complaints,
- _("Dwarf Error: Bad type attribute %s in DIE"
+ complaint (_("Dwarf Error: Bad type attribute %s in DIE"
" at %s [in module %s]"),
dwarf_attr_name (attr->name), sect_offset_str (die->sect_off),
objfile_name (objfile));
this_type = read_tag_atomic_type (die, cu);
break;
default:
- complaint (&symfile_complaints,
- _("unexpected tag in read_type_die: '%s'"),
+ complaint (_("unexpected tag in read_type_die: '%s'"),
dwarf_tag_name (die->tag));
break;
}
doesn't allow it), and break the loop here. */
name = dwarf2_name (die, cu);
parent_name = dwarf2_name (parent, cu);
- complaint (&symfile_complaints,
- _("template param type '%s' defined within parent '%s'"),
+ complaint (_("template param type '%s' defined within parent '%s'"),
name ? name : "<unknown>",
parent_name ? parent_name : "<unknown>");
return "";
if (attr_form_is_ref (attr))
return (sect_offset) DW_UNSND (attr);
- complaint (&symfile_complaints,
- _("unsupported die ref attribute form: '%s'"),
+ complaint (_("unsupported die ref attribute form: '%s'"),
dwarf_form_name (attr->form));
return {};
}
else
{
/* For DW_FORM_data16 see attr_form_is_constant. */
- complaint (&symfile_complaints,
- _("Attribute value is not a constant (%s)"),
+ complaint (_("Attribute value is not a constant (%s)"),
dwarf_form_name (attr->form));
return default_value;
}
break;
default:
- complaint (&symfile_complaints,
- _("unsupported const value attribute form: '%s'"),
+ complaint (_("unsupported const value attribute form: '%s'"),
dwarf_form_name (attr->form));
break;
}
the debug info. */
if (sig_type == NULL)
{
- complaint (&symfile_complaints,
- _("Dwarf Error: Cannot find signatured DIE %s referenced"
+ complaint (_("Dwarf Error: Cannot find signatured DIE %s referenced"
" from DIE at %s [in module %s]"),
hex_string (signature), sect_offset_str (die->sect_off),
objfile_name (dwarf2_per_objfile->objfile));
type = read_type_die (type_die, type_cu);
if (type == NULL)
{
- complaint (&symfile_complaints,
- _("Dwarf Error: Cannot build signatured type %s"
+ complaint (_("Dwarf Error: Cannot build signatured type %s"
" referenced from DIE at %s [in module %s]"),
hex_string (signature), sect_offset_str (die->sect_off),
objfile_name (dwarf2_per_objfile->objfile));
}
else
{
- complaint (&symfile_complaints,
- _("Dwarf Error: Problem reading signatured DIE %s referenced"
+ complaint (_("Dwarf Error: Problem reading signatured DIE %s referenced"
" from DIE at %s [in module %s]"),
hex_string (signature), sect_offset_str (die->sect_off),
objfile_name (dwarf2_per_objfile->objfile));
struct dwarf2_per_objfile *dwarf2_per_objfile
= cu->per_cu->dwarf2_per_objfile;
- complaint (&symfile_complaints,
- _("Dwarf Error: DW_AT_signature has bad form %s in DIE"
+ complaint (_("Dwarf Error: DW_AT_signature has bad form %s in DIE"
" at %s [in module %s]"),
dwarf_form_name (attr->form), sect_offset_str (die->sect_off),
objfile_name (dwarf2_per_objfile->objfile));
const char *name = get_DW_OP_name (op);
if (name)
- complaint (&symfile_complaints, _("unsupported stack op: '%s'"),
+ complaint (_("unsupported stack op: '%s'"),
name);
else
- complaint (&symfile_complaints, _("unsupported stack op: '%02x'"),
+ complaint (_("unsupported stack op: '%02x'"),
op);
}
outside of the allocated space. Also enforce minimum>0. */
if (stacki >= ARRAY_SIZE (stack) - 1)
{
- complaint (&symfile_complaints,
- _("location description stack overflow"));
+ complaint (_("location description stack overflow"));
return 0;
}
if (stacki <= 0)
{
- complaint (&symfile_complaints,
- _("location description stack underflow"));
+ complaint (_("location description stack underflow"));
return 0;
}
}
xsnprintf (fake_name, sizeof (fake_name),
"<bad macro file number %d>", file);
- complaint (&symfile_complaints,
- _("bad file number in macro information (%d)"),
+ complaint (_("bad file number in macro information (%d)"),
file);
return xstrdup (fake_name);
{
if (*p == ' ')
{
- complaint (&symfile_complaints,
- _("macro definition contains spaces "
+ complaint (_("macro definition contains spaces "
"in formal argument list:\n`%s'"),
body);
default:
{
- complaint (&symfile_complaints,
- _("invalid form 0x%x in `%s'"),
+ complaint (_("invalid form 0x%x in `%s'"),
form, get_section_name (section));
return NULL;
}
if (opcode_definitions[opcode] == NULL)
{
- complaint (&symfile_complaints,
- _("unrecognized DW_MACFINO opcode 0x%x"),
+ complaint (_("unrecognized DW_MACFINO opcode 0x%x"),
opcode);
return NULL;
}
version = read_2_bytes (abfd, mac_ptr);
if (version != 4 && version != 5)
{
- complaint (&symfile_complaints,
- _("unrecognized version `%d' in .debug_macro section"),
+ complaint (_("unrecognized version `%d' in .debug_macro section"),
version);
return NULL;
}
if (! current_file)
{
/* DWARF violation as no main source is present. */
- complaint (&symfile_complaints,
- _("debug info with no main source gives macro %s "
+ complaint (_("debug info with no main source gives macro %s "
"on line %d: %s"),
is_define ? _("definition") : _("undefinition"),
line, body);
}
if ((line == 0 && !at_commandline)
|| (line != 0 && at_commandline))
- complaint (&symfile_complaints,
- _("debug info gives %s macro %s with %s line %d: %s"),
+ complaint (_("debug info gives %s macro %s with %s line %d: %s"),
at_commandline ? _("command-line") : _("in-file"),
is_define ? _("definition") : _("undefinition"),
line == 0 ? _("zero") : _("non-zero"), line, body);
if ((line == 0 && !at_commandline)
|| (line != 0 && at_commandline))
- complaint (&symfile_complaints,
- _("debug info gives source %d included "
+ complaint (_("debug info gives source %d included "
"from %s at %s line %d"),
file, at_commandline ? _("command-line") : _("file"),
line == 0 ? _("zero") : _("non-zero"), line);
case DW_MACRO_end_file:
if (! current_file)
- complaint (&symfile_complaints,
- _("macro debug info has an unmatched "
+ complaint (_("macro debug info has an unmatched "
"`close_file' directive"));
else
{
= (enum dwarf_macro_record_type) read_1_byte (abfd,
mac_ptr);
if (next_type != 0)
- complaint (&symfile_complaints,
- _("no terminating 0-type entry for "
+ complaint (_("no terminating 0-type entry for "
"macros in `.debug_macinfo' section"));
return;
{
/* This has actually happened; see
http://sourceware.org/bugzilla/show_bug.cgi?id=13568. */
- complaint (&symfile_complaints,
- _("recursive DW_MACRO_import in "
+ complaint (_("recursive DW_MACRO_import in "
".debug_macro section"));
}
else
dwarf2_read_section (objfile, section);
if (section->buffer == NULL)
{
- complaint (&symfile_complaints, _("missing %s section"), section_name);
+ complaint (_("missing %s section"), section_name);
return;
}
abfd = get_section_bfd_owner (section);
fill_in_loclist_baton (cu, baton, attr);
if (cu->base_known == 0)
- complaint (&symfile_complaints,
- _("Location list used without "
+ complaint (_("Location list used without "
"specifying the CU base address."));
SYMBOL_ACLASS_INDEX (sym) = (is_block
}
else if (attr != NULL)
{
- complaint (&symfile_complaints,
- _("DW_AT_allocated has the wrong form (%s) at DIE %s"),
+ complaint (_("DW_AT_allocated has the wrong form (%s) at DIE %s"),
(attr != NULL ? dwarf_form_name (attr->form) : "n/a"),
sect_offset_str (die->sect_off));
}
}
else if (attr != NULL)
{
- complaint (&symfile_complaints,
- _("DW_AT_associated has the wrong form (%s) at DIE %s"),
+ complaint (_("DW_AT_associated has the wrong form (%s) at DIE %s"),
(attr != NULL ? dwarf_form_name (attr->form) : "n/a"),
sect_offset_str (die->sect_off));
}
slot = (struct dwarf2_per_cu_offset_and_type **)
htab_find_slot (dwarf2_per_objfile->die_type_hash, &ofs, INSERT);
if (*slot)
- complaint (&symfile_complaints,
- _("A problem internal to GDB: DIE %s has type already set"),
+ complaint (_("A problem internal to GDB: DIE %s has type already set"),
sect_offset_str (die->sect_off));
*slot = XOBNEW (&objfile->objfile_obstack,
struct dwarf2_per_cu_offset_and_type);
static void
stub_noname_complaint (void)
{
- complaint (&symfile_complaints, _("stub type has NULL name"));
+ complaint (_("stub type has NULL name"));
}
/* Return nonzero if TYPE has a DYN_PROP_BYTE_STRIDE dynamic property
if (sym->name == NULL || sym->name[0] == 0)
{
/* Unexpected empty N_SO. */
- complaint (&symfile_complaints,
- _("Unexpected empty N_SO stab"));
+ complaint (_("Unexpected empty N_SO stab"));
}
else
{
}
/* Debugging symbols are not expected here. */
- complaint (&symfile_complaints,
- _("%s: Unexpected debug stab outside SO markers"),
+ complaint (_("%s: Unexpected debug stab outside SO markers"),
objfile_name (objfile));
}
else
if (sym->name == NULL || sym->name[0] == 0)
{
/* Unexpected empty N_SO. */
- complaint (&symfile_complaints, _("Empty SO section"));
+ complaint (_("Empty SO section"));
state = S_NO_SO;
}
else if (state == S_FIRST_SO)
state = S_SECOND_SO;
}
else
- complaint (&symfile_complaints, _("Three SO in a raw"));
+ complaint (_("Three SO in a raw"));
}
else if (mach_o_sym->n_type == N_OSO)
{
}
}
else
- complaint (&symfile_complaints,
- _("Unexpected stab after SO"));
+ complaint (_("Unexpected stab after SO"));
break;
case S_STAB_FILE:
}
else
{
- complaint (&symfile_complaints, _("Missing nul SO"));
+ complaint (_("Missing nul SO"));
file_so = sym;
state = S_FIRST_SO;
}
case N_GSYM:
break;
default:
- complaint (&symfile_complaints,
- _("unhandled stab for dwarf OSO file"));
+ complaint (_("unhandled stab for dwarf OSO file"));
break;
}
}
}
else
- complaint (&symfile_complaints,
- _("non-debugging symbol within SO"));
+ complaint (_("non-debugging symbol within SO"));
break;
}
}
if (state != S_NO_SO)
- complaint (&symfile_complaints, _("missing nul SO"));
+ complaint (_("missing nul SO"));
}
/* If NAME describes an archive member (ie: ARCHIVE '(' MEMBER ')'),
ent = (struct macho_sym_hash_entry *)
bfd_hash_lookup (&table, sym->name, TRUE, FALSE);
if (ent->sym != NULL)
- complaint (&symfile_complaints,
- _("Duplicated symbol %s in symbol table"), sym->name);
+ complaint (_("Duplicated symbol %s in symbol table"), sym->name);
else
{
if (mach_o_debug_level > 4)
ms->file = main_file;
ms->line = -1;
- complaint (&symfile_complaints,
- _("symtab found for `%s', but that file\n"
+ complaint (_("symtab found for `%s', but that file\n"
"is not covered in the compilation unit's macro information"),
symtab_to_filename_for_display (sal.symtab));
}
link_fullname = macro_source_fullname (*link);
source_fullname = macro_source_fullname (source);
- complaint (&symfile_complaints,
- _("both `%s' and `%s' allegedly #included at %s:%d"),
+ complaint (_("both `%s' and `%s' allegedly #included at %s:%d"),
included, link_fullname, source_fullname, line);
xfree (source_fullname);
xfree (link_fullname);
source_fullname = macro_source_fullname (source);
found_key_fullname = macro_source_fullname (found_key->start_file);
- complaint (&symfile_complaints,
- _("macro `%s' redefined at %s:%d; "
+ complaint (_("macro `%s' redefined at %s:%d; "
"original definition at %s:%d"),
name, source_fullname, line, found_key_fullname,
found_key->start_line);
source_fullname = macro_source_fullname (source);
key_fullname = macro_source_fullname (key->end_file);
- complaint (&symfile_complaints,
- _("macro '%s' is #undefined twice,"
+ complaint (_("macro '%s' is #undefined twice,"
" at %s:%d and %s:%d"),
name, source_fullname, line, key_fullname,
key->end_line);
has no macro definition in scope is ignored. So we should
ignore it too. */
#if 0
- complaint (&symfile_complaints,
- _("no definition for macro `%s' in scope to #undef at %s:%d"),
+ complaint (_("no definition for macro `%s' in scope to #undef at %s:%d"),
name, source->filename, line);
#endif
}
static void
index_complaint (const char *arg1)
{
- complaint (&symfile_complaints, _("bad aux index at symbol %s"), arg1);
+ complaint (_("bad aux index at symbol %s"), arg1);
}
static void
unknown_ext_complaint (const char *arg1)
{
- complaint (&symfile_complaints, _("unknown external symbol %s"), arg1);
+ complaint (_("unknown external symbol %s"), arg1);
}
static void
basic_type_complaint (int arg1, const char *arg2)
{
- complaint (&symfile_complaints, _("cannot map ECOFF basic type 0x%x for %s"),
+ complaint (_("cannot map ECOFF basic type 0x%x for %s"),
arg1, arg2);
}
static void
bad_tag_guess_complaint (const char *arg1)
{
- complaint (&symfile_complaints,
- _("guessed tag type of %s incorrectly"), arg1);
+ complaint (_("guessed tag type of %s incorrectly"), arg1);
}
static void
bad_rfd_entry_complaint (const char *arg1, int arg2, int arg3)
{
- complaint (&symfile_complaints, _("bad rfd entry for %s: file %d, index %d"),
+ complaint (_("bad rfd entry for %s: file %d, index %d"),
arg1, arg2, arg3);
}
static void
unexpected_type_code_complaint (const char *arg1)
{
- complaint (&symfile_complaints, _("unexpected type code for %s"), arg1);
+ complaint (_("unexpected type code for %s"), arg1);
}
/* Macros and extra defs. */
static void
reg_value_complaint (int regnum, int num_regs, const char *sym)
{
- complaint (&symfile_complaints,
- _("bad register number %d (max %d) in symbol %s"),
+ complaint (_("bad register number %d (max %d) in symbol %s"),
regnum, num_regs - 1, sym);
}
keep_counting = 0;
break;
default:
- complaint (&symfile_complaints,
- _("unknown symbol type 0x%x"), sh->st);
+ complaint (_("unknown symbol type 0x%x"), sh->st);
break;
}
}
break;
default:
- complaint (&symfile_complaints,
- _("declaration block contains "
+ complaint (_("declaration block contains "
"unhandled symbol type %d"),
tsym.st);
}
;
}
else
- complaint (&symfile_complaints,
- _("stEnd with storage class %d not handled"), sh->sc);
+ complaint (_("stEnd with storage class %d not handled"), sh->sc);
pop_parse_stack (); /* Restore previous lexical context. */
break;
case stConstant:
break; /* constant */
default:
- complaint (&symfile_complaints, _("unknown symbol type 0x%x"), sh->st);
+ complaint (_("unknown symbol type 0x%x"), sh->st);
break;
}
else if (t->bt == btEnum)
;
else
- complaint (&symfile_complaints,
- _("can't handle TIR fBitfield for %s"),
+ complaint (_("can't handle TIR fBitfield for %s"),
sym_name);
}
else
if (rf == -1)
{
- complaint (&symfile_complaints,
- _("unable to cross ref btIndirect for %s"), sym_name);
+ complaint (_("unable to cross ref btIndirect for %s"), sym_name);
return basic_type (btInt, mdebugread_objfile);
}
xref_fh = get_rfd (fd, rf);
ax += cross_ref (fd, ax, &tp, type_code, &name, bigend, sym_name);
if (tp == (struct type *) NULL)
{
- complaint (&symfile_complaints,
- _("unable to cross ref btTypedef for %s"), sym_name);
+ complaint (_("unable to cross ref btTypedef for %s"), sym_name);
tp = basic_type (btInt, mdebugread_objfile);
}
}
/* Complain for illegal continuations due to corrupt aux entries. */
if (t->continued)
- complaint (&symfile_complaints,
- _("illegal TIR continued for %s"), sym_name);
+ complaint (_("illegal TIR continued for %s"), sym_name);
return tp;
}
else due to corrupt aux entries. */
if (TYPE_CODE (indx) != TYPE_CODE_INT)
{
- complaint (&symfile_complaints,
- _("illegal array index type for %s, assuming int"),
+ complaint (_("illegal array index type for %s, assuming int"),
sym_name);
indx = objfile_type (mdebugread_objfile)->builtin_int;
}
return 0;
default:
- complaint (&symfile_complaints, _("unknown type qualifier 0x%x"), tq);
+ complaint (_("unknown type qualifier 0x%x"), tq);
return 0;
}
}
{
/* Static procedure at address pr->adr. Sigh. */
/* FIXME-32x64. assuming pr->adr fits in long. */
- complaint (&symfile_complaints,
- _("can't handle PDR for static proc at 0x%lx"),
+ complaint (_("can't handle PDR for static proc at 0x%lx"),
(unsigned long) pr->adr);
return;
}
}
else
{
- complaint (&symfile_complaints, _("PDR for %s, but no symbol"), sh_name);
+ complaint (_("PDR for %s, but no symbol"), sh_name);
#if 1
return;
#else
with corrupt binaries. */
if (lt->nitems >= maxlines)
{
- complaint (&symfile_complaints,
- _("guessed size of linetable for %s incorrectly"),
+ complaint (_("guessed size of linetable for %s incorrectly"),
fdr_name (fh));
break;
}
static void
function_outside_compilation_unit_complaint (const char *arg1)
{
- complaint (&symfile_complaints,
- _("function `%s' appears to be defined "
+ complaint (_("function `%s' appears to be defined "
"outside of all compilation units"),
arg1);
}
external symbols. */
if (ext_in->ifd < -1 || ext_in->ifd >= hdr->ifdMax)
{
- complaint (&symfile_complaints,
- _("bad ifd for external symbol: %d (max %ld)"),
+ complaint (_("bad ifd for external symbol: %d (max %ld)"),
ext_in->ifd, hdr->ifdMax);
continue;
}
if (ext_in->asym.iss < 0 || ext_in->asym.iss >= hdr->issExtMax)
{
- complaint (&symfile_complaints,
- _("bad iss for external symbol: %ld (max %ld)"),
+ complaint (_("bad iss for external symbol: %ld (max %ld)"),
ext_in->asym.iss, hdr->issExtMax);
continue;
}
searching to the end of every string looking for
a backslash. */
- complaint (&symfile_complaints,
- _("unknown symbol descriptor `%c'"), p[1]);
+ complaint (_("unknown symbol descriptor `%c'"), p[1]);
/* Ignore it; perhaps it is an extension that we don't
know about. */
default:
/* If we haven't found it yet, ignore it. It's
probably some new type we don't know about yet. */
- complaint (&symfile_complaints,
- _("unknown symbol type %s"),
+ complaint (_("unknown symbol type %s"),
hex_string (type_code)); /* CUR_SYMBOL_TYPE */
continue;
}
if (new_sdx <= cur_sdx)
{
/* This should not happen either... FIXME. */
- complaint (&symfile_complaints,
- _("bad proc end in aux found from symbol %s"),
+ complaint (_("bad proc end in aux found from symbol %s"),
name);
new_sdx = cur_sdx + 1; /* Don't skip backward. */
}
if (new_sdx <= cur_sdx)
{
/* This happens with the Ultrix kernel. */
- complaint (&symfile_complaints,
- _("bad aux index at block symbol %s"), name);
+ complaint (_("bad aux index at block symbol %s"), name);
new_sdx = cur_sdx + 1; /* Don't skip backward. */
}
cur_sdx = new_sdx;
default:
/* Both complaints are valid: one gives symbol name,
the other the offending symbol type. */
- complaint (&symfile_complaints, _("unknown local symbol %s"),
+ complaint (_("unknown local symbol %s"),
name);
- complaint (&symfile_complaints, _("with type %d"), sh.st);
+ complaint (_("with type %d"), sh.st);
cur_sdx++;
continue;
}
&rh);
if (rh < 0 || rh >= hdr->ifdMax)
{
- complaint (&symfile_complaints, _("bad file number %ld"), rh);
+ complaint (_("bad file number %ld"), rh);
continue;
}
/* These are generated by gcc-2.x, do not complain. */
;
else
- complaint (&symfile_complaints,
- _("unknown stabs symbol %s"), name);
+ complaint (_("unknown stabs symbol %s"), name);
}
if (! last_symtab_ended)
+ fh->iauxBase + sh.index)->a_ti,
&tir);
if (tir.tq0 != tqNil)
- complaint (&symfile_complaints,
- _("illegal tq0 in forward typedef for %s"), sym_name);
+ complaint (_("illegal tq0 in forward typedef for %s"), sym_name);
switch (tir.bt)
{
case btVoid:
break;
default:
- complaint (&symfile_complaints,
- _("illegal bt %d in forward typedef for %s"), tir.bt,
+ complaint (_("illegal bt %d in forward typedef for %s"), tir.bt,
sym_name);
*tpp = init_type (mdebugread_objfile, type_code, 0, NULL);
break;
function = find_function_in_inferior("objc_lookup_class", NULL);
else
{
- complaint (&symfile_complaints,
- _("no way to lookup Objective-C classes"));
+ complaint (_("no way to lookup Objective-C classes"));
return 0;
}
function = find_function_in_inferior("sel_get_any_uid", NULL);
else
{
- complaint (&symfile_complaints,
- _("no way to lookup Objective-C selectors"));
+ complaint (_("no way to lookup Objective-C selectors"));
return 0;
}
name = (char *) strchr (name+2, ' ');
if (name == NULL)
{
- complaint (&symfile_complaints,
- _("Bad method name '%s'"),
+ complaint (_("Bad method name '%s'"),
MSYMBOL_NATURAL_NAME (msymbol));
continue;
}
struct gdbarch *const gdbarch = get_objfile_arch (objf1);
- complaint (&symfile_complaints,
- _("unexpected overlap between:\n"
+ complaint (_("unexpected overlap between:\n"
" (A) section `%s' from `%s' [%s, %s)\n"
" (B) section `%s' from `%s' [%s, %s).\n"
"Will ignore section B"),
static void
invalid_cpp_abbrev_complaint (const char *arg1)
{
- complaint (&symfile_complaints, _("invalid C++ abbreviation `%s'"), arg1);
+ complaint (_("invalid C++ abbreviation `%s'"), arg1);
}
static void
reg_value_complaint (int regnum, int num_regs, const char *sym)
{
- complaint (&symfile_complaints,
- _("bad register number %d (max %d) in symbol %s"),
+ complaint (_("bad register number %d (max %d) in symbol %s"),
regnum, num_regs - 1, sym);
}
static void
stabs_general_complaint (const char *arg1)
{
- complaint (&symfile_complaints, "%s", arg1);
+ complaint ("%s", arg1);
}
/* Make a list of forward references which haven't been defined. */
if (filenum < 0 || filenum >= n_this_object_header_files)
{
- complaint (&symfile_complaints,
- _("Invalid symbol data: type number "
+ complaint (_("Invalid symbol data: type number "
"(%d,%d) out of range at symtab pos %d."),
filenum, index, symnum);
goto error_return;
p = strchr (p, ':');
if (p == NULL)
{
- complaint (&symfile_complaints,
+ complaint (
_("Bad stabs string '%s'"), string);
return NULL;
}
/* fall through */
default:
- complaint (&symfile_complaints, _("Unknown C++ symbol name `%s'"),
+ complaint (_("Unknown C++ symbol name `%s'"),
string);
goto normal; /* Do *something* with it. */
}
static struct type *
error_type (const char **pp, struct objfile *objfile)
{
- complaint (&symfile_complaints,
- _("couldn't parse type; debugger out of date?"));
+ complaint (_("couldn't parse type; debugger out of date?"));
while (1)
{
/* Skip to end of symbol. */
{
/* Complain and keep going, so compilers can invent new
cross-reference types. */
- complaint (&symfile_complaints,
- _("Unrecognized cross-reference type `%c'"),
+ complaint (_("Unrecognized cross-reference type `%c'"),
(*pp)[0]);
code = TYPE_CODE_STRUCT;
break;
++*pp;
else
{
- complaint (&symfile_complaints,
- _("Prototyped function type didn't "
+ complaint (_("Prototyped function type didn't "
"end arguments with `#':\n%s"),
type_start);
}
(*pp)++;
return_type = read_type (pp, objfile);
if (*(*pp)++ != ';')
- complaint (&symfile_complaints,
- _("invalid (minimal) member type "
+ complaint (_("invalid (minimal) member type "
"data format at symtab pos %d."),
symnum);
type = allocate_stub_method (return_type);
if (typenum >= 0 || typenum < -NUMBER_RECOGNIZED)
{
- complaint (&symfile_complaints, _("Unknown builtin type %d"), typenum);
+ complaint (_("Unknown builtin type %d"), typenum);
return objfile_type (objfile)->builtin_error;
}
if (method_name == NULL)
{
- complaint (&symfile_complaints,
- _("Method has bad physname %s\n"), physname);
+ complaint (_("Method has bad physname %s\n"), physname);
return NULL;
}
case '.':
break;
default:
- complaint (&symfile_complaints,
- _("const/volatile indicator missing, got '%c'"),
+ complaint (_("const/volatile indicator missing, got '%c'"),
**pp);
break;
}
default:
/* error */
- complaint (&symfile_complaints,
- _("member function type missing, got '%c'"),
+ complaint (_("member function type missing, got '%c'"),
(*pp)[-1]);
/* Normal member function. */
/* Fall through. */
name = type_name_no_tag (context);
if (name == NULL)
{
- complaint (&symfile_complaints,
- _("C++ abbreviated type name "
+ complaint (_("C++ abbreviated type name "
"unknown at symtab pos %d"),
symnum);
name = "FOO";
default:
/* Unknown character. Complain and treat it as non-virtual. */
{
- complaint (&symfile_complaints,
- _("Unknown virtual character `%c' for baseclass"),
+ complaint (_("Unknown virtual character `%c' for baseclass"),
**pp);
}
}
/* Bad visibility format. Complain and treat it as
public. */
{
- complaint (&symfile_complaints,
- _("Unknown visibility `%c' for baseclass"),
+ complaint (_("Unknown visibility `%c' for baseclass"),
newobj->visibility);
newobj->visibility = VISIBILITY_PUBLIC;
}
}
}
/* Virtual function table field not found. */
- complaint (&symfile_complaints,
- _("virtual function table pointer "
+ complaint (_("virtual function table pointer "
"not found when defining class `%s'"),
TYPE_NAME (type));
return 0;
default:
/* Unknown visibility. Complain and treat it as public. */
{
- complaint (&symfile_complaints,
- _("Unknown visibility `%c' for field"),
+ complaint (_("Unknown visibility `%c' for field"),
fip->list->visibility);
}
break;
kind = "";
}
- complaint (&symfile_complaints,
- _("struct/union type gets multiply defined: %s%s"), kind, name);
+ complaint (_("struct/union type gets multiply defined: %s%s"), kind, name);
}
/* Set the length for all variants of a same main_type, which are
/* Does this actually ever happen? Is that why we are worrying
about dealing with it rather than just calling error_type? */
- complaint (&symfile_complaints,
- _("base type %d of range type is not defined"), rangenums[1]);
+ complaint (_("base type %d of range type is not defined"), rangenums[1]);
index_type = objfile_type (objfile)->builtin_int;
}
have been present ";-16,(0,43)" reference instead. This way the
excessive ";" marker prematurely stops the parameters parsing. */
- complaint (&symfile_complaints, _("Invalid (empty) method arguments"));
+ complaint (_("Invalid (empty) method arguments"));
*varargsp = 0;
}
else if (TYPE_CODE (types[n - 1]) != TYPE_CODE_VOID)
{
if (common_block_name != NULL)
{
- complaint (&symfile_complaints,
- _("Invalid symbol data: common block within common block"));
+ complaint (_("Invalid symbol data: common block within common block"));
}
common_block = local_symbols;
common_block_i = local_symbols ? local_symbols->nsyms : 0;
if (common_block_name == NULL)
{
- complaint (&symfile_complaints, _("ECOMM symbol unmatched by BCOMM"));
+ complaint (_("ECOMM symbol unmatched by BCOMM"));
return;
}
if (type_name == NULL)
{
- complaint (&symfile_complaints, _("need a type name"));
+ complaint (_("need a type name"));
break;
}
for (ppt = file_symbols; ppt; ppt = ppt->next)
default:
{
- complaint (&symfile_complaints,
- _("forward-referenced types left unresolved, "
+ complaint (_("forward-referenced types left unresolved, "
"type code %d."),
TYPE_CODE (*type));
}
if (SYMBOL_CLASS (prev) == LOC_STATIC)
SYMBOL_ACLASS_INDEX (prev) = LOC_UNRESOLVED;
else
- complaint (&symfile_complaints,
- _("%s: common block `%s' from "
+ complaint (_("%s: common block `%s' from "
"global_sym_chain unresolved"),
objfile_name (objfile), SYMBOL_PRINT_NAME (prev));
}
/* Making sure there is a name. */
if (name == NULL)
{
- complaint (&symfile_complaints, _("corrupt probe name when "
+ complaint (_("corrupt probe name when "
"reading `%s'"),
objfile_name (objfile));
|| (memchr (probe_args, '\0', (char *) el->data + el->size - name)
!= el->data + el->size - 1))
{
- complaint (&symfile_complaints, _("corrupt probe argument when "
+ complaint (_("corrupt probe argument when "
"reading `%s'"),
objfile_name (objfile));
/* If the argument string is NULL, it means some problem happened with
if (ret == NULL)
{
- complaint (&symfile_complaints, _("could not obtain base address for "
+ complaint (_("could not obtain base address for "
"SystemTap section on objfile `%s'."),
obfd->filename);
return 0;
{
/* If we are here, it means we have failed to parse every known
probe. */
- complaint (&symfile_complaints, _("could not parse SystemTap probe(s) "
+ complaint (_("could not parse SystemTap probe(s) "
"from inferior"));
return;
}
initial symbol reading for this file. */
(*objfile->sf->sym_init) (objfile);
- clear_complaints (&symfile_complaints, 1);
+ clear_complaints (1);
(*objfile->sf->sym_offsets) (objfile, *addrs);
}
/* We're done reading the symbol file; finish off complaints. */
- clear_complaints (&symfile_complaints, 0);
+ clear_complaints (0);
}
/* Process a symbol file, as either the main file or as a dynamically
}
(*objfile->sf->sym_init) (objfile);
- clear_complaints (&symfile_complaints, 1);
+ clear_complaints (1);
objfile->flags &= ~OBJF_PSYMTABS_READ;
}
/* We're done reading the symbol file; finish off complaints. */
- clear_complaints (&symfile_complaints, 0);
+ clear_complaints (0);
/* Getting new symbols may change our opinion about what is
frameless. */
2018-05-23 Tom Tromey <tom@tromey.com>
+ * gdb.gdb/complaints.exp (test_initial_complaints): Don't mention
+ symfile_complaints.
+ (test_short_complaints): Likewise.
+ (test_empty_complaints): Likewise.
+ (test_initial_complaints): Update.
+
+2018-05-23 Tom Tromey <tom@tromey.com>
+
* gdb.gdb/complaints.exp (test_empty_complaints): Update.
2018-05-23 Tom Tromey <tom@tromey.com>
# Prime the system
gdb_test_stdio \
- "call complaint_internal (&symfile_complaints, \"Register a complaint\")" \
+ "call complaint_internal (\"Register a complaint\")" \
"During symbol reading, Register a complaint."
# Check that the complaint was inserted and where
- gdb_test "print symfile_complaints->root->fmt" \
+ gdb_test "print symfile_complaint_book.root->fmt" \
".\[0-9\]+ =.*\"Register a complaint\""
# Re-issue the first message #1
gdb_test_stdio \
- "call complaint_internal (&symfile_complaints, symfile_complaints->root->fmt)" \
+ "call complaint_internal (symfile_complaint_book.root->fmt)" \
"During symbol reading, Register a complaint."
# Check that there is only one thing in the list. How the boolean
# result is output depends on whether GDB is built as a C or C++
# program.
- gdb_test "print symfile_complaints->root->next == &complaint_sentinel" \
+ gdb_test "print symfile_complaint_book.root->next == &complaint_sentinel" \
".\[0-9\]+ = \(1|true\)" "list has one entry"
# Add a second complaint, expect it
gdb_test_stdio \
- "call complaint_internal (&symfile_complaints, \"Testing! Testing! Testing!\")" \
+ "call complaint_internal (\"Testing! Testing! Testing!\")" \
"During symbol reading, Testing. Testing. Testing.."
return 0
# For short complaints, all are the same
proc test_short_complaints { } {
- gdb_test_exact "call clear_complaints (&symfile_complaints, 1)" "" "short start"
+ gdb_test_exact "call clear_complaints (1)" "" "short start"
# Prime the system
test_complaint \
- "call complaint_internal (&symfile_complaints, \"short line 1\")" \
+ "call complaint_internal (\"short line 1\")" \
"short line 1..." \
"short line 1"
# Add a second complaint, expect it
test_complaint \
- "call complaint_internal (&symfile_complaints, \"short line 2\")" \
+ "call complaint_internal (\"short line 2\")" \
"short line 2..." \
"short line 2"
proc test_empty_complaints { } {
- test_empty_complaint "call clear_complaints(&symfile_complaints,0)" \
+ test_empty_complaint "call clear_complaints(0)" \
"empty non-verbose clear"
- test_empty_complaint "call clear_complaints(&symfile_complaints,1)" \
+ test_empty_complaint "call clear_complaints(1)" \
"empty verbose clear"
return 0
4 mysterious UNLOAD_DLL_DEBUG_EVENTs during the startup phase (these
events are apparently caused by the WOW layer, the interface between
32bit and 64bit worlds). */
- complaint (&symfile_complaints, _("dll starting at %s not found."),
+ complaint (_("dll starting at %s not found."),
host_address_to_string (lpBaseOfDll));
}
static void
bf_notfound_complaint (void)
{
- complaint (&symfile_complaints,
- _("line numbers off, `.bf' symbol not found"));
+ complaint (_("line numbers off, `.bf' symbol not found"));
}
static void
ef_complaint (int arg1)
{
- complaint (&symfile_complaints,
- _("Mismatched .ef symbol ignored starting at symnum %d"), arg1);
+ complaint (_("Mismatched .ef symbol ignored starting at symnum %d"), arg1);
}
static void
eb_complaint (int arg1)
{
- complaint (&symfile_complaints,
- _("Mismatched .eb symbol ignored starting at symnum %d"), arg1);
+ complaint (_("Mismatched .eb symbol ignored starting at symnum %d"), arg1);
}
static void xcoff_initial_scan (struct objfile *, symfile_add_flags);
/* This can happen with old versions of GCC.
GCC 2.3.3-930426 does not exhibit this on a test case which
a user said produced the message for him. */
- complaint (&symfile_complaints, _("Nested C_BINCL symbols"));
+ complaint (_("Nested C_BINCL symbols"));
}
++inclDepth;
if (inclDepth == 0)
{
- complaint (&symfile_complaints, _("Mismatched C_BINCL/C_EINCL pair"));
+ complaint (_("Mismatched C_BINCL/C_EINCL pair"));
}
allocate_include_entry ();
{
if (endoffset >= limit_offset)
{
- complaint (&symfile_complaints,
- _("Bad line table offset in C_EINCL directive"));
+ complaint (_("Bad line table offset in C_EINCL directive"));
return;
}
limit_offset = endoffset;
bfd_coff_swap_sym_in (objfile->obfd, raw_symbol, &symbol);
if (symbol.n_zeroes)
{
- complaint (&symfile_complaints, _("Unexpected symbol continuation"));
+ complaint (_("Unexpected symbol continuation"));
/* Return something which points to '\0' and hope the symbol reading
code does something reasonable. */
}
else
{
- complaint (&symfile_complaints, _("Unexpected symbol continuation"));
+ complaint (_("Unexpected symbol continuation"));
/* Return something which points to '\0' and hope the symbol reading
code does something reasonable. */
case C_UNTAG:
case C_ENTAG:
{
- complaint (&symfile_complaints,
- _("Unrecognized storage class %d."),
+ complaint (_("Unrecognized storage class %d."),
cs->c_sclass);
}
break;
break;
default:
- complaint (&symfile_complaints, _("Unexpected storage class: %d"),
+ complaint (_("Unexpected storage class: %d"),
cs->c_sclass);
/* FALLTHROUGH */
if (symno < 0 || symno >= nsyms)
{
- complaint (&symfile_complaints, _("Invalid symbol offset"));
+ complaint (_("Invalid symbol offset"));
symbol->n_value = 0;
symbol->n_scnum = -1;
return;
static void
function_outside_compilation_unit_complaint (const char *arg1)
{
- complaint (&symfile_complaints,
- _("function `%s' appears to be defined "
+ complaint (_("function `%s' appears to be defined "
"outside of all compilation units"),
arg1);
}
default:
{
- complaint (&symfile_complaints,
- _("Storage class %d not recognized during scan"),
+ complaint (_("Storage class %d not recognized during scan"),
sclass);
}
/* FALLTHROUGH */
the end of every string looking for a
backslash. */
- complaint (&symfile_complaints,
- _("unknown symbol descriptor `%c'"), p[1]);
+ complaint (_("unknown symbol descriptor `%c'"), p[1]);
/* Ignore it; perhaps it is an extension that we don't
know about. */