aboutsummaryrefslogtreecommitdiff
path: root/gdb/dwarf2read.c
AgeCommit message (Collapse)AuthorFilesLines
2011-09-01gdb/Jan Kratochvil1-8/+0
Revert: 2010-05-21 Pierre Muller <muller@ics.u-strasbg.fr> * dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter attribute. gdb/testsuite/ * dw2-ifort-parameter-debug.S: New file. * dw2-ifort-parameter.c: New file. * dw2-ifort-parameter.exp: New file.
2011-07-27gdb/Jan Kratochvil1-228/+71
* dwarf2expr.c (ctx_no_read_reg): New function. * dwarf2expr.h (ctx_no_read_reg): New declaration. * dwarf2read.c (read_2_signed_bytes, read_4_signed_bytes): Remove. (decode_locdesc_read_mem, decode_locdesc_ctx_funcs): New. (decode_locdesc): Replace by a caller of dwarf_expr_eval. gdb/testsuite/ * gdb.dwarf2/dw2-simple-locdesc.S: New file. * gdb.dwarf2/dw2-simple-locdesc.exp: New file. * gdb.dwarf2/dw2-stack-boundary.exp (check partial symtab errors): Change the expected string.
2011-07-27 * xcoffread.c (dwarf2_xcoff_names): Add 'macro' and 'sentinel'Tom Tromey1-1/+2
entries. * symfile.h (struct dwarf2_debug_sections) <sentinel>: New field. * dwarf2read.c (dwarf2_elf_names): Add sentinel entry.
2011-07-26 * symfile.h (struct dwarf2_debug_sections) <macro>: New field.Tom Tromey1-145/+454
* dwarf2read.c (read_indirect_string_at_offset): New function. (read_indirect_string): Use it. (dwarf_decode_macro_bytes): New function, taken from dwarf_decode_macros. Handle DW_MACRO_GNU_*. (dwarf_decode_macros): Use it. handle DW_MACRO_GNU_*. (dwarf_parse_macro_header, skip_form_bytes, skip_unknown_opcode): New functions. (struct dwarf2_per_objfile) <macro>: New field. (dwarf2_elf_names): Add .debug_macro. (dwarf2_macros_too_long_complaint): Add 'section' argument. (dwarf2_locate_sections): Handle new section. (read_file_scope): Handle DW_AT_GNU_macros. (dwarf2_per_objfile_free): Unmap the .debug_macro section.
2011-07-20 * dwarf2read.c (process_enumeration_scope): Do not call new_symbolTom Tromey1-0/+26
in some declaration-only cases.
2011-07-20 PR symtab/12984:Tom Tromey1-118/+172
* dwarf2read.c (dwarf2_section_info_def): New typedef. (struct dwarf2_per_objfile) <types>: Change to a VEC. (struct dwarf2_per_cu_data) <from_debug_types>: Remove. <debug_type_section>: New field. (dwarf2_locate_sections): Push .debug_types sections onto VEC. (load_cu): Use appropriate section. (create_signatured_type_table_from_index): Add 'section' argument. (dwarf2_read_index): Only allow a single .debug_types section. (dw2_get_file_names): Use appropriate section. (read_type_comp_unit_head): Add 'section' argument. (create_debug_types_hash_table): Loop over all .debug_types sections. (init_cu_die_reader): Use appropriate section. (process_psymtab_comp_unit, load_partial_comp_unit) (load_full_comp_unit, read_die_and_children, find_partial_die) (lookup_die_type, determine_prefix, follow_die_offset): Update. (lookup_signatured_type_at_offset): Add 'section' argument. (read_signatured_type_at_offset): Add 'sect' argument. (read_signatured_type): Use appropriate section. (set_die_type, get_die_type_at_offset): Update. (dwarf2_per_objfile_free): Free all .debug_types sections, and VEC. (write_psymtabs_to_index): Don't allow index with more than one .debug_types section.
2011-07-19gdb/Jan Kratochvil1-8/+34
Fix crash if referenced CU is aged out. * dwarf2loc.c (per_cu_dwarf_call): New variable back_to, use to for xfree of block.data. (indirect_pieced_value): New variable back_to, use to for xfree of baton.data. (dwarf2_compile_expr_to_ax): New variable back_to, use to for xfree of block.data. * dwarf2read.c (dwarf2_find_base_address): New prototype. (load_cu): New function from ... (dw2_do_instantiate_symtab): ... the code here ... (process_full_comp_unit): ... and here. (dwarf2_fetch_die_location_block): Call load_cu first. Call xmemdup on retval.data. gdb/testsuite/ Fix crash if referenced CU is aged out. * gdb.dwarf2/dw2-op-call.exp (maintenance set dwarf2 max-cache-age 0): New. * gdb.dwarf2/implptr.exp: Likewise.
2011-07-18 * dwarf2read.c (read_subrange_type): Use attr_form_is_block whenTom Tromey1-2/+2
checking for variable-sized array.
2011-07-12gdb/Jan Kratochvil1-0/+7
Fix occasional crash of CTRL-C during DWARF read in. * dwarf2read.c (dwarf2_mark_helper): Return on NULL CU.
2011-07-11 * dwarf2read.c (handle_DW_AT_stmt_list): New function.Tom Tromey1-18/+34
(read_file_scope, read_type_unit_scope): Use it.
2011-07-05gdbTom Tromey1-0/+3
* gnu-v3-abi.c (gnuv3_rtti_type): Check TYPE_CPLUS_REALLY_JAVA. * gdbtypes.h (struct cplus_struct_type) <is_java>: New field. (TYPE_CPLUS_REALLY_JAVA): New macro. * dwarf2read.c (process_structure_scope): Set TYPE_CPLUS_REALLY_JAVA. gdb/testsuite * gdb.java/jprint.java (jprint.hi): New field. * gdb.java/jprint.exp: Print string.
2011-07-01gdb/Jan Kratochvil1-1/+105
* dwarf2read.c (check_physname): New variable. (dwarf2_physname): Prefer DW_AT_linkage_name over dwarf2_compute_name. (show_check_physname): New function. (_initialize_dwarf2_read): Add `check-physname' for check_physname. gdb/doc/ * gdb.texinfo (Debugging Output): Document set debug check-physname. gdb/testsuite/ * gdb.base/break-interp.exp (reach_1, test_ld): Allow also the prefix __GI_. * gdb.cp/psymtab-parameter.cc (func): Make it a template function. (f): New function. * gdb.cp/psymtab-parameter.exp (complete break 'func(): Rename to ... (complete p 'func<short>(): ... here. * gdb.dwarf2/dw2-linkage-name-trust-main.cc: New file. * gdb.dwarf2/dw2-linkage-name-trust.S: New file. * gdb.dwarf2/dw2-linkage-name-trust.exp: New file. * gdb.cp/temargs.exp (test type of F in k3_m, test value of F in k3_m): Make them KFAIL gcc/49546.
2011-06-29gdb/Jan Kratochvil1-0/+3
Disable epilogue unwinders on recent GCCs. * amd64-tdep.c (amd64_in_function_epilogue_p): New variable symtab, initialize it, return 0 on EPILOGUE_UNWIND_VALID. * dwarf2read.c (process_full_comp_unit): Initialize EPILOGUE_UNWIND_VALID. * i386-tdep.c (i386_in_function_epilogue_p): New variable symtab, initialize it, return 0 on EPILOGUE_UNWIND_VALID. * symtab.h (struct symtab): New field epilogue_unwind_valid.
2011-06-29gdb/Jan Kratochvil1-7/+15
Code cleanup - reformatting. * dwarf2read.c (producer_is_gcc_ge_4_0): Rename to ... (producer_is_gcc_ge_4): ... here, change the return value. (process_full_comp_unit): New variable gcc_4_minor, adjust the value interpretation.
2011-06-29gdb/Jan Kratochvil1-2/+53
Fix non-only rename list for Fortran modules import. * cp-namespace.c (cp_scan_for_anonymous_namespaces): Adjust the cp_add_using_directive caller. (cp_add_using_directive): New parameter excludes, describe it. New variables ix and param. Compare if also excludes match. Allocate NEW with variable size, initialize EXCLUDES there. (cp_lookup_symbol_imports): New variable excludep, test current->EXCLUDES with it. * cp-support.h: Include vec.h. (struct using_direct): New field excludes, describe it. (DEF_VEC_P (const_char_ptr)): New. (cp_add_using_directive): New parameter excludes. * defs.h (const_char_ptr): New typedef. * dwarf2read.c (read_import_statement): New variables child_die, excludes and cleanups, read in excludes. (read_namespace): Adjust the cp_add_using_directive caller. gdb/testsuite/ Fix non-only rename list for Fortran modules import. * gdb.fortran/module.exp (print var_x, print var_y, print var_z): New tests. * gdb.fortran/module.f90 (module moduse): New. (program module): use moduse, test var_x, var_y and var_z.
2011-06-29gdbTom Tromey1-2/+8
PR fortran/10036: * valprint.h (generic_emit_char, generic_printstr): Declare. * valprint.c (wchar_printable, append_string_as_wide) (print_wchar): Move from c-lang.c. (generic_emit_char): New function; mostly taken from c_emit_char. (generic_printstr): New function; mostly taken from c_printstr. * f-valprint.c (f_val_print) <TYPE_CODE_ARRAY>: Handle strings represented as arrays. <TYPE_CODE_CHAR>: Treat as TYPE_CODE_INT; recognize as character type. * f-typeprint.c (f_type_print_base) <TYPE_CODE_CHAR>: Treat identically to TYPE_CODE_INT. * f-lang.c (f_get_encoding): New function. (f_emit_char): Use generic_emit_char. (f_printchar): Replace comment. (f_printstr): Use generic_printstr. * dwarf2read.c (read_base_type) <DW_ATE_unsigned>: Handle Fortran "character" types specially. <DW_ATE_signed_char, DW_ATE_unsigned_char>: Make TYPE_CODE_CHAR for Fortran. * c-lang.c (wchar_printable, append_string_as_wide, print_wchar): Move to valprint.c (c_emit_char): Call generic_emit_char. (c_printstr): Call generic_printstr. gdb/testsuite * gdb.fortran/charset.exp: New file. * gdb.fortran/charset.f90: New file.
2011-06-272011-06-27 Tristan Gingold <gingold@adacore.com>Tristan Gingold1-15/+14
* dwarf2read.c (struct dwarf2_section_info): Replace was_mmapped field by map_addr and map_len. (dwarf2_read_section): Adjust for the new bfd_mmap api. (munmap_section_buffer): Likewise.
2011-06-10gdb/Jan Kratochvil1-2/+1
Code cleanup. * dwarf2read.c (dw2_map_symbol_filenames): Use symbol_filename_ftype for fun. * psymtab.c (map_symbol_filenames_psymtab) (map_partial_symbol_filenames): Likewise. * psymtab.h: Include symfile.h. (map_partial_symbol_filenames): Use symbol_filename_ftype for fun. * symfile.h (symbol_filename_ftype): New. (struct quick_symbol_functions): Use symbol_filename_ftype for fun of map_symbol_filenames, clarify more the naming in comment.
2011-05-31 PR symtab/12704Keith Seitz1-2/+2
* cp-namespace.c (ANONYMOUS_NAMESPACE_LEN): Remove. (cp_scan_for_anonymous_namespaces): Use CP_ANONYMOUS_NAMESPACE_STR and CP_ANONYMOUS_NAMESPACE_LEN. (cp_is_anonymous): Likewise. * cp-support.h (CP_ANONYMOUS_NAMESPACE_STR): Define. (CP_ANONYMOUS_NAMESPACE_LEN): Define. * dwarf2read.c (namespace_name): Likewise. (fixup_partial_die): Likewise. * linespec.c (decode_compound): If CP_ANONYMOUS_NAMESPACE_STR is seen in the input, keep it.
2011-05-262011-05-26 Tristan Gingold <gingold@adacore.com>Tristan Gingold1-34/+51
* symfile.h (struct dwarf2_section_names): New type. (struct dwarf2_debug_sections): New type. (dwarf2_has_info): Add parameter. * dwarf2read.c (dwarf2_elf_names): New variable. (INFO_SECTION, ABBREV_SECTION, LINE_SECTION, LOC_SECTION) (MACINFO_SECTION, STR_SECTION, RANGES_SECTION, TYPES_SECTION) (FRAME_SECTION, EH_FRAME_SECTION, GDB_INDEX_SECTION): Remove. (dwarf2_has_info): Add names parameter. Pass names to dwarf2_locate_sections. (section_is_p): Rewrite using the names parameter. (dwarf2_locate_sections): Use section names from the names parameter. * coffread.c (coff_symfile_read): Adjust call to dwarf2_has_info. * elfread.c (read_psyms): Ditto. * machoread.c (macho_symfile_read): Ditto.
2011-05-242011-05-24 Tristan Gingold <gingold@adacore.com>Tristan Gingold1-7/+13
* symfile.h (enum dwarf2_section_enum): New type. (dwarf2_get_section_info): New prototype. * dwarf2read.c (dwarf2_get_section_info): Replace parameter section_name by sect. Use a switch to select the info. * dwarf2-frame.c (warf2_get_section_info): Remove prototype. (dwarf2_build_frame_info): Adjust calls to dwarf2_get_section_info.
2011-05-20gdb/Jan Kratochvil1-13/+20
Fix -readnow for -gdwarf-4 unused type units. * dwarf2read.c (struct signatured_type): Remove the field offset. (create_signatured_type_table_from_index): Remove its initialization. (create_debug_types_hash_table): Likewise. Initialize per_cu.offset instead. Add a complaint call. (process_psymtab_comp_unit): Change assignment to gdb_assert. (process_type_comp_unit, lookup_die_type, dump_die_shallow) (lookup_signatured_type_at_offset, read_signatured_type) (write_one_signatured_type): Update the field for per_cu. gdb/testsuite/ Fix -readnow for -gdwarf-4 unused type units. * gdb.dwarf2/dw4-sig-type-unused.S: New file. * gdb.dwarf2/dw4-sig-type-unused.exp: New file.
2011-05-18 * dwarf2read.c (dwarf2_add_field): Constify.Tom Tromey1-2/+2
* value.c (value_static_field): Constify. * gdbtypes.h (struct main_type) <field.field_location.physname>: Now const. * ax-gdb.c (gen_static_field): Constify
2011-05-18 * value.c (value_fn_field): Constify.Tom Tromey1-3/+3
* symtab.c (gdb_mangle_name): Constify. * stabsread.c (update_method_name_from_physname): Make 'physname' argument const. * p-typeprint.c (pascal_type_print_method_args): Make arguments const. Use explicit fputc_filtered loop. (pascal_type_print_base): Constify. * p-lang.h (pascal_type_print_method_args): Update. * linespec.c (add_matching_methods): Constify. (add_constructors): Likewise. * jv-typeprint.c (java_type_print_base): Constify. * gdbtypes.h (struct cplus_struct_type) <fn_fieldlist.fn_field.physname>: Now const. * dwarf2read.c (compute_delayed_physnames): Constify. (dwarf2_add_member_fn): Likewise. * c-typeprint.c (c_type_print_base): Constify. Use cleanups.
2011-05-17 * dwarf2read.c (dwarf2_get_die_type): CallTom Tromey1-15/+1
get_die_type_at_offset. * dwarf2expr.c (dwarf_get_base_type): Handle NULL return from get_base_type function.
2011-05-12gdbTom Tromey1-0/+37
PR gdb/12617: * value.h (value_from_contents): Declare. * value.c (value_from_contents): New function. * dwarf2read.c (dwarf_stack_op_name): Add new values. (dwarf2_get_die_type): New function. * dwarf2loc.c (dwarf_expr_get_base_type): New function. (allocate_piece_closure): Acquire reference to values. (read_pieced_value): Update for value-based expressions. (write_pieced_value): Likewise. (free_pieced_value_closure): Call value_free as needed. (dwarf2_evaluate_loc_desc_full): Set get_base_type field. Update for value-based expressions. * dwarf2loc.h (dwarf2_get_die_type): Declare. * dwarf2expr.h (struct dwarf_stack_value) <value>: Change type. <get_base_type>: New field. (struct dwarf_expr_piece) <v.value>: Change type. <v.regno>: New field. (struct dwarf_expr_context) <mark>: New field. (dwarf_expr_piece, dwarf_expr_fetch): Update. (dwarf_expr_pop, dwarf_expr_push): Remove. (dwarf_expr_push_address): Declare. * dwarf2expr.c (dwarf_arch_cookie): New global. (struct dwarf_gdbarch_types): New. (dwarf_gdbarch_types_init, dwarf_expr_address_type): New functions. (dwarf_expr_push): Change type of 'value' argument. Update. Now static. (dwarf_expr_push_address): New function. (dwarf_expr_pop): Now static. (dwarf_expr_fetch): Change return type. (dwarf_require_integral): New function. (dwarf_expr_fetch): Simplify. (add_piece): Update. (base_types_equal_p, dwarf_get_base_type, get_unsigned_type): New functions. (execute_stack_op) <sign_ext>: Remove. Use values for DWARF stack. <DW_OP_GNU_const_type, DW_OP_GNU_deref_type, DW_OP_GNU_regval_type, DW_OP_GNU_convert, DW_OP_GNU_reinterpret>: New cases. (_initialize_dwarf2expr): New function. (add_piece): Update. (new_dwarf_expr_context): Set new field. (free_dwarf_expr_context): Call value_free_to_mark. * dwarf2-frame.c (no_base_type): New function. (execute_stack_op): Set get_base_type field. Update. gdb/testsuite * gdb.dwarf2/typeddwarf.S: New file. * gdb.dwarf2/typeddwarf.c: New file. * gdb.dwarf2/typeddwarf.exp: New file.
2011-05-12 * dwarf2read.c (read_common_block): Fix formatting.Tom Tromey1-2/+2
2011-05-11 * dwarf2read.c (handle_data_member_location): New function.Tom Tromey1-46/+48
(dwarf2_add_field): Use it. (read_common_block): Likewise.
2011-05-06gdb/Jan Kratochvil1-6/+67
PR 12573 * dwarf2read.c (struct dwarf2_cu): New field has_loclist. (producer_is_gcc_ge_4_0): New function. (process_full_comp_unit): Set also symtab->locations_valid. Move the symtab->language code. (var_decode_location): Set cu->has_loclist. * symtab.c (skip_prologue_sal): New variables saved_pc, force_skip and skip. Intialize force_skip from locations_valid. Move the prologue skipping code into two passes. * symtab.h (struct symtab): Make the primary field a bitfield. New field locations_valid. gdb/testsuite/ PR 12573 * gdb.dwarf2/dw2-skip-prologue.S: New file. * gdb.dwarf2/dw2-skip-prologue.c: New file. * gdb.dwarf2/dw2-skip-prologue.exp: New file.
2011-05-06gdb/Jan Kratochvil1-1/+15
* c-exp.y (qualified_name): Call destructor_name_p with $1.type. (classify_inner_name): Call cp_lookup_nested_type with yylval.tsym.type. * cp-namespace.c (cp_lookup_nested_type): New variable saved_parent_type. Call CHECK_TYPEDEF for parent_type. Call type_name_no_tag_or_error with saved_parent_type. * dwarf2read.c (load_partial_dies): Read in any children of DW_TAG_typedef with complaint in such case. * gdbtypes.c (type_name_no_tag_or_error): New function. * gdbtypes.h (type_name_no_tag_or_error): New prototype. * valops.c (destructor_name_p): New comment for parameter type. Remove type const. Make dname and cp const. Call type_name_no_tag_or_error. * value.h (destructor_name_p): Remove type const.
2011-04-27gdb/doc/Jan Kratochvil1-12/+38
* gdb.texinfo (Index Section Format): Change the version to 5. Describe the different formula. gdb/ Case insensitive lookups implementation. * dwarf2read.c: Include ctype.h. (struct mapped_index): New field version. (mapped_index_string_hash): New parameter index_version. New comment for it. Call tolower appropriately. (find_slot_in_mapped_hash): New variable cmp, initialize it, use it. Choose the right index version for mapped_index_string_hash. (dwarf2_read_index): Support also the index version 5. Initialize the new struct mapped_index field version. (hash_strtab_entry): Pass INT_MAX for the new parameter, explain why. (find_slot): Explain the version needs. Pass INT_MAX for the new parameter. (write_psymtabs_to_index): Produce version 5. * minsyms.c (lookup_minimal_symbol): New variable cmp, initialize it, use it. New comment for SYMBOL_MATCHES_SEARCH_NAME. * psymtab.c (lookup_partial_symbol): Find the SYMBOL_MATCHES_SEARCH_NAME start of the found block of matching entries. * symtab.c (lookup_symbol_in_language): Remove the case_sensitive_off NAME lowercasing. (search_symbols): Pass REG_ICASE to regcomp for case_sensitive_off. (completion_list_add_name): New variable ncmp, initialize it, use it. * symtab.h (SYMBOL_HASH_NEXT): Always call tolower. * utils.c (strcmp_iw): Support case_sensitive_off. (strcmp_iw_ordered): Sort in a way compatible with case_sensitive_off. New function comment part. New variables saved_string1, saved_string2 and case_pass. Add a proper second pass. gdb/testsuite/ * gdb.base/fortran-sym-case.c: New file. * gdb.base/fortran-sym-case.exp: New file. * gdb.dwarf2/dw2-case-insensitive-debug.S: New file. * gdb.dwarf2/dw2-case-insensitive.c: New file. * gdb.dwarf2/dw2-case-insensitive.exp: New file.
2011-04-27gdb/Jan Kratochvil1-0/+5
Format the code for the next patch. * dwarf2read.c (struct mapped_index): Include delimiting newlines. * utils.c (strcmp_iw_ordered): Reformat the code for the next patch. New variables c1 and c2.
2011-04-20gdb/Jan Kratochvil1-53/+23
* ada-lang.c (struct add_partial_datum): Update the comment for expand_partial_symbol_name. (ada_add_partial_symbol_completions): Rename to ... (ada_expand_partial_symbol_name): ... here, change return type, update function comment, call symbol_completion_match instead of symbol_completion_add. (ada_make_symbol_completion_list): Use now expand_partial_symbol_names and ada_expand_partial_symbol_name. * dwarf2read.c (dw2_expand_symtabs_matching): Support NULL FILE_MATCHER. (dw2_map_symbol_names): Remove. (dwarf2_gdb_index_functions): Unlist dw2_map_symbol_names. * psymtab.c (map_symbol_names_psymtab): Remove. (expand_symtabs_matching_via_partial): Support NULL FILE_MATCHER. Support KIND == ALL_DOMAIN. Exchange the NAME_MATCHER and KIND check order. (psym_functions): Unlist map_symbol_names_psymtab. (map_partial_symbol_names): Rename to ... (expand_partial_symbol_names): ... here, change the FUN type, call expand_symtabs_matching with ALL_DOMAIN and NULL FILE_MATCHER now. * psymtab.h (map_partial_symbol_names): Rename to ... (expand_partial_symbol_names): ... here, change the FUN type. * symfile.h (struct quick_symbol_functions): Update the description of expand_symtabs_matching. Remove map_symbol_names. * symtab.c (search_symbols): Add ALL_DOMAIN to the function comment. (struct add_name_data): Update the comment for expand_partial_symbol_name. (add_partial_symbol_name): Rename to ... (expand_partial_symbol_name): ... here. Replace completion_list_add_name call by strncmp. (default_make_symbol_completion_list_break_on): Use now expand_partial_symbol_names and expand_partial_symbol_name. * symtab.h (enum search_domain): New element ALL_DOMAIN. gdb/testsuite/ * gdb.cp/cpcompletion.exp (complete class methods) (complete class methods beginning with F): Move them above runto. New comment about the runto delimiter.
2011-04-20gdbTom Tromey1-69/+4
* dwarf2read.c (save_gdb_index_command): Replace format documentation with a pointer to the manual. gdb/doc * gdb.texinfo (Index Section Format): New node. (Top): Add new node to menu.
2011-04-15 * dwarf2read.c (add_index_entry): Use VEC_last, not VEC_length.Tom Tromey1-1/+1
2011-04-09gdb/Jan Kratochvil1-1/+2
Fix crash of gdb save-index on a STABS file. * dwarf2read.c (write_psymtabs_to_index): Return also on no PSYMTABS_ADDRMAP.
2011-04-09gdb/Jan Kratochvil1-18/+92
Fix DW_AT_accessibility compatibility with gcc-4.6+. * dwarf2read.c: Include ctype.h. (producer_is_gxx_lt_4_6, dwarf2_default_access_attribute): New functions. (dwarf2_add_field): Fix new_field->accessibility by calling dwarf2_default_access_attribute. Restructure setting accessibility vs. virtuality. (dwarf2_add_member_fn): New variable accessibility. Fix fnp is_private and is_protected by calling dwarf2_default_access_attribute.
2011-04-06gdb/Jan Kratochvil1-5/+5
Code cleanup. * dictionary.c (dict_hash): Use SYMBOL_HASH_NEXT. * dwarf2read.c (mapped_index_string_hash): Refer to SYMBOL_HASH_NEXT in the function comment, a new note on values compatibility. * minsyms.c (msymbol_hash_iw, msymbol_hash): Use SYMBOL_HASH_NEXT. * symtab.h (SYMBOL_HASH_NEXT): New.
2011-04-04 * symtab.h (domain_enum): Split in two...Tom Tromey1-2/+2
(enum search_domain): New. (search_symbols): Update. * symtab.c (print_symbol_info, symtab_symbol_info): Remove redundant declarations. (search_symbols): Change 'kind' argument to search_domain. Update. (print_symbol_info): Likewise. (symtab_symbol_info): Likewise. * symfile.h (struct quick_symbol_functions) <pre_expand_symtabs_matching>: Change type of 'kind' argument. <expand_symtabs_matching>: Likewise. * psymtab.c (pre_expand_symtabs_matching_psymtabs): Update. (expand_symtabs_matching_via_partial): Update. * dwarf2read.c (dw2_pre_expand_symtabs_matching): Update. (dw2_expand_symtabs_for_function): Update. * block.h: Moved anonymous enum... * defs.h (enum block_enum): ... here. Now named.
2011-04-01gdb/Jan Kratochvil1-2/+29
* dwarf2read.c (find_slot_in_mapped_hash): New variable back_to, initialize it. Delay HASH initialization. Strip the part after open parenthesis for languages with qualifiers. Call do_cleanups.
2011-03-31gdb/Jan Kratochvil1-1/+1
* dwarf2read.c (dwarf2_read_index): Fix .gdb_index version number in the comment.
2011-03-31gdb/Jan Kratochvil1-2/+5
* dwarf2read.c (dwarf2_name): Initialize DEMANGLED. Avoid demangling struct linkage name twice.
2011-03-29gdbTom Tromey1-3/+53
* dwarf2read.c (fixup_partial_die): Handle linkage name on otherwise anonymous types. (dwarf2_name): Likewise. * valops.c (value_struct_elt_for_reference): Refine artificial type logic. Call error if j==-1. gdb/testsuite * gdb.cp/anon-struct.cc: New file. * gdb.cp/anon-struct.exp: New file.
2011-03-28 PR symtab/12441:Tom Tromey1-1/+4
* dwarf2read.c (prepare_one_comp_unit): Don't call set_cu_language with `language_minimal'.
2011-03-242011-03-24 Mark Wielaard <mjw@redhat.com>Tom Tromey1-10/+10
* dwarf2read.c (lookup_signatured_type): Use DW_FORM_ref_sig8 in complaint. (skip_one_die): Use DW_FORM_ref_sig8, not DW_FORM_sig8. (find_partial_die_in_comp_unit): Likewise in comment. (read_attribute_value): Likewise. (lookup_die_type): Likewise. (dwarf_form_name): Likewise. (dump_die_shallow): Likewise. (follow_die_ref_or_sig): Likewise.
2011-03-22gdb/Jan Kratochvil1-1/+1
Code cleanup. * c-typeprint.c (c_type_print_args): Change parameter show_artificial to linkage_name. Invert its value. Update the function comment. (c_type_print_varspec_suffix): Invert it at the caller. * dwarf2read.c (dwarf2_compute_name): Invert it at the caller.
2011-03-22gdb/Jan Kratochvil1-42/+6
Revert: 2011-03-21 Jan Kratochvil <jan.kratochvil@redhat.com> * dwarf2read.c (producer_is_gxx_lt_4_6): New function. (dwarf2_add_field): Fix new_field->accessibility for cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6.
2011-03-21gdb/Jan Kratochvil1-6/+42
* dwarf2read.c (producer_is_gxx_lt_4_6): New function. (dwarf2_add_field): Fix new_field->accessibility for cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6.
2011-03-16ChangeLog:Paul Pluzhnikov1-5/+32
2011-03-16 Paul Pluzhnikov <ppluzhnikov@google.com> PR gdb/12528 * dwarf2read.c (noop_record_line): New function. (dwarf_decode_lines): Ignore line tables for GCd functions. testsuite/ChangeLog: 2011-03-16 Paul Pluzhnikov <ppluzhnikov@google.com> PR gdb/12528 * gdb.base/Makefile.in: Adjust EXECUTABLES. * gdb.base/break-on-linker-gcd-function.exp: New test. * gdb.base/break-on-linker-gcd-function.cc: New file.
2011-03-15gdb/Jan Kratochvil1-14/+37
* dwarf2read.c (dwarf2_get_pc_bounds): Require HIGH strictly higher than LOW. Comment it. (read_partial_die): Call complaint for inappropriate zero LOWPC or HIGHPC not strictly higher than LOWPC. gdb/testsuite/ * gdb.dwarf2/dw2-empty-pc-range.S: New file. * gdb.dwarf2/dw2-empty-pc-range.exp: New file. * gdb.dwarf2/pr11465.S: New .text labels text_start and text_end. Provide a stub byte there. (DW_TAG_compile_unit): Set DW_AT_low_pc, DW_AT_high_pc and DW_AT_entry_pc. (dieb4, dieda): Set DW_AT_high_pc higher than DW_AT_low_pc.