* nlm/gdbserve.c (putDebugChar): Install bug fix from i386-nlmstub.
* (hex2mem): Init ptr.
* General cleanups to use ConsolePrintf, standard prologues, etc...
* mpw-make.in (MacGDB): New target, standalone Mac-hosted gdb.
(XDEPFILES): Define.
(main.c.o): Compile with gC instead of C.
* mac-defs.h: New file, menu etc definitions shared between
C and Rez files.
* macgdb.r: New file, Rez (resource compiler) resource
definitions.
* mac-xdep.c: New file, Mac host interface code.
* config/m68k/xm-mpw.h (PATHNAME_SEPARATOR): Rename to
DIRNAME_SEPARATOR.
(PATHNAME_SEPARATOR_STRING): Remove.
(SIGQUIT, SIGHUP): Define.
(fileno, R_OK): Define.
associated with the symbol to make dynmaic relocation work.
* (dbx_symfile_read, process_one_symbol): Fixes to work around
Solaris brain-damage which don't apply to relocatable object
files.
* (stabsect_build_psymtabs): New routine to read stabs out of an
arbitrarily named section.
* nlmread.c (nlm_symtab_read): Read ALL syms from the NLM, not just
globals.
* (nlm_symfile_read): Call stabsect_build_psymtabs to read the
stabs out of the nlm.
* partial-stabs.h (cases 'f' & 'F'): Fixes to work around Solaris
brain-damage which don't apply to relocatable object files.
* remote.c (putpkt): Improve error reporting and error handling.
* stabsread.c (define_symbol, scan_file_globals): Record section
info in sym.
to after call to target_wait. This means that flush_cached_frames
can call target_terminal_ours if it wants to.
* infrun.c (wait_for_inferior) [HAVE_NONSTEPPABLE_WATCHPOINT]: Add
comment about why the code is dubious.
ChangeLog remote-os9k.c os9kread.c stabsread.c
* remote-os9k.c (rombug_fetch_registers): set trace mode
correctly.
* remote-os9k.c (rombug_read_inferior_memory): cache data in
buffer.
* os9kread,c (read_os9k_psymtab): process file symbol to truncate
extra info.
* os9kread.c (os9k_read_ofile_symtab): proper casting of args
passed to process_one_symbol.
* stabsread.c (read_type): process os9k functio prototype.
(query): Annotate query.
* printcmd.c (print_frame_args): Change syntax of argument
annotation to make name and value part of a single group of
annotations, not two separate groups.
* cp-valprint.c (cp_print_value_fields): Likewise for fields.
* valprint.c (val_print_array_elements): Change syntax of
annotation to be more concise.
* main.c, defs.h (command_line_input): New argument tells what
string to include in the annotations.
* symtab.c (decode_line_2), main.c (read_command_lines,
command_loop): Change callers.
target null pointer.
* blockframe.c (find_frame_addr_in_frame_chain): Likewise.
* printcmd.c (output_command): Annotate things we print here too.
* Move declaration of print_value_flags from defs.h to value.h.
* main.c (command_line_input): Call wrap_here as well as gdb_flush.
that we print.
(print_frame_args): Annotate each argument.
* printcmd.c, defs.h (print_value_flags): New function.
* cp-valprint.c (cp_print_value_fields): Annotate each field.
* valprint.c (val_print_array_elements): Annotate each array element.
the same as --annotate=1.
(command_line_input): Print annotatation before and after prompt.
* blockframe.c (flush_cached_frames): Print annotation.
* Rename frame_file_full_name to annotation_level and move it from
symtab.h to defs.h.
* source.c (identify_source_line): If annotation_level > 1,
change output format.
* breakpoint.c: Print annotation whenever a breakpoint changes.
* main.c: New variable server_command.
(command_line_input): Parse "server " and set server_command.
(dont_repeat): Check server_command.
moved into hppa-tdep.c.
(read_unwind_info): Likewise.
(pa_symfile_read): No longer call read_unwind_info. The unwind
tables will be read in as they are needed.
* hppa-tdep.c (compare_unwind_entries): New function.
(read_unwind_info, internalize_unwinds): Likewise.
(find_unwind_entry): Read in unwind information on demand.
All references to value changed to value_ptrlage_command is now
called big_command.
All references to value changed to value_ptr.
* remote-z8k.c (e7000_wait): Use target_waitstatus and SETSTOP
* remote-hms.c (hms_wait): Timeout after five seconds.
* ser-go32.c (dosasync_read): Poll if timeout < 0.
* config/tm/tm-h8500.h (BEFORE_MAIN_LOOP_HOOK): Deleted.
* config/sh/tm-sh.h (BREAKPOINT): Is now sleep opcode.
bp_watchpoint_scope breakpoints.
(struct breakpoint): Add val_chain and related_breakpoint fields
for use by watchpoints.
* breakpoint.c (within_scope): Delete. No longer used.
(TARGET_CAN_USE_HARDWARE_WATCHPOINT): Provide default definition.
(target_{remove,insert}_watchpoint): Likewise.
(can_use_hardware_watchpoint): New function.
(remove_breakpoint): New function to remove a single breakpoint
or hardware watchpoint.
(insert_breakpoints): Handle insertion of hardware watchpoints.
Store a copy of the value chain derived from the watchpoint
expression.
(remove_breakpoints): Simplify by using remove_breakpoint.
(delete_breakpoint): Likewise.
(watchpoint_check): Delete the watchpoint and watchpoint scope
breakpoints when the watchpoint goes out of scope. Save & restore
the current frame after checking watchpoints.
(breakpoint_init_inferior): Likewise (restarting the program
makes all local watchpoints go out of scope).
(bpstat_stop_status): Handle hardware watchpoints much like normal
watchpoints. Delete the watchpoint and watchpoint scope breakpoint
when the watchpoint goes out of scope. Remove and reinsert all
breakpoints before returning if we stopped when a hardware watchpoint
fired.
(watch_command): Use a hardware watchpoint when possible. If
watching a local expression, build a scope breakpoint too.
(map_breakpoint_numbers): Also call given function for any
related breakpoints.
(disable_breakpoint): Never disable a scope breakpoint.
(enable_breakpoint): Handle hardware breakpoints much like normal
breakpoints, but recompute the watchpoint_scope breakpoint's
frame and address (if we have an associated scope breakpoint).
(read_memory_nobpt): Handle hardware watchpoints like normal
watchpoints. When necessary handle watchpoint_scope breakpoints.
(print_it_normal, bpstat_what, breakpoint_1, mention): Likewise.
(clear_command, breakpoint_re_set_one, enable_command): Likewise.
(disable_command): Likewise.
* blockframe.c (find_frame_addr_in_frame_chain): New function.
Extern prototype added to frame.h
* infrun.c (wait_for_inferior): Set current_frame and select
a frame before checking if we stopped due to a hardare watchpoint
firing. Handle stepping over hardware watchpoints.
(normal_stop): Remove unnecessary call to select_frame.
* value.h (value_release_to_mark): Declare.
* values.c (value_release_to_mark): New function.
* procfs.c (procfs_wait): Add cases for hardware watchpoints.
(procfs_set_watchpoint, procfs_stopped_by_watchpoint): New functions.
* hppab-nat.c (hppa_set_watchpoint): New function.
* config/pa/nm-hppab.h (STOPPED_BY_WATCHPOINT): Define.
(HAVE_STEPPABLE_WATCHPOINT): Define.
(TARGET_CAN_USE_HARDWARE_WATCHPOINT): Define.
(target_{insert,delete}_watchpoint): Define.
* xcoffread.c (read_xcoff_symtab): Ignore symbols of class C_EXT,
smtyp XTY_LD, sclass XMC_DS (external data segment label). They
often have the same names as debug symbols for functions, and
confuse lookup_symbol().