(gdb-var-create-handler): Handle value field in GDB output of
-var-create.
(gdb-max-frames): New variable.
(gdb-stack-buffer, gdb-frames-select): Use it.
(gdb-info-stack-custom): Help user customize gdb-max-frames,
if necessary.
(gdb-get-frame-number): Simplify.
(gdb-var-create-handler): Handle value field in GDB output of
-var-create.
(gdb-max-frames): New variable.
(gdb-stack-buffer, gdb-frames-select): Use it.
(gdb-info-stack-custom): Help user customize gdb-max-frames,
if necessary.
(gdb-get-frame-number): Simplify.
expressions.
(gdb-var-delete): Handle duplicate names. Print message for non
root expressions.
(gdb-partial-output-name): Start buffer name with a space.
(gdb-info-breakpoints-custom, gdb-reset): Handle space in above
buffer name.
Suggested by Simon Marshall <simon.marshall@misys.com>.
(gdb-stack-position): New variable.
(gdb-starting, gdb-exited): Reset gdb-stack-position to nil.
(gdb-frames-mode): Set gdb-stack-position to nil. Add to
overlay-arrow-variable-list
(gdb-reset): Delete gdb-stack-position from above list.
(gdb-use-separate-io-buffer, menu): Avoid using `inferior' in text.
(gdb-memory-mode, gdb-locals-watch-map): Don't quote lambda
expressions.
(gdb-info-breakpoints-custom): Use gdb-breakpoint-regexp.
Only search till end of line.
Add face to function names in case of no filename.
Add face to variable names of watchpoints.
(gdb-display-separate-io-buffer, gdb-append-to-inferior-io)
(gdb-display-breakpoints-buffer, gdb-display-stack-buffer)
(gdb-display-threads-buffer, gdb-display-memory-buffer)
(gdb-display-locals-buffer): Use it.
(gud-old-arrow, gdb-frame-begin, gdb-printing): New variables.
(gdb-init-1): Initialise them.
(gdb-starting): Reset gdb-printing
(gdb-starting): Save value of gud-overlay-arrow-position.
(gdb-frame-begin): Set gdb-frame-begin, gdb-printing.
(gdb-stopped): Don't look for source if calling procedure e.g "p a ()".
Use gdb-*-gdb-buffer conditionally on gdb-same-frame.
(gdb-frame-gdb-buffer): Keep menu bar, tool bar for GUD buffer.
(gdb-stopped, gdb-info-stack-custom): If there is no source info
look up the stack and pop up GUD buffer if necessary.
(gdb-frames-select): Remove redundant call to gud-display-frame.
(gdb-info-threads-custom): Keep point at start of buffer.
(gdb-find-file-hook): Make it work for pre-GDB 6.4.
(gdb-var-evaluate-expression-handler, gdb-var-update-handler):
Use a token for pending-triggers to ensure gdb-var-update
gets called once per user input again for pre-GDB 6.4.
(gdb-var-delete): Match on more complex expressions.
(gdb-var-list-children-handler, gdb-var-create-handler):
Use a token for consistency.
call to...
(gud-watch): ...here so speedbar is raised for already watched
expressions.
(gdb-speedbar-refresh): Delete function.
(gdb-speedbar-update, gdb-speedbar-timer-fn): New functions.
Use speedbar-timer-fn instead of speedbar-refresh (reverting
earlier change).
(gdb-var-evaluate-expression-handler)
(gdb-var-list-children-handler-1, gdb-var-update-handler-1):
Use it.
(gdb-get-version): Make it work for pre "interpreter mi" (GDB 5.3?).
(gdb-setup-windows): Put something in source window if we can't find
the source file.
(gdb-frame-handler): Make it work again with just assembly.
(gdb-data-list-register-values-handler): Make it work when there is
no stack.
(gdb-var-list-children-regexp, gdb-var-update-regexp)
(gdb-var-list-children-regexp-1, gdb-var-update-regexp-1)
(gdb-data-list-register-values-regexp)
(gdb-stack-list-locals-regexp, gdb-stack-list-locals-handler):
Future proof against new fields being added to MI output.
(gdb-send): Don't treat backslashes for program input as
continuations.
(gdb-assembler-handler): Don't use window-start for this handler.
(gdb-frame-handler): Don't change to hollow arrow if overlay
arrow doesn't move to new frame.
(gdb-stopped): Check for gud-last-last-frame (case: signal).
(breakpoint-disabled): Make lighter for contrast with overlay
arrow.
(gdb-assembler-custom): Use hollow-right-triangle for assembler
buffer too.