* infcall.c (value_arg_coerce): Use value_cast_pointers for
references. Avoid value_cast to a reference type. Don't silently
convert pointers to references.
* valops.c (value_cast_pointers): New, based on value_cast.
(value_cast): Use it. Reject reference types.
(value_ref): New.
(typecmp): Use it.
* value.h (value_cast_pointers, value_ref): New prototypes.
gdb/testsuite/
* gdb.cp/ref-params.exp: New test.
* gdb.cp/ref-params.cc: New source file.
* gdb.cp/Makefile.in (EXECUTABLES): Add ref-params.
* remote.c (PACKET_qXfer_auxv): New, renamed from PACKET_qPart_auxv.
(remote_supported_packet): Remove #if 0.
(remote_protocol_features): Add qPart:auxv:read.
(remote_unescape_input): New function.
(readchar): Don't mask off the high bit.
(read_frame): Use fputstrn_filtered for packet data.
(getpkt_sane): Return the number of bytes read or -1. Use
fputstrn_unfiltered.
(remote_read_qxfer): New.
(remote_xfer_partial): Use it for TARGET_OBJECT_AUXV.
(_initialize_remote): Update packet registration.
* defs.h (fputstrn_filtered): New prototype.
* utils.c (fputstrn_filtered): New.
* NEWS: Mention qXfer.
gdb/doc/
* gdb.texinfo (OS Information): Update qPart reference to
qXfer.
(Remote configuration): Likewise.
(Overview): Move @cindex to the start of a paragraph. Talk
about binary data encoding.
(Packets): Refer to the overview for the details of the X
packet encoding.
(General Query Packets): Remove qPart description. Add qXfer
description. Add an anchor to qSupported. Correct feature
table title. Add a new feature for qXfer:auxv:read.
(Interrupts): Add a missing parenthesis.
gdb/gdbserver/
* server.c (decode_xfer_read, write_qxfer_response): New.
(handle_query): Take a packet length argument. Handle
qXfer:auxv:read instead of qPart:auxv:read. Mention it in
the qSupported response.
(main): Update call to handle_query.
(ARM_SIGCONTEXT_R0, ARM_UCONTEXT_SIGCONTEXT)
(ARM_OLD_RT_SIGFRAME_SIGINFO, ARM_OLD_RT_SIGFRAME_UCONTEXT)
(ARM_NEW_RT_SIGFRAME_UCONTEXT, ARM_NEW_SIGFRAME_MAGIC): New
constants.
(arm_linux_sigreturn_init, arm_linux_rt_sigreturn_init): Support
the new signal frame layouts.
* alphanbsd-tdep.c (_initialize_alphanbsd_tdep): Do not register a
handler for GDB_OSABI_OPENBSD_ELF.
* Makefile.in (ALLDEPFILES): Add alphaobsd-tdep.c.
(alphaobsd-tdep.o): New target.
* config/alpha/obsd.mt: New file.
* configure.tgt (alpha*-*-openbsd*): Set gdb_target to obsd.
prototype.
* alphanbsd-tdep.c (alphanbsd_regset_from_core_section): Handle
a.out-style core file format here. Make global.
(alphanbsd_regset_from_core_section): Remove.
(alphanbsd_sigtramp_offset): Make static.
(alphanbsd_aout_init_abi): Remove.
(alphanbsd_core_osabi_sniffer): Return GDB_OSABI_NETBSD_ELF for
a.out style core files.
(_initialize_alphanbsd_tdep): Do not register a handler for
GDB_OSABI_NETBSD_AOUT.
* mips-tdep.c (mips_eabi_push_dummy_call): For 32 bit ABI, to
decide how many registers it takes to pass a floating point
argument, what matters is the size of a floating point register
(not the size of a general purpose register).
(mips_o32_push_dummy_call): Ditto.
based on insert_step_resume_breakpoint_at_frame.
(handle_inferior_event): Update comments. Use
insert_step_resume_breakpoint_at_caller.
(insert_step_resume_breakpoint_at_frame): Revise comments.
2006-06-13 Fred Fish <fnf@specifix.com>
* mips-tdep.c (mips_find_long_section): New function.
(mips_gdbarch_init): Use it to set long and pointer sizes.
(show_remote_protocol_packet_cmd): New prototypes.
(remote_set_cmdlist, remote_show_cmdlist): Move higher.
(struct packet_config): Make name and title const.
(add_packet_config_cmd): Remove unnecessary arguments.
(_initialize_remote): Update calls.
buf and buf_size.
(remote_state): New variable.
(get_remote_state): New function.
(struct remote_arch_state): Renamed from struct remote_state.
Removed buf and buf_size.
(get_remote_arch_state): Renamed from get_remote_state. All
necessary callers updated to call this function.
(init_remote_state): Initialize the architecture-specific state.
Update the target-specific state if necessary.
(get_remote_packet_size): New function. All previous references
changed to use this accessor function.
(packet_reg_from_regnum, packet_reg_from_pnum): Take a
remote_arch_state instead of a remote_state. All callers changed.
(_initialize_remote): Initialize the packet buffer here.