* ada-lang.c (ada_type_match): Stop making TYPE_CODE_VOID
a wildcard matching any type. For types that we don't already
handle specifically, make sure that both types have the same code.
(find_old_style_renaming_symbol): Add handling for function suffixes
present in the name of various procedures.
Do not overwrite the function symbol's name.
2009-11-17 Vladimir Prus <vladimir@codesourcery.com>
* Makefile.in (reg-cf.o, reg-cf.c): New targets.
* configure.ac: Check for __mcoldfire__ and set
gdb_cv_m68k_is_coldfire.
* configure.srv: Use gdb_cv_m68k_is_coldfire to select between
reg-cf.o and reg-m68k.o.
* configure: Regenerated.
2009-11-17 Nathan Sidwell <nathan@codesourcery.com>
* regformats/reg-cf.dat: New file.
event, check if the bpstat causes a stop, instead of if it
explains the signal.
* breakpoint.c (bpstat_causes_stop): New.
* breakpoint.h (bpstat_causes_stop): Declare.
the pspace doesn't allow breakpoints.
(insert_breakpoint_locations): Remove waiting_for_vfork_done
special case. Expect watchpoints that shouldn't be inserted, to
not be inserted.
* progspace.h (struct program_space) <breakpoints_not_allowed>:
New field.
* infrun.c (handle_inferior_event): Clear it.
* linux-nat.c (linux_child_follow_fork): Set it.
Maxim Kuvyrkov <maxim@codesourcery.com>
* remote-fileio.c (remote_fileio_request): Send Ctrl-C if it is
pending.
* remote-fileio.h: Update the prototype for remote_fileio_request.
* remote.c (struct remote_state): Add ctrlc_pending_p.
(remote_open_1): Clear ctrlc_pending_p.
(remote_stop_as): Set ctrlc_pending_p to 1.
(remote_wait_as): Pass ctrlc_pending_p to remote_fileio_request.
(dcache_struct): Delete member newest.
(block_func): New typedef.
(append_block, remove_block, for_each_block): New functions.
(invalidate_block, free_block): New functions.
(dcache_invalidate): Update
(dcache_invalidate_line, dcache_alloc): Update to use new list
accessors.
(dcache_free): Ditto. Fix memory leak.
Paul Brook <paul@codesourcery.com>
* c-typeprint.c (c_type_print_base): Skip artificial fields.
Use get_vptr_fieldno to skip the vtable pointer.
* dwarf2read.c (dwarf2_add_field): Set FIELD_ARTIFICIAL on artificial
fields.
(dwarf2_add_member_fn): Complain about virtual member functions
without DW_AT_vtable_elem_location and force TYPE_CPLUS_DYNAMIC.
* gdbtypes.c (get_vptr_fieldno): Update comment.
* gdbtypes.h (struct cplus_struct_type): Add is_dynamic.
(TYPE_CPLUS_DYNAMIC): New macro.
* gnu-v3-abi.c (gnuv3_dynamic_class): New.
(gnuv3_get_vtable): Rewrite to use gnuv3_dynamic_class. Move higher.
(gnuv3_rtti_type, gnuv3_get_virtual_fn, gnuv3_baseclass_offset): Use
gnuv3_get_vtable.
* varobj.c (cplus_class_num_children, cplus_describe_child): Skip
artificial fields. Use get_vptr_fieldno to skip the vtable pointer.
Daniel Jacobowitz <dan@codesourcery.com>
* dwarf2read.c (dwarf2_add_member_fn): Calculate virtual function
offset for classes without DW_AT_containing_type.
Daniel Jacobowitz <dan@codesourcery.com>
* dwarf2read.c (struct field_info): Add baseclasses.
(dwarf2_add_field): Add base classes to a separate list.
(dwarf2_attach_fields_to_type): Merge base classes and fields.
(OPERATOR): New token.
(NEW): New token.
(DELETE): New token.
(operator): New rule.
(name): Add operator.
(ident_tokens): Add "new", "delete", and "operator".
* gdbtypes.c (rank_one_type): Don't complain about
void pointer conversion badness if both types are
void pointers.
* symfile.c (separate_debug_file_exists): Change parameter parent_name
to parent_objfile. New variables parent_stat and abfd_stat. Call
strcmp and then bfd_stat functions to verify if NAME matches.
(find_separate_debug_file): Update the passed parameter at caller.
* eval.c (make_params): New function.
(free_param_types): New function.
(evaluate_subexp_standard): Pass expect_type to value_aggregate_elt.
Handle case TYPE_INSTANCE.
(evaluate_subexp_for_address): Pass expect_type to value_aggregate_elt.
* expression.h (enum exp_opcode): Add TYPE_INSTANCE.
(compare_parameters): Add declaration.
* parse.c (operator_length_standard): Add TYPE_INSTANCE.
* valops.c (value_aggregate_elt): Add new expect_type parameter.
Pass expect_type to value_struct_elt_for_reference.
(value_struct_elt_for_reference): Add expect_type parameter and use
compare_parameters.
Check for overload matches with and without artificial parameters.
Skip artificial methods.
(compare_parameters): New function.
* value.h (value_aggregate_elt): Add new expect_type parameter.
* procfs.c (procfs_do_thread_registers): Added a call to fetch
register values before saving them in the core file
through the gcore command.
(procfs_corefile_thread_callback): Removed the backup of
inferior_ptid before calling procfs_do_thread_registers since
the function already saves and restores it before returning.