aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-03-14bfd/Alan Modra5-161/+226
PR ld/11378 * elf64-ppc.h (ppc64_elf_check_init_fini): Declare. * elf64-ppc.c (call_check_done): Define. (ppc64_elf_add_symbol_hook): Substitute bfd_get_section_name macro. (ppc64_elf_check_relocs, ppc64_elf_size_dynamic_sections): Likewise. (ppc64_elf_finish_multitoc_partition): Remove unnecessary check. (toc_adjusting_stub_needed): Use call_check_done rather than toc_off. Simplify return logic. Iterate over all .init and .fini fragments by recursion. Set makes_toc_func_call here.. (ppc64_elf_next_input_section): ..rather than here. (check_pasted_section, ppc64_elf_check_init_fini): New functions. ld/ PR ld/11378 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_after_allocation): Call ppc64_elf_check_init_fini and warn if .init/.fini use different TOCs.
2010-03-14*** empty log message ***gdbadmin1-1/+1
2010-03-13daily updateAlan Modra1-1/+1
2010-03-132010-03-13 Segher Boessenkool <segher@kernel.crashing.org>Segher Boessenkool2-1/+23
* config/tc-v850.c (v850_insert_operand): Handle out-of-range assembler constants on 64-bit hosts.
2010-03-13gdbTom Tromey5-7/+52
PR c++/9708: * dwarf2read.c (die_needs_namespace) <DW_TAG_variable>: A variable in a lexical block does not need a namespace. (new_symbol) <DW_TAG_variable>: Put extern variables on list_in_scope in all cases. gdb/testsuite PR c++/9708: * gdb.cp/m-static.exp: Add regression test. * gdb.cp/m-static.cc (method): New method. (main): Call it.
2010-03-13*** empty log message ***gdbadmin1-1/+1
2010-03-122010-03-12 Stan Shebs <stan@codesourcery.com>Stan Shebs2-0/+15
* ax-gdb.c (gen_expr): Add shift expressions. (gen_expr_binop_rest): Ditto.
2010-03-12daily updateAlan Modra1-1/+1
2010-03-12 PR ld/11375Alan Modra2-3/+12
* elf64-ppc.c (ppc_type_of_stub): Always set *hash to the function descriptor symbol if there is one, not just for plt stubs. (ppc64_elf_relocate_section): Use fdh on all ppc_get_stub_entry calls.
2010-03-122010-03-12 Sami Wagiaalla <swagiaal@redhat.com>Sami Wagiaalla5-0/+17
* buildsym.c (finish_block): Reset using_directives pointer after block initialization. 2010-03-12 Sami Wagiaalla <swagiaal@redhat.com> * gdb.cp/gdb2384-base.h: Created 'namespace B'. * gdb.cp/gdb2384-base.cc: Use 'namespace B'.
2010-03-12 gdb/testsuite/Pedro Alves2-2/+16
* lib/gdb.exp (gdb_test_multiple): Handle -timeout.
2010-03-12 gdb/testsuite/Pedro Alves15-30/+90
* lib/gdb.exp (skip_stl_tests): New. (gdb_compile): Symbian needs -ldl. (shlib_target_file): New. (shlib_symbol_file): New. (gdb_load_shlibs): Use shlib_target_file. * lib/mi-support.exp (mi_load_shlibs): Use shlib_target_file. * gdb.cp/exception.exp: Use skip_stl_tests. * gdb.cp/bs15503.exp: Use skip_stl_tests. Use untested. * gdb.cp/try_catch.exp: Use skip_stl_tests. * gdb.cp/mb-templates.exp: Ditto. * gdb.base/commands.exp: Relax regexes. * gdb.base/watchpoint-solib.exp: Don't skip on symbian. Use shlib_target_file and shlib_symbol_file. * gdb.base/maint.exp: Allow lowercase t. Allow .rodata in sections. * gdb.base/ending-run.exp: Accept E32Main for symbian. * gdb.base/solib-disc.exp: Use shlib_target_file and shlib_symbol_file. * gdb.base/unload.exp: Don't skip on symbian. Use shlib_target_file and shlib_symbol_file. * gdb.base/list.exp: Check use_gdb_stub instead of is_remote.
2010-03-122010-03-12 Stan Shebs <stan@codesourcery.com>Stan Shebs2-4/+78
Nathan Sidwell <nathan@codesourcery.com> * gdb.texinfo (Tracepoint Actions): Clarify that while-stepping is doing instruction stepping. (Tracepoint Restrictions): New node.
2010-03-12Restore sp for x86.H.J. Lu3-2/+7
2010-03-12 H.J. Lu <hongjiu.lu@intel.com> * amd64-tdep.c (amd64_word_names): Replace "sp" with "". * i386-tdep.c (i386_word_names): Likewise.
2010-03-12 * gdb.trace/backtrace.exp: Adjust for x86 and x86_64.Pedro Alves5-11/+58
* gdb.trace/report.exp: Adjust for x86 and x86_64. Issue a tfind end before looking for a tracepoint frame. * gdb.trace/tfind.exp: Adjust tstatus output. Adjust disassembly output. * gdb.trace/while-dyn.exp: Adjust for x86 and x86_64.
2010-03-12 * target.c (memory_xfer_partial): Don't use the stack cache ifPedro Alves3-0/+13
inspecting trace frames. * tracepoint.c (finish_tfind_command): Invalidate the target dcache.
2010-03-12*** empty log message ***gdbadmin1-1/+1
2010-03-11daily updateAlan Modra1-1/+1
2010-03-11gdb/Jan Kratochvil5-41/+221
* solib-svr4.c (LM_ADDR_CHECK) <info_verbose>: Use printf_unfiltered for the PIC displacement, print also the displacement value. (svr4_exec_displacement): Print DISPLACEMENT if INFO_VERBOSE. gdb/testsuite/ * gdb.base/break-interp.exp: Create new displacement parameter value for the test_ld calls. (reach): New parameter displacement, verify its content. New push of pf_prefix "reach-$func:". Import global expect_out. (test_core): New parameter displacement, verify its content. New push of pf_prefix "core:". New command "set verbose on". Import global expect_out. (test_attach): New parameter displacement, verify its content. New push of pf_prefix "attach:". New command "set verbose on". Import global expect_out. (test_ld): New parameter displacement, pass it to the reach, test_core and test_attach calls and verify its content in the "ld.so exit" test. * gdb.base/prelink.exp: Remove gdb_exit and final return. (prelink): Update expected text, use gdb_test.
2010-03-11 * remote-mips.c (close_ports, mips_initialize_cleanups)Kevin Buettner2-0/+131
(mips_exit_cleanups, mips_send_command, mips_open, pmon_open) (ddb_open, lsi_open, mips_remove_breakpoint, mips_remove_watchpoint) (mips_stopped_by_watchpoint, send_srec, pmon_checkset) (pmon_make_fastrec, pmon_check_ack, mips_expect_download) (pmon_check_entry_address, pmon_check_total, pmon_end_download) (pmon_download, pmon_load_fast, _initialize_remote_mips): Add comments describing each of these functions. (mips_enter_debug, mips_exit_debug, common_open) (mips_signal_from_protocol, pmon_makeb64, pmon_zeroset): Add blank line after the comment describing the function.
2010-03-11Adjust last patch--same ChangeLog entry, same e-mail.Ian Lance Taylor2-5/+3
2010-03-11 * reloc.cc (Sized_relobj::split_stack_adjust_reltype): Call theIan Lance Taylor5-7/+62
target to ask whether a reference to a symbol requires a stack split. * target.h (Target::is_call_to_non_split): New function. (Target::do_is_call_to_non_split): Declare virtual function. * target.cc: Include "symtab.h". (Target::do_is_call_to_non_split): New function. * i386.cc (Target_i386::do_is_call_to_non_split): New function.
2010-03-11 * gdb.base/checkpoint.exp: Fix comment.Doug Evans2-2/+16
Lengthen timeout while doing >600 checkpoints test. Rename duplicate "kill all one" test to keep test names unique.
2010-03-11*** empty log message ***gdbadmin1-1/+1
2010-03-10daily updateAlan Modra1-1/+1
2010-03-10 PR ld/11367Alan Modra2-5/+10
* ldcref.c (handle_asneeded_cref): Correct copying of refs.
2010-03-10gdb/Jan Kratochvil2-8/+34
* solib-svr4.c (svr4_exec_displacement): Return now success, new parameter displacementp. Update comment. (svr4_relocate_main_executable): Return if non-zero SECTION_OFFSETS element exists. Return if svr4_exec_displacement was not successful. Update comment.
2010-03-10gdb/Jan Kratochvil2-53/+119
* solib-svr4.c (read_program_header): Support type == -1 to read all program headers. (read_program_headers_from_bfd): New function. (svr4_static_exec_displacement): Remove and move the comment ... (svr4_exec_displacement): ... here. Remove variable found. New variable displacement. Check also DYNAMIC. Verify DISPLACEMENT alignment for ELF targets. Compare target vs. exec_bfd PHDRs for ELF targets using read_program_headers_from_bfd. Remove the call of svr4_static_exec_displacement.
2010-03-10 * dwarf2read.c (struct pubnames_header): Remove.Tom Tromey2-100/+15
(_PUBNAMES_HEADER): Remove. (_ACTUAL_PUBNAMES_HEADER_SIZE): Remove. (struct aranges_header): Remove. (_ARANGES_HEADER, _ACTUAL_ARANGES_HEADER_SIZE): Remove. (struct dwarf2_per_objfile) <pubnames, aranges>: Remove. (PUBNAMES_SECTION): Remove. (ARANGES_SECTION): Remove. (dwarf2_locate_sections): Don't handle pubnames or aranges. (dwarf2_build_psymtabs): Remove dead code. (dwarf2_build_psymtabs_easy): Remove.
2010-03-10 * elfread.c (elf_symfile_read): Don't callTom Tromey7-41/+119
dwarf2_build_frame_info. * dwarf2read.c (struct dwarf2_section_info) <readin>: New field. (struct dwarf2_per_objfile) <objfile>: New field. (dwarf2_has_info): Now idempotent. Set objfile field. (dwarf2_read_section): Check and set readin field. Call posix_madvise. (dwarf2_build_psymtabs): Don't read all sections. (read_type_comp_unit_head): Read types section. (create_debug_types_hash_table): Likewise. (init_cu_die_reader): Add asserts. (process_type_comp_unit): Add assert. (dwarf2_build_psymtabs_hard): Read info section. (load_partial_comp_unit): Add assert. (create_all_comp_units): Read info section. (load_full_comp_unit): Likewise. (dwarf2_ranges_read): Read ranges section. (dwarf2_record_block_ranges): Add assert. (dwarf2_read_abbrevs): Read abbrev section. (read_indirect_string): Read str section. (dwarf_decode_line_header): Read line section. (read_signatured_type_at_offset): Read types section. (dwarf_decode_macros): Read macinfo section. (dwarf2_symbol_mark_computed): Read loc section. * dwarf2-frame.c (dwarf2_frame_find_fde): Call dwarf2_build_frame_info. (dwarf2_build_frame_info): Unconditionally set dwarf2_frame_objfile_data on the objfile. * configure.ac: Check for posix_madvise. * config.in, configure: Rebuild.
2010-03-10 * xcoffread.c (xcoff_start_psymtab): Update.Tom Tromey7-31/+29
(xcoff_end_psymtab): Update. * psymtab.c (allocate_psymtab): Remove dead code. * psympriv.h (struct partial_symtab) <read_symtab_private>: Now void*. * mdebugread.c (parse_partial_symbols): Update. (new_psymtab): Likewise. * dwarf2read.c (process_psymtab_comp_unit): Update. (psymtab_to_symtab_1): Update. * dbxread.c (start_psymtab): Update. (end_psymtab): Likewise.
2010-03-10gdbTom Tromey32-2065/+2774
* xcoffread.c: Include psymtab.h. (xcoff_sym_fns): Update. * symtab.h (struct partial_symbol): Remove. (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove. (struct partial_symtab): Remove. (PSYMTAB_TO_SYMTAB): Remove. (lookup_partial_symbol, lookup_partial_symtab, find_pc_psymtab) (find_pc_sect_psymtab): Remove. (find_pc_sect_symtab_via_partial): Declare. (find_pc_psymtab, find_pc_sect_psymbol, psymtab_to_symtab) (find_main_psymtab): Remove. (find_main_filename): Declare. (fixup_psymbol_section): Remove. (fixup_section): Declare. * symtab.c: Include psymtab.h. (lookup_symtab): Use lookup_symtab method. (lookup_partial_symtab): Remove. (find_pc_sect_psymtab_closer): Remove. (find_pc_sect_psymtab): Remove. (find_pc_sect_symtab_via_partial): New function. (find_pc_psymtab, find_pc_sect_psymbol, find_pc_psymbol): Remove. (fixup_section): No longer static. (fixup_psymbol_section): Remove. (lookup_symbol_aux): Use lookup_symbol_aux_quick. (lookup_global_symbol_from_objfile): Likewise. (lookup_symbol_aux_psymtabs): Remove. (lookup_symbol_aux_quick): New function. (lookup_symbol_global): Use lookup_symbol_aux_quick. (lookup_partial_symbol): Remove. (basic_lookup_transparent_type_quick): New function. (basic_lookup_transparent_type): Use it. (find_main_psymtab): Remove. (find_main_filename): New function. (find_pc_sect_symtab): Use find_pc_sect_symtab method. (find_line_symtab): Use expand_symtabs_with_filename method. (output_partial_symbol_filename): New function. (sources_info): Use map_partial_symbol_filenames. (struct search_symbols_data): New type. (search_symbols_file_matches): New function. (search_symbols_name_matches): Likewise. (search_symbols): Use expand_symtabs_matching method. (struct add_name_data): Rename from add_macro_name_data. (add_macro_name): Update. (add_partial_symbol_name): New function. (default_make_symbol_completion_list): Use map_partial_symbol_names. (struct add_partial_symbol_name): New type. (maybe_add_partial_symtab_filename): New function. (make_source_files_completion_list): Use map_partial_symbol_filenames. (expand_line_sal): Use expand_symtabs_with_filename method. * symmisc.c: Include psymtab.h. (print_objfile_statistics): Use print_stats method. (dump_objfile): Use dump method. (dump_psymtab, maintenance_print_psymbols) (maintenance_info_psymtabs, maintenance_check_symtabs) (extend_psymbol_list): Remove. * symfile.h (struct quick_symbol_functions): New struct. (struct sym_fns) <qf>: New field. (sort_pst_symbols): Remove. (increment_reading_symtab): Declare. * symfile.c: Include psymtab.h. (compare_psymbols, sort_pst_symbols): Remove. (psymtab_to_symtab): Remove. (increment_reading_symtab): New function. (symbol_file_add_with_addrs_or_offsets): Use expand_all_symtabs method. (set_initial_language): Use find_main_filename. (allocate_psymtab, discard_psymtab, cashier_psymtab): Remove. (free_named_symtabs): Remove unused code. (start_psymtab_common, add_psymbol_to_bcache) (append_psymbol_to_list, add_psymbol_to_list, init_psymbol_list): Remove. * stack.c: Include psymtab.h, symfile.h. (backtrace_command_1): Use find_pc_sect_symtab_via_partial. * source.h (psymtab_to_fullname): Don't declare. * source.c: Include psymtab.h. (select_source_symtab): Use find_last_source_symtab method. (forget_cached_source_info): Use forget_cached_source_info method. (find_and_open_source): No longer static. (psymtab_to_fullname): Remove. * somread.c: Include psymtab.h. (som_sym_fns): Update. * psympriv.h: New file. * psymtab.h: New file. * psymtab.c: New file. * objfiles.h: (ALL_OBJFILE_PSYMTABS): Remove. (ALL_PSYMTABS, ALL_PSPACE_PSYMTABS): Likewise. * objfiles.c: Include psymtab.h. (objfile_relocate1): Use relocate method. (objfile_has_partial_symbols): Use has_symbols method. * mipsread.c: Include psymtab.h. (ecoff_sym_fns): Update. * mi/mi-cmd-file.c: Include psymtab.h. (print_partial_file_name): New function. (mi_cmd_file_list_exec_source_files): Use map_partial_symbol_filenames. * mdebugread.c: Include psympriv.h. * machoread.c: Include psympriv.h. (macho_sym_fns): Update. * m2-exp.y (yylex): Use lookup_symtab. * elfread.c: Include psympriv.h. (elf_sym_fns): Update. * dwarf2read.c: Include psympriv.h. * dbxread.c: Include psympriv.h. (aout_sym_fns): Update. * cp-support.c: Include psymtab.h. (read_in_psymtabs): Remove. (make_symbol_overload_list_qualified): Use expand_symtabs_for_function method. * coffread.c: Include psympriv.h. (coff_sym_fns): Update. * blockframe.c: Include psymtab.h. (find_pc_partial_function): Use find_pc_sect_symtab method. * ada-lang.h (ada_update_initial_language): Update. * ada-lang.c: Include psymtab.h. (ada_update_initial_language): Remove 'main_pst' argument. (ada_lookup_partial_symbol): Remove. (struct ada_psym_data): New type. (ada_add_psyms): New function. (ada_add_non_local_symbols): Use map_ada_symtabs method. (struct add_partial_datum): New type. (ada_add_partial_symbol_completions): New function. (ada_make_symbol_completion_list): Use map_partial_symbol_names. (ada_exception_support_info_sniffer): Update. * Makefile.in (SFILES): Add psymtab.c. (COMMON_OBS): Add psymtab.o. (HFILES_NO_SRCDIR): Add psymtab.h, psympriv.h. gdb/doc * gdbint.texinfo (Symbol Handling): Update.
2010-03-10 * fileread.cc (File_read::~File_read): Don't delete whole_file_view_.Cary Coutant6-35/+77
(File_read::open[1]): Remove initial mapping of whole_file_view_. (File_read::open[2]): Add whole_file_view_ to list of views. (File_read::make_view): Remove test of whole_file_view_. (File_read::find_or_make_view): Create whole_file_view_ if necessary. (File_read::clear_views): Replace bool parameter with enum; adjust all callers. Don't delete views with permanent data; do delete cached views and views from archives if --no-keep-files-mapped is set. Set whole_file_view_ to NULL if clearing the corresponding view. * fileread.h (File_read::Clear_views_mode): New enum. (File_read::View::is_permanent_view): New method. (File_read::clear_views): Replace bool parameter with enum; adjust all callers. * options.h (General_options): Change keep_files_mapped option; add map_whole_files. * readsyms.cc (Add_symbols::run): Delete sd_ object before releasing the file. * reloc.cc (Scan_relocs::run): Delete rd_ object before releasing the file.
2010-03-10 * sparc.cc (Target_sparc::Scan::local): Accept R_SPARC_WPLT30.David S. Miller2-0/+5
2010-03-102010-03-10 Pierre Muller <muller@ics.u-strasbg.fr>Pierre Muller2-0/+13
* remote-fileio.c (cygwin_conv_path): Define macro for old cygwin API.
2010-03-10 2010-03-09 Sami Wagiaalla <swagiaal@redhat.com>Sami Wagiaalla4-47/+45
PR C++/11236: * cp-namespace.c (cp_add_using): Deleted. (cp_add_using_directive): Use obstack allocations. Merged the function cp_add_using into this one. Added 'struct obstack *' argument. (cp_scan_for_anonymous_namespaces): Updated. * cp-support.h: Updated. * dwarf2read.c (read_import_statement): Updated. (read_namespace): Updated.
2010-03-10* windows-nat.c (cygwin_conv_path): Remove old macro.Christopher Faylor2-1/+4
2010-03-10strip trailing whitespace in Blackfin filesMike Frysinger6-124/+129
2010-03-10 gdb/Pedro Alves6-58/+297
* breakpoint.c (condition_command): Handle watchpoint conditions. (is_hardware_watchpoint): Add comment. (is_watchpoint): New. (update_watchpoint): Don't reparse the watchpoint's condition unless necessary. (WP_IGNORE): New. (watchpoint_check): Use it. (bpstat_check_watchpoint): Handle it. (bpstat_check_breakpoint_conditions): Evaluate watchpoint local conditions in a frame where it makes sense. (watch_command_1): Store the innermost block of the condition expression. (delete_breakpoint): Delete the watchpoint condition expression. * breakpoint.h (struct bp_location) <cond>: Update comment. (struct breakpoint): New fields `cond_exp' and `cond_exp_valid_block'. gdb/testsuite/ * gdb.base/watch-cond.c, gdb.base/watch-cond.exp: New.
2010-03-10add support for Blackfin bf504/bf506Mike Frysinger3-0/+15
2010-03-10Adjust handling of Ada DIEs after dwarf2_physname patch.Joel Brobecker2-2/+23
* dwarf2read.c (dwarf2_compute_name): Add handling of Ada DIEs.
2010-03-10 * doc/as.texinfo: Add Blackfin options.Jie Zhang4-2/+46
* doc/c-bfin.texi: Document -mfdpic, -mno-fdpic and -mnopic. * config/tc-bfin.c (md_show_usage): Show usage for all Blackfin specific options.
2010-03-102010-03-09 Sriraman Tallam <tmsriram@google.com>Sriraman Tallam2-0/+6
* icf.cc (get_section_contents): Add '@' marker after processing the merge reloc.
2010-03-10*** empty log message ***gdbadmin1-1/+1
2010-03-09daily updateAlan Modra1-1/+1
2010-03-092010-03-09 Rafael Espindola <espindola@google.com>Rafael Ávila de Espíndola1-51/+80
* archive.cc (should_include_member): New. (Archive::add_symbols): Use should_include_member.
2010-03-09* windows-nat.c (cygwin_conv_path): Redefine to properly convert from/toChristopher Faylor2-1/+19
posix/win32. (windows_make_so): Use non-Cygwin 1.7 specific function. (windows_create_inferior): Make sure that cygallargs points to original args in non Cygwin 1.7. case.
2010-03-092010-03-09 Michael Snyder <msnyder@vmware.com>Michael Snyder2-59/+60
* i386-tdep.c (i386_record_lea_modrm_addr): Use extract_signed_int after target_read_memory to get host byte order. (i386_process_record): Ditto.
2010-03-09dwarf2_physname patchset:Keith Seitz27-487/+639
Based on work from Daniel Jacobowitz <dan@codesourcery.com> * c-typeprint.c (cp_type_print_method_args): For non-static methods, print out const or volatile qualifiers, too. (c_type_print_args): Add parameters show_artificial and language. Skip artificial parameters when requested. Use the appropriate language printer. (c_type_print_varspec): Tell c_type_print_args to skip artificial parameters and pass language_c. * dwarf2read.c (die_list): New file global. (struct partial_die_info): Update comments for name field. (pdi_needs_namespace): Renamed to ... (die_needs_namespace): ... this. Rewrite. (dwarf2_linkage_name): Remove. (add_partial_symbol): Do not predicate the call to partial_die_full_name based on pdi_needs_namespace. Remove call to cp_check_possible_namespace_symbols and associated outdated comments. (guess_structure_name): Do not inspect child subprogram DIEs. (dwarf2_fullname): Update comments. Use die_needs_namespace to assist in computing the name. (read_func_scope): Use dwarf2_name to get the DIE's name. Use dwarf2_physname to get the "linkage name" of the DIE. (dwarf2_add_member_field): Use dwarf2_physname instead of dwarf2_linkage_name. (read_structure_type): For structs and classes, set TYPE_NAME, too. (determine_class): Remove. (read_partial_die): Ignore DW_AT_MIPS_linkage_name for all languages except Ada. (new_symbol): Unconditionally call dwarf2_name. Compute the "linkage name" using dwarf2_physname. Use dwarf2_name instead of dwarf2_full_name for enumerator DIEs. When determining to scan for anonymous C++ namespaces, ignore the linkage name. (dwarf2_physname): New function. (dwarf2_full_name): Move content to new function and call that. (dwarf2_compute_name): "New" function. (_initialize_dwarf2_read): Initialize die_list. * gnu-v3-eabi.c (gnu_v3_find_method_in): Remove unused variable physname. (gnu_v3_print_method_ptr): Use the physname for virtual methods without a demangled name. Print out type information for non-virtual methods. * linespec.c (decode_line_1): Force ANY string using "::" (or "." for java) to use decode_compound, and clean up any stray quoting. If we found a file symtab, re-evaluate whether the remainder is_quoted. (decode_compound): Stop consuming at an open parenthesis. Keep template parameters. Keep any overload information. Keep keywords like "const". Remove paren_pointer. Move is_quoted check from set_flags to here. Remove #if 0 code from 2000. Ten years is long enough. (find_method): Before comparing symbol names, canonicalize the string from the user. If a specific overload is requested, find it. Otherwise throw an error. (find_method_overload_end): New function. (set_flags): Remove. (decode_compound): Assume that parentheses are matched. It's a lot easier. * symtab.c (symbol_find_demangled_name): Add DMGL_VERBOSE flag to cplus_demangle. * linespec.c (decode_line_1): Keep important keywords like "const" and "volatile". * symtab.h (SYMBOL_CPLUS_DEMANGLED_NAME): Remove. * typeprint.h (c_type_print_args): Add declaration. * ui-file.c (do_ui_file_obsavestring): New function. (ui_file_obsavestring): New function. * ui-file.h (ui_file_obsavestring): Add declaration. * valops.c (find_overload_match): Resolve the object to a non-pointer type. If the object is a data member, search the object for the member and return with staticp set. Use SYMBOL_NATURAL_NAME instead of SYMBOL_CPLUS_DEMANGLED_NAME. Do not attempt to extract a function name from non-function types. If the extracted function name and the original name are the same, we don't have a C++ method. From Jan Kratochvil <jan.kratochvil@redhat.com>: * dwarf2read.c (new_symbol <DW_TAG_enumerator>): Call dwarf2_full_name. * ada-lang.c (ada_lookup_symbol): Remove linkage_name parameters and arguments from symbol lookups. * ax-gdb.c (gen_expr): Likewise. * cp-namespace.c (cp_lookup_symbol_nonlocal, lookup_namespace_scope, cp_lookup_symbol_namespace, lookup_symbol_file, lookup_nested_type, lookup_possible_namespace_symbol): Likewise. * cp-support.c (read_in_psymtabs): Likewise. * cp-support.h (cp_lookup_symbol_nonlocal): Likewise. * language.h (la_lookup_symbol_nonlocal): Likewise. * scm-valprint.c (scm_inferior_print): Likewise. * solib-darwin.c (darwin_relocate_section_addresses): Likewise. * solib-svr.c (elf_lookup_lib): Likewise. * solib.c (show_auto_solib_add): Likewise. * solist.h (lookup_lib_global, solib_global_lookup): Likewise. * symmisc.c (maintenance_check_symtabs): Likewise. * symtab.c (lookup_symbol_in_language, lookup_symbol_aux, lookup_symbol_aux_local, lookup_symbol_aux_block, lookup_symbol_from_objfile, lookup_symbol_aux_symtabs, lookup_symbol_aux_psymtabs,basic_lookup_symbol_nonlocal, lookup_symbol_static, lookup_symbol_global, symbol_matches_domain, basic_lookup_transparent_type, find_main_psymtab, lookup_block_symbol): Likewise. * symtab.h (basic_lookp_symbol_nonlocal, lookup_symbol_static, lookup_symbol_global, lookup_symbol_aux_block, lookup_symbol_partial_symbol, lookup_block_symbol, lookup_global_symbol, value_maybe_namespace_elt): Likewise.
2010-03-09 * gdb.cp/cp-relocate.exp: Remove single-quoting of C++ methods.Keith Seitz15-55/+1447
* gdb.cp/cplusfuncs.cc (dm_type_short): New function. (dm_type_long): New function. (dm_type_unsigned_short): New function. (dm_type_unsigned_long): New function. (myint): New typedef. * gdb.cp/cplusfuncs.exp (probe_demangler): Add tests for short, long, unsigned shor and long, operator char*, and typedef. (test_lookup_operator_functions): Add operator char* test. (test_paddr_operator_functions): Likewise. (test_paddr_overloaded_functions): Use probe values for short, long, and unsigned short and long. (test_paddr_hairy_functions): If the demangler probe detected gdb type printers, "expect" them. Otherwise "expect" the v2 or v3 demangler. * gdb.cp/expand-sals.exp: Backtrace may contain class names. * gdb.cp/member-ptr.exp: Refine expected result for "print pmf" and "print null_pmf". Add test "ptype a.*pmf". * gdb.cp/overload.exp: Allow optional "int" to appear with "short" and "long". * gdb.cp/ovldbreak.exp: Use append to construct super-duper long expect value for men_overload1arg. Allow "int" to appear with "short" and "long". When testing "info break", add argument for main (void). Also allow "int" to appear with "short" and "long". Ditto with "unsigned" and "long long". * gdb.java/jmain.exp: Do not enclose methods names in single quotes. * gdb.java/jmisc.exp: Likewise. * gdb.java/jprint.exp: Likewise. * gdb.python/py-symbol.exp: Update expected "linkage_name" value. From Jan Kratochvil <jan.kratochvil@redhat.com>: * gdb.cp/exception.exp (backtrace after first throw) (backtrace after second throw): Allow a namespace before __cxa_throw. (backtrace after first catch, backtrace after second catch): Allow a namespace before __cxa_begin_catch. * gdb.cp/cpexprs.exp: New file. * gdb.cp/cpexprs.cc: New file. From Daniel Jacobowitz <dan@codesourcery.com> * gdb.cp/cpexprs.exp (escape): Delete. Change all callers to use string_to_regexp. (ctor, dtor): New functions. Use them to match constructor and destructor function types. (Top level): Use runto_main.